آموزش ایجاد پست تایپ سفارشی

    ایجاد یک پست تایپ (پست سفارشی) خاص مانند بخش نوشته ها

    شاید براتون پیش بیاد نیاز داشته باشید یک بخش سفارشی در وردپرس مانند بخش نوشته ها داشته بشید برای مثال میتوانید یک بخش به نام “پروژه ها” یا “کتاب ها” و … داشته باشید که بتوانید مانند مقالات یک سری پست خاص در آن قرار دهید.

    برای اینکار شما هم میتوانید از افزونه استفاده کنید و هم از کد اختصاصی که توی هر دو حالت خروجی کار یکی خواهد بود و در این آموزش هر دو روش توضیح داده خواهد شد.

    ایجاد پست تایپ سفارشی با افزونه Custom Post Type UI

    Custom Post Type UI

    برای ایجاد پست تایپ خاص ابتدا افزونه را از لینک زیر یا از مخزن وردپرس دانلود و نصب کنید و بعد از نصب گزینه “CPT UI” به پنل پیشخوان وردپرس اضافه خواهد شد.

    روی گزینه “Add/Edit Post Types” < “CPT UI” کلیک کنید و در این بخش باید فرم موجود را تکمیل نمایید و برای مثال در لیست زیر موارد را برای ایجاد یک پست تایپ به نام پروژه ها تکمیل کردم و به جای آن شما میتوانید از هر پست تایپ دیگری را نمایش دهید:

    • : پروژه ها
    • : پروژه
    • : در این بخش میتوانید پروژه های خود را قرار دهید.
    • : پروژه ها
    • : همه پروژه ها
    • : اضافه کردن
    • : اضافه کردن جدید
    • : ویرایش پروژه
    • : پروژه جدید
    • : مشاهده پروژه
    • : مشاهده پروژه ها
    • : جستجو در پروژه ها
    • : پروژه ای پیدا نشد!
    • : پروژه ای در زباله دان موجود نیست
    • Parent : والد پروژه
    • : تصویر پروژه
    • : قرار دادن به عنوان تصویر پروژه
    • : حذف تصویر پروژه
    • : استفاده به عنوان تصویر پروژه
    • Archives : آرشیو پروژه ها
    • : اضافه کردن به پروژه
    • : پروژه بروزرسانی شد
    • : فیلتر های پروژه ها
    • : ناوبری پروژه
    • : لیست پروژه ها
    • Attributes : ویژگی های پروژه ها
    • : پروژه
    • : پروژه منتشر شد.
    • : پروژه به صورت خصوصی منتشر شد.
    • : پروژه به پیشنویس منتقل گردید.
    • : زمانبندی پروژه
    • : پروژه بروزرسانی شد.
    • Menu Position : موقعیت قرار گیری پست تایپ (به صورت عدد میتوانید وارد کنید)
    • Menu Icon : ایکون نمایشی پست تایپ
    • Supports : بخش هایی که در این پست تایپ نیاز دارید فعال باشد.
    • Taxonomies : تاکسونومی هایی که در این پست تایپ نیاز دارید نمایش داده شود مانند (دسته بندی ها یا برچسب ها یا تاکسونومی های اختصاصی)
    cptui manage post types scaled

    کار تمام شد و بعد از انجام موارد بالا دکمه “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 );
    علی امینی

    علی امینی

    بیش از 8 سال هست که در حوزه وردپرس به صورت تخصصی فعالیت میکنم و همیشه علاقمند به یادگیری مباحث جدید در زمینه های وب هستم و در تلاشم با تولید آموزش های گوناگون در زمینه وردپرس، سهمی در توسعه وردپرس فارسی داشته باشم.
    ارسال نظر

    آدرس ایمیل شما منتشر نخواهد شد.