اجباری کردن زیر دسته ها برای استفاده از قالب دسته بندی مادر

اجباری کردن زیر دسته ها برای استفاده از قالب دسته بندی مادر

اجباری کردن زیر دسته ها برای استفاده از قالب دسته بندی مادر


اجباری کردن زیر دسته ها برای استفاده از قالب دسته بندی مادر

وقتی می خواهیم، هر دسته بندی در وردپرس دارای قالب به خصوصی باشد، برای هر دسته بندی یک فایل category.php ساخته و در انتهای آن آیدی دسته مورد نظر را وارد میکنیم، مثلا category-1.php
با اعمال این قضیه مشکلی که خیلی از طراحان به آن برخورده اند، زمانی است که یک دسته حاوی تعداد زیادی زیر دسته باشد، در این مواقع در حالت عادی مجبوریم برای هر زیر دسته نیز category.php با آیدی مخصوص درست کنیم ( در حالت عادی زیر دسته ها قالب مادر خود را به ارث نمیبرند ) که این امر باعث می شود تعداد زیادی فایل php تولید شود.

راه حل این مشکل اضافه کردن کد زیر به فایل functions.php می باشد :

function new_subcategory_hierarchy() {  
    $category = get_queried_object();
 
    $parent_id = $category->category_parent;
 
    $templates = array();
     
    if ( $parent_id == 0 ) {
        // Use default values from get_category_template()
        $templates[] = "category-{$category->slug}.php";
        $templates[] = "category-{$category->term_id}.php";
        $templates[] = 'category.php';      
    } else {
        // Create replacement $templates array
        $parent = get_category( $parent_id );
 
        // Current first
        $templates[] = "category-{$category->slug}.php";
        $templates[] = "category-{$category->term_id}.php";
 
        // Parent second
        $templates[] = "category-{$parent->slug}.php";
        $templates[] = "category-{$parent->term_id}.php";
        $templates[] = 'category.php';  
    }
    return locate_template( $templates );
}
 
add_filter( 'category_template', 'new_subcategory_hierarchy' );

با وجود این کد دیگر لازم نیست برای هر زیر دسته قالب تعیین کنید، بلکه همه زیر دسته ها را مجبور میکنید تا از قالب دسته بندی مادر استفاده کنند.

امیدوارم این کد به شما کمک کرده باشد، شخصا خیلی دنبال این کد میگشتم؛ لطفا اگر جایی از این کد استفاده میکنید منبع ( freebie.ir ) فراموش نشود.

ارسال دیدگاه

بدون دیدگاه


آمار سایت

  • 41
    60% Complete
    مطالب منتشر شده
  • 3
    90% Complete
    محصولات فروشگاه
  • 50,000
    70% Complete
    میزان فروش
  • 0
    50% Complete
    اعضای خبرنامه
  • 0
    93% Complete
    Facebook fans