Content Marketing

WordPress: كيفية إدراج الصفحات الفرعية باستخدام رمز قصير

لقد قمنا بإعادة بناء التسلسل الهرمي للمواقع للعديد من مواقعنا WordPress العملاء، وأحد الأشياء التي نحاول القيام بها هو تنظيم المعلومات بكفاءة. للقيام بذلك، غالبًا ما نرغب في إنشاء صفحة رئيسية وتضمين قائمة تسرد الصفحات الموجودة أسفلها تلقائيًا. قائمة بالصفحات الفرعية أو الصفحات الفرعية.

لسوء الحظ، لا توجد وظيفة أو ميزة متأصلة للقيام بذلك في WordPress، لذلك قمنا بتطوير رمز قصير لإضافته إلى موقع العميل. إليك كيفية استخدام الرمز القصير مع جميع متغيراته المملوءة في منشور أو صفحة WordPress:

[listchildpages ifempty="No child pages found" order="ASC" orderby="title" ulclass="custom-ul-class" liclass="custom-li-class" aclass="custom-a-class" displayimage="yes" align="aligncenter"]

انهيار الاستخدام:

  • ifempty="No child pages found": سيتم عرض هذا النص في حالة عدم توفر صفحات فرعية.
  • order="ASC": يؤدي هذا إلى فرز قائمة الصفحات الفرعية بترتيب تصاعدي.
  • orderby="title": يؤدي هذا إلى ترتيب الصفحات الفرعية حسب عنوانها.
  • ulclass="custom-ul-class": يطبق فئة CSS "custom-ul-class" على ملف <ul> عنصر القائمة.
  • liclass="custom-li-class": يطبق فئة CSS "custom-li-class" على كل منها <li> عنصر في القائمة.
  • aclass="custom-a-class": يطبق فئة CSS "custom-a-class" على كل منها <a> (رابط) عنصر في القائمة.
  • displayimage="yes": يتضمن ذلك الصورة المميزة لكل صفحة فرعية في القائمة.
  • align="aligncenter": يؤدي هذا إلى محاذاة الصور المميزة في المركز.

أدخل هذا الرمز القصير مباشرة في منطقة المحتوى لمنشور أو صفحة WordPress حيث تريد أن تظهر قائمة الصفحات الفرعية. تذكر تخصيص قيم كل سمة لتناسب تصميم وبنية موقع WordPress الخاص بك.

بالإضافة إلى ذلك ، إذا كنت ترغب في ملف مقتطف قصير لوصف كل صفحة ، يمكّن المكون الإضافي مقتطفات من الصفحات بحيث يمكنك تحرير هذا المحتوى في إعدادات الصفحة.

قائمة الرمز القصير للصفحات الفرعية

function add_shortcode_listchildpages($atts, $content = "") { 
    global $post; 
    $string = '';

    $atts = shortcode_atts(array(
        'ifempty' => '<p>No Records</p>',
        'order' => 'DESC',
        'orderby' => 'publish_date',
        'ulclass' => '',
        'liclass' => '',
        'aclass' => '',
        'displayimage' => 'no',
        'align' => 'alignleft'
    ), $atts, 'listchildpages');

    $args = array(
        'post_type' => 'page',
        'posts_per_page' => -1,
        'post_parent' => $post->ID,
        'orderby' => $atts['orderby'],
        'order' => $atts['order']
    );

    $parent = new WP_Query($args);

    if ($parent->have_posts()) {
        $string .= $content.'<ul class="'.$atts['ulclass'].'">';
        while ($parent->have_posts()) : $parent->the_post();
            $string .= '<li class="'.$atts['liclass'].'">';
            $true = array("y", "yes", "t", "true");
            $showimage = strtolower($atts['displayimage']);
            if (in_array($showimage, $true)) {
                if (has_post_thumbnail($post->ID)) {
                    $image_attributes = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'thumbnail'); 
                    $string .= '<a class="'.$atts['aclass'].'" href="'.get_permalink().'" title="'.get_the_title().'">';
                    $string .= '<img src="'.$image_attributes[0].'" width="'.$image_attributes[1].'" height="'.$image_attributes[2].'" alt="'.get_the_title().'" class="'.$atts['align'].'" /></a>';
                }
            }
            $string .= '<a class="'.$atts['aclass'].'" href="'.get_permalink().'" title="'.get_the_title().'">'.get_the_title().'</a>';
            if (has_excerpt($post->ID)) {
                $string .= ' - '.get_the_excerpt();
            }
            $string .= '</li>';
        endwhile;
        $string .= '</ul>';
    } else {
        $string = $atts['ifempty'];
    }

    wp_reset_postdata();

    return $string;
}
add_shortcode('listchildpages', 'add_shortcode_listchildpages');

وظيفة add_shortcode_listchildpages يضيف رمزًا قصيرًا مخصصًا

No Records

، والتي يمكنك استخدامها ضمن منشورات أو صفحات WordPress لعرض قائمة بالصفحات الفرعية. فيما يلي تفصيل لكيفية عمل الكود:

  1. متغير النشر العالمي: تبدأ الدالة بإعلان المتغير الشامل $post، والذي يُستخدم للوصول إلى معلومات حول المنشور أو الصفحة الحالية داخل WordPress.
  2. سمات الرمز القصير: ال shortcode_atts تقوم الوظيفة بإعداد القيم الافتراضية لسمات الرمز القصير. يمكن للمستخدمين تجاوز هذه عند قيامهم بإدخال الرمز القصير. السمات تشمل:
    • ifempty: رسالة لعرضها في حالة عدم وجود صفحات فرعية.
    • order: ترتيب الصفحات الفرعية (ASC أو DESC).
    • orderby: معايير ترتيب الصفحات الفرعية (على سبيل المثال، Publish_date).
    • ulclass: فئة CSS لـ <ul> جزء.
    • liclass: فئة CSS لـ <li> العناصر.
    • aclass: فئة CSS لـ <a> (مرساة) العناصر.
    • displayimage: ما إذا كان سيتم عرض الصورة المميزة للصفحات الفرعية.
    • align: محاذاة الصورة المميزة.
  3. وسيطات الاستعلام: تقوم الوظيفة بإعداد أ WP_Query لاسترداد كافة الصفحات الفرعية للصفحة الحالية، مرتبة حسب السمات المحددة.
  4. توليد القائمة:
    • إذا تم العثور على صفحات فرعية، تقوم الوظيفة بإنشاء قائمة HTML غير مرتبة (<ul>)، مع تمثيل كل صفحة فرعية بعنصر قائمة (<li>).
    • ضمن كل عنصر قائمة، تتحقق الوظيفة من عرض الصورة المميزة بناءً على displayimage السمة.
    • تقوم الوظيفة أيضًا بإنشاء رابط لكل صفحة فرعية باستخدام الملف <a> العلامة، وإذا كانت متوفرة، تضيف مقتطفًا من الصفحة الفرعية.
  5. الإخراج أو الرسالة الافتراضية: إذا لم تكن هناك صفحات فرعية، تقوم الوظيفة بإخراج الرسالة المحددة بواسطة ifempty السمة.
  6. إعادة تعيين بيانات المشاركة: ال wp_reset_postdata تقوم الوظيفة بإعادة تعيين استعلام WordPress، مما يضمن أن النطاق العالمي $post تتم استعادة الكائن إلى منشور الاستعلام الرئيسي الأصلي.
  7. تسجيل الرمز القصير: وأخيرا، فإن add_shortcode سجلات الوظائف listchildpages كرمز قصير جديد، وربطه بـ add_shortcode_listchildpages وظيفة، مما يجعلها متاحة للاستخدام في المشاركات والصفحات.

تعد هذه الوظيفة مفيدة لإدراج الصفحات الفرعية ديناميكيًا على الصفحة الرئيسية، مما يعزز التنقل والتنظيم داخل موقع WordPress. أوصي بإضافته إلى مكون إضافي مخصص إذا كنت ترغب في إضافته إلى موقع WordPress الخاص بك. أو... يمكنك تنزيل البرنامج الإضافي الذي قمت بنشره.

قائمة البرنامج المساعد للصفحات الفرعية للرمز القصير

لقد تمكنت أخيرًا من دفع الكود إلى مكون إضافي لتسهيل التثبيت والاستخدام ، و List Child Pages Shortcode البرنامج المساعد تمت الموافقة عليه بواسطة WordPress اليوم! يرجى تنزيله وتثبيته - إذا أعجبك، قم بتقديم مراجعة!

برنامج WordPress الإضافي لإدراج الصفحات الفرعية

Douglas Karr

Douglas Karr هو CMO من أوبن إنسايتس ومؤسس Martech Zone. ساعد دوغلاس العشرات من الشركات الناشئة الناجحة في MarTech، وساعد في العناية الواجبة بأكثر من 5 مليارات دولار في عمليات الاستحواذ والاستثمارات في Martech، ويستمر في مساعدة الشركات في تنفيذ وأتمتة استراتيجيات المبيعات والتسويق الخاصة بها. دوغلاس هو أحد خبراء التحول الرقمي المعترف بهم عالميًا وخبير ومتحدث في MarTech. دوغلاس هو أيضًا مؤلف منشور لدليل Dummie وكتاب عن قيادة الأعمال.

مقالات ذات صلة

العودة إلى الزر العلوي
اغلاق

كشف Adblock

Martech Zone قادر على تزويدك بهذا المحتوى دون أي تكلفة لأننا نستثمر موقعنا من خلال عائدات الإعلانات ، والروابط التابعة ، والرعاية. سنكون ممتنين إذا قمت بإزالة مانع الإعلانات الخاص بك أثناء عرض موقعنا.