it-swarm.asia

كيف أجعل قالب الفئة يعرض النشرات الكاملة بدلاً من النشرات الجزئية؟

أنا باستخدام وورد 3.0.1 مع موضوع عشرون. أحاول تغيير طريقة عرض المنشورات في طريقة عرض الفئة (أي بالانتقال إلى عنوان url مثل mywebsite.com/category/mycategory). في الوقت الحالي ، تعرض المنشورات في طريقة العرض "الفئة" الجزء الأول من منشور ، لكنني أرغب في تغيير ذلك حتى يظهر الأمر برمته.

في ملف قالب الفئة (category.php) ، هناك بضعة سطور من التعليمات البرمجية تبدو مسؤولة عن إنشاء بيانات الفئة:

/* Run the loop for the category page to output the posts.
 * If you want to overload this in a child theme then include a file
 * called loop-category.php and that will be used instead.
 */
get_template_part( 'loop', 'category' );
?>

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

أرى من التعليقات التي من المفترض أن أقوم بإنشاء ملف يسمى loop-category.php مع تطبيقي المخصص ، لكنني لا أعرف الرمز الذي أحتاج إلى وضعه في هذا الملف. ما الذي أحتاجه للإضافة إلى loop-category.php للحصول على طرق عرض الفئة لتظهر مع مشاركات المدونة الكاملة؟

ملاحظة: بينما كنت أستخدم Wordpress لفترة طويلة ، فهذه هي أول رحلة لي لتخصيص السمة. أي مساعدة سيكون موضع تقدير كبير .

1
Ben McCormack

Ben ،

إذا نظرت إلى السطر 132 من loop.php في Twentyten ، فستجد العبارة الشرطية التي تطلب من WordPress عرض the_excerpt فقط في أرشيفات الفئات. أسفل ذلك مباشرة بعد <?php else : ?> - كيف سيتم عرض جميع المنشورات غير الموجودة في صفحة الأرشيف ، أو في الفئة الجانبية أو في فئة المعرض. (يتم استهداف الفئات الجانبية والمعرض في بداية loop.php)

<?php if ( is_archive() || is_search() ) : // Only display excerpts for archives and search. ?>
            <div class="entry-summary">
                <?php the_excerpt(); ?>
            </div><!-- .entry-summary -->
    <?php else : ?>
            <div class="entry-content">
                <?php the_content( __( 'Continue reading <span class="meta-nav">&rarr;</span>', 'twentyten' ) ); ?>
                <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'twentyten' ), 'after' => '</div>' ) ); ?>
            </div><!-- .entry-content -->
    <?php endif; ?>

أسهل ما يمكن فعله في ملف loop-category.php هو نسخ ولصق ملف loop.php بأكمله وتغيير قسم الكود أعلاه إلى:

<?php if ( is_search() ) : // Only display excerpts for archives and search. ?>
            <div class="entry-summary">
                <?php the_excerpt(); ?>
            </div><!-- .entry-summary -->
    <?php else : ?>
            <div class="entry-content">
                <?php the_content( __( 'Continue reading <span class="meta-nav">&rarr;</span>', 'twentyten' ) ); ?>
                <?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'twentyten' ), 'after' => '</div>' ) ); ?>
            </div><!-- .entry-content -->
    <?php endif; ?>

ستلاحظ أننا أزلنا فقط is_archive من البيان الشرطي ، لذا سيتم الآن عرض أرشيفات الفئات باستخدام الكود بعد العبارة الأخرى التي تحتوي على the_content بدلاً من the_excerpt.

7
Chris_O

لقد قمت فقط بإزالة المثيل الثاني لـ "is_archive () ||" من loop.php وحصلت على كل منشور بالكامل لتظهر على صفحة الفئة/catslug. لم يكن لدي لإنشاء ملف loop-category.php. لم أستطع القيام بذلك مع تعليمات Chris_O. شكرا كريس!

1
thepete