کد وردپرس: نمایش لیست دسته بندی دلخواه با توضیحات

مسیح دیندار
مدیریت
عضو شده: 2021-04-12 14:23:35
2021-07-17 03:39:27

دسته بندی ها در وردپرس امکان بخش بندی و مدیریت مطالب را به سایت ما می دهند. اما در طراحی های وردپرس، گاهی اوقات نیاز می شود لیست این دسته بندی ها را در گوشه ای از سایتمان نمایش دهید. برای اینکار افزونه های زیادی وجود دارد اما عموما کامل و جامع نیستند ولی اگر دنبال راحتی کار هستید می توانید از افزونه های مخزن وردپرس استفاده کنید. در اینجا قصد دارم کدی رو معرفی کنم که که بتونید به وسیله اون یک لیست دلخواه با تنظیمات و توضیحات از دسته بندی های موردنظرتون داخل سایت نمایش بدید.

اینکار بسیار ساده هستش فقط کافیه کد زیر رو شخصی سازی و در قسمتی از قالب که قصد دارید این لیست رو نمایش بدید، قرار بدید:

<?php
$categories = get_categories( array(
    'orderby' => 'name',
    'order'   => 'ASC',
    'include' => array( 3, 5, 9, 16 )
) );
 
foreach( $categories as $category ) {
    $category_link = sprintf( 
        '<a href="%1$s" alt="%2$s">%3$s</a>',
        esc_url( get_category_link( $category->term_id ) ),
        esc_attr( sprintf( __( 'مشاهده همه مطالب در دسته بندی %s', 'textdomain' ), $category->name ) ),
        esc_html( $category->name )
    );
     
    echo '<p>' . sprintf( esc_html__( 'دسته بندی: %s', 'textdomain' ), $category_link ) . '</p> ';
    echo '<p>' . sprintf( esc_html__( 'توضیحات: %s', 'textdomain' ), $category->description ) . '</p>';
    echo '<p>' . sprintf( esc_html__( 'تعداد مطالب: %s', 'textdomain' ), $category->count ) . '</p>';
}?>

گزینه ها:

  1. در کد بالا، در قسمت Orderby می توانید از مقادیری مانند id و name استفاده کنید. با اینکار لیست شما بر اساس شناسه یا حروف الفبا مرتب می شوند.
  2. در پارامتر order می توانید مقادیر ASC و DESC استفاده کنید تا لیست شما صعودی یا نزولی شود.
  3. در پارامتر include باید آی دی دسته بندی هایی که قصد دارید نمایش داده شود را وارد کنید. هر آی دی که در این قسمت وارد شود، فقط همان دسته ها لیست خواهد شد. اگر می خواهید همه دسته ها نمایش داده شود، این پارامتر و کاما انگلیسی پارامتر قبل از آن را حذف کنید.
  4. در ادامه کدهایی قرار دارد که برای هر آیتم نمایش داده خواهد شد. مانند تعداد مطالب، توضیحات دسته بندی و نام دسته بندی. که می توانید با تعریف کلس آنها را استایل دهی کنید.

 

کد مشابه بالا اما خیلی خلاصه!

کد زیر کارایی مشابه بالا دارد اما بخش تعریف کدهای خروجی را ندارد. در این کد خروجی را خوده وردپرس تعیین می کند:

<ul>
    <?php wp_list_categories( array(
        'orderby' => 'name',
        'include' => array( 3, 5, 9, 16 )
    ) ); ?> 
</ul>