شاید براتون پیش بیاد نیاز داشته باشید یک بخش سفارشی در وردپرس مانند بخش نوشته ها داشته بشید برای مثال میتوانید یک بخش به نام “پروژه ها” یا “کتاب ها” و … داشته باشید که بتوانید مانند مقالات یک سری پست خاص در آن قرار دهید.
برای اینکار شما هم میتوانید از افزونه استفاده کنید و هم از کد اختصاصی که توی هر دو حالت خروجی کار یکی خواهد بود و در این آموزش هر دو روش توضیح داده خواهد شد.
برای ایجاد پست تایپ خاص ابتدا افزونه را از لینک زیر یا از مخزن وردپرس دانلود و نصب کنید و بعد از نصب گزینه “CPT UI” به پنل پیشخوان وردپرس اضافه خواهد شد.
روی گزینه “Add/Edit Post Types” < “CPT UI” کلیک کنید و در این بخش باید فرم موجود را تکمیل نمایید و برای مثال در لیست زیر موارد را برای ایجاد یک پست تایپ به نام پروژه ها تکمیل کردم و به جای آن شما میتوانید از هر پست تایپ دیگری را نمایش دهید:
کار تمام شد و بعد از انجام موارد بالا دکمه “Add Post Type” را بزنید تا پست تایپ شما ایجاد شود.
برای این روش شما کد های زیر را در فایل function.php قرار دهید تا پست تایپ جدید اضافه شود.
// Register Custom Post Type
function tmt_projects() {
$labels = array(
'name' => _x( 'پروژه ها', 'Post Type General Name', 'portfolio' ),
'singular_name' => _x( 'پروژه', 'Post Type Singular Name', 'portfolio' ),
'menu_name' => __( 'پروژه ها', 'portfolio' ),
'name_admin_bar' => __( 'پروژه ها', 'portfolio' ),
'archives' => __( 'لیست پروژه ها', 'portfolio' ),
'parent_item_colon' => __( 'پروژه :', 'portfolio' ),
'all_items' => __( 'همه پروژه ها', 'portfolio' ),
'add_new_item' => __( 'پروژه جدید', 'portfolio' ),
'add_new' => __( 'اضافه کردن', 'portfolio' ),
'new_item' => __( 'اضافه کردن پروژه جدید', 'portfolio' ),
'edit_item' => __( 'ویرایش پروژه', 'portfolio' ),
'update_item' => __( 'بروزرسانی پروژه', 'portfolio' ),
'view_item' => __( 'مشاهده پروژه', 'portfolio' ),
'search_items' => __( 'جستجوی پروژه', 'portfolio' ),
'not_found' => __( 'پروژه پیدا نشد', 'portfolio' ),
'not_found_in_trash' => __( 'پروژه در سطل زباله پیدا نشد', 'portfolio' ),
'featured_image' => __( 'تصویر پروژه', 'portfolio' ),
'set_featured_image' => __( 'افزودن تصویر پروژه', 'portfolio' ),
'remove_featured_image' => __( 'حذف تصویر پروژه', 'portfolio' ),
'use_featured_image' => __( 'استفاده کردن تصویر پروژه', 'portfolio' ),
'insert_into_item' => __( 'اضافه کردن', 'portfolio' ),
'uploaded_to_this_item' => __( 'بارگزاری این فایل', 'portfolio' ),
'items_list' => __( 'لیست فایل ها', 'portfolio' ),
'items_list_navigation' => __( 'لیست فایل ها', 'portfolio' ),
'filter_items_list' => __( 'دسته بندی فایل', 'portfolio' ),
);
$args = array(
'label' => __( 'پروژه ها', 'portfolio' ),
'description' => __( 'در این بخش میتوانید پروژه های خود را قرار دهید.', 'portfolio' ),
'labels' => $labels,
'supports' => array( 'title', 'editor', 'excerpt', 'author', 'thumbnail', 'comments', 'trackbacks', 'revisions', 'custom-fields', 'page-attributes', 'post-formats', ),
'taxonomies' => array( 'taxonomy' ),
'hierarchical' => false,
'public' => true,
'show_ui' => true,
'show_in_menu' => true,
'menu_position' => 5,
'show_in_admin_bar' => true,
'show_in_nav_menus' => true,
'can_export' => true,
'has_archive' => true,
'exclude_from_search' => false,
'publicly_queryable' => true,
'capability_type' => 'page',
);
register_post_type( 'projects', $args );
}
add_action( 'init', 'tmt_projects', 0 );