تعداد بازدید: 1255

توابع مرتبط با taxonomy (قسمت اول)

در این مقاله قصد داریم تا توابع رایج مربوط به تکسونومی ها ( taxonomy ) رو با هم بررسی کنیم. خوب علاوه بر این که تکسونومی ها ( taxonomy ) به وسیله کوئری ( tax_query ) قابل دستیابی هستند ، توابعی هم وجود داره که میشه term های taxonomy ها رو باهاش به دست آورد.

wp_dropdown_categories

این تابع تمامی term ها رو در قالب یک select box نمایش میده. خوب شاید اسم این تابع کمی غلط انداز باشه و فکر کنید تنها برای دسته بندی ها کاربرد داره ولی این تابع برای تمامی taxonomy ها استفاده میشه. این تابع در جستجوی ووکامرس استفاده میشه .

 <?php wp_dropdown_categories( $args ); ?>

آرگومان های این تابع به شکل زیر هستند (مقادیر پیش فرض در این قطعه کد داده شده است).

<?php
 $args = array(
	'show_option_all'    => '',
	'show_option_none'   => '',
	'option_none_value'  => '-1',
	'orderby'            => 'ID',
	'order'              => 'ASC',
	'show_count'         => 0,
	'hide_empty'         => 1,
	'child_of'           => 0,
	'exclude'            => '',
	'include'            => '',
	'echo'               => 1,
	'selected'           => 0,
	'hierarchical'       => 0,
	'name'               => 'cat',
	'id'                 => '',
	'class'              => 'postform',
	'depth'              => 0,
	'tab_index'          => 0,
	'taxonomy'           => 'category',
	'hide_if_empty'      => false,
	'value_field'	     => 'term_id',
); ?>
  • show_option_all : متن نمایش همه موارد در select box.
  • show_option_none : متن نمایش هیچکدام در select box.
  • orderby : معیار مرتب سازی دسته بندی ها در select box که می تواند بر اساس id , name , slug , count باشد. منظور از count تعداد پست های مرتبط با هر دسته بندی است.
  • show_count : نمایش تعداد هر پست مرتبط با دسته بندی در select box.
  • hide_empty : مخفی کردن مواردی که پستی مرتبط با آن ها وجود ندارد.
  • child_of : این پارامتر integer می گیرد و زمانی کاربرد دارد که شما قصد داشته باشید صرفا فرزندان یک دسته خاص رو نمایش بدید.
  • include : این پارامتر می تونه (string/array)  بگیره . اگر string بود باید id ها به وسیله , از هم جدا بشن . بهتره برای سریع تر شدن کوئری بهشون آرایه بدید. کاربردش هم شامل شدن id های دسته بندی .
  • exclude : این پارامتر می تونه (string/array)  بگیره . اگر string بود باید id ها به وسیله , از هم جدا بشن . بهتره برای سریع تر شدن کوئری بهشون آرایه بدید. کاربردش هم شامل نشدن id های دسته بندی .
  • exclude_tree : این پارامتر کلا یک شاخه رو حذف می کنه . یعنی شما یه id بهش میدید و اون خود term به همراه فرزندانش رو حذف می کنه.
  • echo : فرستادن خروجی به مرورگر یا ارسال اون به پی اچ پی .
  • depth : عمق option های select box مون که زمانی کاربرد داره که ما hierarchical برابر false باشه (مورد بعدی که بهش اشاره میشه) .
  • hierarchical : نمایش تمامی فرزندان یک دسته بندی بدون در نظر گرفتن depth.
  • name : ویژگی name برای select box.
  • value_field : ویژگی value برای select box . این پارامتر مقادیر زیر رو میگیره :
    ‘term_id’, ‘name’, ‘slug’, ‘term_group’, ‘term_taxonomy_id’, ‘taxonomy’, ‘description’, ‘parent’, ‘count’.
  • id : ویژگی id برای select box اگر این مورد رو نزارید از name استفاده می کنه.
  • class : ویژگی class برای select box.
  • taxonomy : تکسونومی مورد نظر برای محتوای select box.
  • selected : مورد انتخاب شده برای select box . مقدار این مورد بر میگرده به پارامتر value_field که اگر value_field برابر با term_id باشه شما باید id بدید بهش یا اگر برابر با slug باشه شما باید بهش slug دسته مورد نظرتون رو بدید.
  • hide_if_empty : این مورد کلی تره . یعنی اگر هیچ term برای نمایش نبود کلا select box مخفی بشه.

wp_list_categories

این تابع تمامی term ها رو در قالب یک لیست نمایش میده. خوب شاید اسم این تابع کمی غلط انداز باشه و فکر کنید تنها برای دسته بندی ها کاربرد داره ولی این تابع برای تمامی taxonomy ها استفاده میشه. نکته دوم اینه که این تابع صرفا خروجی رو به صورت لیست نمایش نمیده و پیش فرض اون لیست است و شما با استفاده از پارامتر style می تونید خروجی رو خام با seprator خاص خودتون بگیرید.  این تابع کاربردهای زیادی می تونه داشته باشه. میتونید خودتونم کوئری مربوطه رو بزنید و همین خروجی رو بگیرید.

<?php wp_list_categories( $args ); ?>

آرگومان های این تابع به شکل زیر هستند (مقادیر پیش فرض در این قطعه کد داده شده است).

<?php    
$args = array(
        'child_of'            => 0,
        'current_category'    => 0,
        'depth'               => 0,
        'echo'                => 1,
        'exclude'             => '',
        'exclude_tree'        => '',
        'feed'                => '',
        'feed_image'          => '',
        'feed_type'           => '',
        'hide_empty'          => 1,
        'hide_title_if_empty' => false,
        'hierarchical'        => true,
        'order'               => 'ASC',
        'orderby'             => 'name',
        'separator'           => '<br />',
        'show_count'          => 0,
        'show_option_all'     => '',
        'show_option_none'    => __( 'No categories' ),
        'style'               => 'list',
        'taxonomy'            => 'category',
        'title_li'            => __( 'Categories' ),
        'use_desc_for_title'  => 1,
    );

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

  • use_desc_for_title : توضیحات term رو به عنوان ویژگی title به تگ a موجود در هر لیست میده.
  • current_category : به وسیله این پارامتر شما می تونید یکی از آیتم های لیست رو انتخاب کنید. در این مورد کلاس current_cat بهش داده میشه .
  • hierarchical : اگر این مورد رو برابر false کنید لیست رو تنها در یک سطح میاره.
  • title_li : این مورد یک لیست جدید اضافه می کنه با title که انتخاب کردید و والد قرار میده اون رو. این مورد شاید زمانی که بخواهید منو اضافه کنید (منوی دسته بندی محصولات در ووکامرس مثلا) میتونه کاربرد داشته باشه.
  • hide_title_if_empty : تیتری که در پارامتر قبل انتخاب کردید در صورت خالی بودن خروجی بمونه یا خیر.
  • style : به صورت پیش فرض لیست است. اگر خالی کنید به صورت خام خروجی نشون میده .
  • seprator : جدا کننده term ها در خروجی .
    نکته :‌ اگر در پارامتر قبل style رو برابر لیست قرار دادید seprator عمل نمی کنه .

مطالب مشابه

آموزش نکات و تکنیک های برنامه نویسی وردپرس

پایگاه داده وردپرس

در این مقاله قصد داریم تا پایگاه داده وردپرس ۴.۴ رو بررسی کنیم. پایگاه داده این نسخه از وردپرس تا mysql نسخه 5.0.15 و...

آموزش نکات و تکنیک های برنامه نویسی وردپرس

Ajax در وردپرس

ajax یک درخواست به سرور (request) و دریافت پاسخ (Response) بدون refresh صفحه از طریق شی xmlHttpRequest است. Request...

آموزش نکات و تکنیک های برنامه نویسی وردپرس

Settings API در وردپرس

وردپرس برای ساخت پنل تنظیمات شبیه به پنل تنظیمات پیش فرض خودش API هایی رو قرار داده . Settings API , Options API دو...

آموزش نکات و تکنیک های برنامه نویسی وردپرس

cron job در وردپرس

مفهوم cron job در وردپرس یعنی انجام یه کار (job) به صورت سیکل زمانی (intreval) با زمان شروع مشخص(start time). به طور...

اشتراک گذاری :

مدیر وب سایت گنوتک . برنامه نویسی رو با زبان C در هفده سالگی شروع کردم . در حال حاضر به برنامه نویسی php برپایه معماری MVC , HMVC و همچنین سیستم مدیریت محتوای WordPress و فریم ورک محبوب لاراول علاقه مند هستم و دوست دارم اطلاعاتم رو با شما به اشتراک بگذارم.

۰ دیدگاه برای توابع مرتبط با taxonomy (قسمت اول)

دیدگاهتان را بنویسید

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