ایجاد صفحه اختصاصی(Single Page) برای یک طبقه(Category) خاص در وردپرس

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

همانطور که می دانید برای ایجاد صفحه مشاهده مطلب از فایل single.php یا خیلی اختصاصی تر از single-{post-type}-{slug}.php و single-{post-type}.php استفاده می شود، اما برای ایجاد صفحه single مربوط به یک طبقه خاص چکاری باید انجام دهیم؟

در نظر داشته باشید که برای این منظور هیچ فایل قالبی مثل single-{category-name}.php در ساختار هایراکی تعریف نشده است، اگر با این ساختار آشنا نیستید پیشنهاد می کنیم مطلب آشنایی با مفهوم Template Hierarchy در وردپرس را مطالعه فرمائید.

برای پیاده سازی مثال فروشگاه اینترنتی به صورت زیر عمل می کنیم:

  1. ایجاد فایل با نام single-television.php و طراحی قالب موردنظر
  2. قرار دادن کدهای زیر در فایل functions.php
function get_category_single_template($single_template) {
    if ( in_category( 'television' )) {
        $single_template = dirname( __FILE__ ) . '/single-television.php';
    }
    return $single_template;
}
add_filter( "single_template", "get_category_single_template" ) ;

ایجاد قالب اختصاصی بر اساس طبقه در وردپرس

حال اگر بازدیدکنندگان فروشگاه بر روی لینک محصولات تلویزیونی کلیک کنند به صفحه single-television.php منتقل می شوند در غیر اینصورت صفحه single.php نشان داده خواهد شد.

جمع بندی

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

نظرات و سوالات کاربران

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *