ساخت پست تایپ سفارشی وردپرس

ساخت پست تایپ سفارشی وردپرس

آخرین بروزرسانی در تاریخ : 17 آبان 1402
باید لاگین کنید!

سلام خدمت تمامی همراهان آکادمی وبکیما! ممنون از اینکه با سری مقالات آموزش صفر تا صد وردپرس با ما همراه هستید، در ادامه این مجموعه آموزش به مقاله ساخت پست تایپ سفارشی وردپرس (post-type) می رسیم، تا آخر این آموزش با ما همراه باشید.

پست تایپ در وردپرس چیست؟

سیستم مدیریت محتوای وردپرس (وردپرس چیست) که در سال ۲۰۰۳ روی کار آمد در ابتدا یک سیستم وبلاگدهی ساده بود که در اصل با همین پست تایپ‌ها بود که وردپرس را به یک سیستم مدیریت محتوای بسیار قوی تبدیل کرد. پست تایپ در وردپرس در واقع همان محتوا های گوناگون است، نوشته ها و برگه ها از پست تایپ های پیشفرض وردپرس هستند.

پست تایپ در وردپرس یکی از مهمترین مفاهیم در سیستم مدیریت محتوای وردپرس است. اصطلاح “پست تایپ” به انواع مختلف محتواها یا نوع‌های مختلف مطالب ارسال شده در وب‌سایت‌ها اشاره دارد. به عبارت دیگر، این انواع محتواها مشخص می‌کنند که چه نوع اطلاعاتی بر روی وب‌سایت شما منتشر می‌شوند.

پست تایپ های پیشفرض در وردپرس

  • پست ها (Post)
  • برگه ها (Page)
  • ضمیمه (Attachment)
  • رونوشت (Revision)
  • منو ناوبری (Nav Menu)

طراحان قالب و افزونه وردپرس و حتی خود شما که کمی از کدنویسی سررشته دارید، می توانید با استفاده از تابع register_post_type به راحتی یک پست تایپ در وردپرس با توجه به کاربرد سایت تان بسازید.

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

همین پست تایپ های سفارشی است که وردپرس را از دیگر سیستم های مدیریت محتوا متمایز کرده است و آنرا به یک CMS قوی تبدیل کرده است و با استفاده از آن می توانید طراحی سایت حرفه ای را انجام دهید. خب حالا که با پست تایپ ها آشنا شدید بریم که یک پست تایپ سفارشی برای سایت خودمون بسازیم.

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

می خواهیم برای یکی از مثال هایی که در بالا به آن اشاره کردیم یک پست تایپ سفارشی بسازیم ، به نظرم با مثال سایت فروش فیلم شروع کنیم بد نباشد البته شما با استفاده از همین مثال می توانید هر مدل پست تایپ سفارشی که بخواهید به راحتی آب خوردن بسازید! پس بریم که یک پست تایپ جدید به نام فیلم ها در وردپرس بسازیم :

در پنل مدیریت وردپرس سایت به قسمت نمایش > ویرایشگر پوسته مراجعه کرده و از بین فایل های قالب، فایل functions.php را در حالت ویرایش قرار دهید و قبل از بسته شدن تگ php فایل زیر را در آن قرار دهید:

function create_posttype() {
	register_post_type( 'movies',
		array(
			'labels' => array(
				'name' => __( 'Movies' ),
				'singular_name' => __( 'Movie' )
			),
			'public' => true,
			'has_archive' => true,
			'rewrite' => array('slug' => 'movies'),
		)
	);
}
add_action( 'init', 'create_posttype' );

در قدم بعدی تنها کافیه با استفاده از کد زیر پست تایپ خود را ایجاد کنید. برچسب ها و متن های قابل نمایش در پست تایپ را تعریف کنید، همچنین می توانید تنظیمات موردنیازتون رو در قطعه کد زیر به دلخواه تغییر دهید.

/*
* 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',
	);
	
	// 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 );

تبریک می‌گم! به همین راحتی تونستید یک پست تایپ سفارشی را سایت خود ایجاد کنید و از آن در قسمت های مختلف منو ها و ابزارک ها و … استفاده کنید.


جمع بندی

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

 

5/5 - (7 امتیاز)

دیدگاه و پرسش

  1. azim میگوید:

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

    • پشتیبانی میگوید:

      سلام، پاسخ به سوال شما نیاز به یک ویدیو آموزشی ۱۰ ساعته داره 🙂

  2. hasan میگوید:

    الان من دو پست تایپ برای دو آموزش رایگان سایتم ساختم کار اشتباهی انجام دادم؟
    اگر کار اشتباهی است، راه حل شما برای حل این موضوع چیست؟

    • پشتیبانی میگوید:

      بله اشتباهی ساختید، راه حل استفاده از دسته بندی است.

  3. hasan میگوید:

    سلام
    الان من در سایتم بخواهم آموزش وردپرس و آموزش المنتور را به صورت رایگان منتشر کنم، در صورتی که اینها فیلد های یکسانی داشته باشند، برای هر کدام یک پست تایپ مجزا بسازم یا یک پست تایپ برای آنها کافیست؟

    • پشتیبانی میگوید:

      این کاملا به خودتون بستگی داره، اما توصیه می کنیم اصلا از پست تایپ مجزا استفاده نکنید.

  4. izadi میگوید:

    سلام روز بخیر
    من با استفاده از افزونه، یک post type جدید ایجاد کردم برای ثبت تصاویر. اما توی لیست آرشیوهای من نمیاد و من برای ساخت قالب برای نمایش دسته بندی و آرشیو تصاویرم به مشکل برخوردم.
    من از المنتور استفاده می کنم و موقع ساخت قالب برای ثبت condition توی لیست include، پست تایپ جدید نمیاد. چطور میتونم این مشکل رو حل کنم؟
    ممنون میشم راهنمایی کنید

    • پشتیبانی میگوید:

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

آموزش‌های ویدیویی جدید یوتیوب رو از دست ندی!

بزن بریــم!