افزودن دسته بندی به پست تایپ سفارشی وردپرس
- مقالات آموزشی
- بروزرسانی شده در
همانطور که در قبل هم برای شما توضیح دادهایم، پست تایپهای سفارشی وردپرس یکی از قابلیتهای مفید وردپرس هستند؛ که سبب شدهاند وردپرس از یک سیستم وبلاگ دهی به یک سیستم مدیریت محتوای قوی تبدیل شود. توسط پست تایپ شما این امکان را دارید که محتوای سایت خود را سفارشی و خاص کنید.
درواقع شما توسط دنیای وسیع وردپرس امکانات فوقالعادهای در اختیارتان قرار میگیرد. شما میتوانید از قابلیتها نهایت استفاده را ببرید. که ایجاد دستهبندی در پستها میتواند یکی از این قابلیتها باشد. شما این امکان را میتوانید توسط خود وردپرس انجام دهید.
افزودن دسته بندی به پست تایپ سفارشی وردپرس
برای انجام این کار میتوانید با استفاده از کد نویسی زیر بهراحتی پست تایپهای سفارشی خود را دستهبندی کنید. درواقع این کار در مدتزمان کم و بدون هیچ دردسری قابل انجام است. شما قادر هستید با داشتن دانش کد نویسی و بدون نیاز به نصب هیچ افزونهای این کار را در وردپرس انجام دهید.
حتماً به این نکته توجه داشته باشید که دستهبندی بهصورت پیشفرض در وردپرس وجود ندارد؛ و شما باید خود با داشتن دانش کد نویسی این کار را انجام دهید. بهاینترتیب شما قادر هستید دستهبندیهای دلخواه خود را برای پست تایپهای خود ایجاد کنید.
شما در ابتدا باید کد نویسی برای ایجاد پست تایپ سفارشی در وردپرس را در قالب سایتتان اضافه کرده باشید. حالا که اضافه شد باید کد زیر را به args پست تایپ اضافه کنید:
'taxonomies' => array( 'category' ),
یعنی کد نهایی باید به شکل زیر باشد:
/*
* Creating a function to create our CPT
*/
function custom_post_type() {
// Set UI labels for Custom Post Type
$labels = array(
'name' => _x( 'Movies', 'Post Type General Name', 'twentythirteen' ),
'singular_name' => _x( 'Movie', 'Post Type Singular Name', 'twentythirteen' ),
'menu_name' => __( 'Movies', 'twentythirteen' ),
'parent_item_colon' => __( 'Parent Movie', 'twentythirteen' ),
'all_items' => __( 'All Movies', 'twentythirteen' ),
'view_item' => __( 'View Movie', 'twentythirteen' ),
'add_new_item' => __( 'Add New Movie', 'twentythirteen' ),
'add_new' => __( 'Add New', 'twentythirteen' ),
'edit_item' => __( 'Edit Movie', 'twentythirteen' ),
'update_item' => __( 'Update Movie', 'twentythirteen' ),
'search_items' => __( 'Search Movie', 'twentythirteen' ),
'not_found' => __( 'Not Found', 'twentythirteen' ),
'not_found_in_trash' => __( 'Not found in Trash', 'twentythirteen' ),
);
// Set other options for Custom Post Type
$args = array(
'label' => __( 'movies', 'twentythirteen' ),
'description' => __( 'Movie news and reviews', 'twentythirteen' ),
'labels' => $labels,
// Features this CPT supports in Post Editor
'supports' => array( 'title', 'editor', 'excerpt', 'author', 'thumbnail', 'comments', 'revisions', 'custom-fields', ),
// You can associate this CPT with a taxonomy or custom taxonomy.
'taxonomies' => array( 'genres' ),
/* A hierarchical CPT is like Pages and can have
* Parent and child items. A non-hierarchical CPT
* is like Posts.
*/
'hierarchical' => false,
'public' => true,
'show_ui' => true,
'show_in_menu' => true,
'show_in_nav_menus' => true,
'show_in_admin_bar' => true,
'menu_position' => 5,
'can_export' => true,
'has_archive' => true,
'exclude_from_search' => false,
'publicly_queryable' => true,
'capability_type' => 'page',
'taxonomies' => array( 'category' ),
);
// Registering your Custom Post Type
register_post_type( 'movies', $args );
}
/* Hook into the 'init' action so that the function
* Containing our post type registration is not
* unnecessarily executed.
*/
add_action( 'init', 'custom_post_type', 0 );
پس در صورت استفاده از این قطعه کدی که در بالا برای شما قرار دادهایم دیگر نیاز به نگرانی بابت دستهبندی پست تایپهای سفارشی خود نداشته باشید؛ و با خیال راحت دستهبندیهای موردنیاز خود را در سایت وردپرسی خود ایجاد کنید. با توضیحات ذکرشده در بالا متوجه شدید که این کار چقدر راحت است؛ و وردپرس بهراحتی این امکان را برای کاربران خود فراهم کرده است.
پس از استفاده از این کد، دسته بندی نوشته ها با دسته بندی پست تایپ ساخته شده یکی هستند
سلام
میخواستم tie_post_sub_title’ که برای خود قالب جنه هست را در پست تایپی که ساختم نشون بده ولی نمیدونم از چه کدی باید استفاده کرد؟
سلام بستگی داره اگه متا هست با the_post_meta باید نمایشش بدید.
سلام استاد
من دقیقا همین کدهای بالا رو قرار دادم و دقیقا طبق همین آموزش جلو رفتم ولی دسته بندی های post type با هم یکیه
برچسب ها هم به همین صورت
مشکل کجاس ؟
با سلام و احترام
حتما بخشی از کد رو اشتباه نوشتید. مجدد کدها رو بررسی کنید. کدهای ارائه شده دقیقا طبق داکیومنتها و استانداردهای وردپرس هست.
سلام وقت بخیر
من با استفاده از کد یک پست تایپ ایجاد کردم ولی دسته بندی ها با دسته بندی های پست تایپ نوشته ها یکسان هست
میخواستم بدونم میتونید راهنمایی کنید که چطور دسته بندی پست تایپ جدید رو جدا کنم از دسته بندی نوشته ها؟
باتشکر
سلام باید برای پست تایپ ها taxonomy ایجاد کنید. دقیقا مطابق همین آموزش
مشکلم حل شد الان یک مشکل دیگه دارم این که میخوام این پست ها رو داخل صفحه اصلی سایتم نمایش بدم
میشه راهنمایی کنید که چطوری باید این کار رو انجام بدم
سرچ کردم ولی چیز قابل توجه ای پیدا نکرم که این مشکلم رو حل کنه
سلام باید از wp query استفاده کنید. این مورد توی دوره صفر تا صد طراحی سایت توضیح داده شده.
سلام؛ چطوری میشه دسته بندی های سفارشی را به قالب اضافه کنیم تا در سایت نمایش بده، دقیقاً مثل category
برای نمایش دسته ها از این کد استفاده میشه: و حالا بجای category از actor یا genre و هر دسته سفارشی ساخته شده استفاده کنم؟
لازم به ذکر هست قبلا دسته هایی با نام genre، actor و … با افزونه Custom Post Type UI ساختم فقط موندم چجوری تو سایت نمایش بدم
سلام
به این شکل:book-archive.phpاگر نام پست تایپ شماBookهست
خیلی ممنون
درود.
خواهش.
سلام اگه بخوایم به پست تایپ تنظیمات قالب رو که در ویرایشگر متن وجود داره(مثل حذف کردن سایدبار ها در یک پست) اضافه کنیم باید چیکار کنیم؟
سلام باید کدنویسی تنظیمات رو به پست تایپ هم اضافه کنید
ممکنه بگید این تنطیمات در کجا و به چه صورت قرار دارند؟
تنظیم نیست. کدنویسی هست و باید به یک کد نویس بسپارید
بله منظورم همون کدنویسی هست کد ها در کدوم فایل قرار دارند؟
بستگی به قالب سایتتون داره
قالب voice هست ممکنه راهنمایی کنید؟
عرض کردم زمانبر هست و بهتره به کدنویس بسپارید
سلام
باتشکر از مطالب مفید و متن روان و قابل فهمتون .
میخواستم بدونم چه طور میتونبم به این پست سفارشیمون فیلد های دلخواهمون رو اضافه کنیم؟
باسپاس
سلام متشکرم. از افزونه advance custom fields استفاده کنید