آشنایی با متد reset_default_labels در کلاس WP_Taxonomy
سلام! امروز میخواهیم در مورد متد reset_default_labels
در کلاس WP_Taxonomy
در وردپرس صحبت کنیم. این متد یکی از ابزارهای مهمی است که ما میتوانیم در طراحی و توسعه پلاگینها و تمهای وردپرسی استفاده کنیم. شاید برایتان سوال باشد که این متد چه کاربردی دارد؟
به زبان ساده، reset_default_labels
وظیفه بازنشانی برچسبهای پیشفرض یک دستهبندی یا برچسب را بر عهده دارد. تصور کنید که شما یک طبقهبندی سفارشی ایجاد کردهاید و برچسبهای خاصی برای آن تنظیم کردهاید، اما به دلایلی میخواهید به تنظیمات اولیه برگردید. این متد به شما این امکان را میدهد که به راحتی برچسبهای پیشفرض را برای کلاس خود بازنشانی کنید.
این متد به طور خودکار برای هر نوع طبقهبندی موجود در وردپرس کار میکند. به عبارت دیگر، شما میتوانید این متد را برای برچسبها، دستهبندیها یا حتی برای طبقهبندیهای سفارشی خودتان استفاده کنید. در واقع، این فرآیند به شما کمک میکند که در صورت نیاز به تغییرات، تنظیمات اولیه را دوباره برگردانید و به راحتی از برچسبهای پیشفرض استفاده کنید.
همچنین، با استفاده از این متد، دیگر نیازی به نگرانی در مورد تغییرات اشتباهی که ممکن است در تنظیمات انجام داده باشید، نخواهید داشت. به همین دلیل، این متد بسیار مفید و کارآمد است. حالا بیایید نگاهی به یک مثال عملی بیندازیم تا ببینیم چگونه میتوانیم از این متد استفاده کنیم.
مثال کاربردی از reset_default_labels
// ایجاد یک طبقهبندی سفارشی
function my_custom_taxonomy() {
register_taxonomy(
'my_taxonomy',
'post',
array(
'labels' => array(
'name' => __( 'My Taxonomy' ),
'singular_name' => __( 'My Taxonomy Item' )
),
'public' => true,
'hierarchical' => true
)
);
}
add_action('init', 'my_custom_taxonomy');
// استفاده از reset_default_labels
function reset_my_taxonomy_labels() {
$taxonomy = 'my_taxonomy';
global $wp_taxonomies;
if ( isset( $wp_taxonomies[$taxonomy] ) ) {
$wp_taxonomies[$taxonomy]->reset_default_labels();
}
}
add_action('init', 'reset_my_taxonomy_labels');
توضیحات کد
در کد بالا، ابتدا با استفاده از تابع register_taxonomy
یک طبقهبندی سفارشی به نام my_taxonomy
ایجاد کردیم.
سپس یک تابع به نام reset_my_taxonomy_labels
تعریف کردیم که در آن میخواهیم برچسبهای پیشفرض این طبقهبندی را بازنشانی کنیم.
با استفاده از global $wp_taxonomies
، به لیست تمامی طبقهبندیها دسترسی پیدا کردیم. سپس با بررسی اینکه آیا my_taxonomy
در آن لیست وجود دارد یا نه، متد reset_default_labels
را برای بازنشانی برچسبها فراخوانی کردیم.
در نهایت، با استفاده از add_action
تابع reset_my_taxonomy_labels
را به init
اضافه کردیم تا این تنظیمات در زمان مناسب بارگذاری شوند.