Как создать пользовательский тип записи (CPT) и таксономию в WordPress — руководство Hello World, советы и рекомендации
Опубликовано: 2016-03-11 Потрясающий. Давайте поговорим о Custom Post Type
(CPT). Это также поможет вам, если у вас есть следующие вопросы:
- Как создать пользовательские типы записей в WordPress?
- Создать тип записи WordPress
- Создайте свой первый пользовательский тип записи WordPress
- Таксономия WordPress CPT
- Полное руководство по пользовательским типам записей WordPress
WordPress — одна из наиболее широко используемых платформ для ведения блогов с множеством мощных функций, и Custom Post Type
— одна из них. Раньше я никогда не рассматривал пользовательский тип записи (CPT) в WordPress, но недавно мне захотелось создать новый раздел «Сделки».
Есть два способа добиться этого:
- Создайте новый поддомен:
http://deals.crunchify.com/
- Создайте новый пользовательский тип сообщения:
https://crunchify.com/deals/
Чтобы достичь point 1
, вы можете просто создать поддомен, установить новую установку WordPress и начать новый блог. Но я считаю, что никто не хочет делать это, чтобы просто создать один простой раздел. Итак, мы рассмотрим point 2
в этом уроке.
В WordPress есть несколько типов записей по умолчанию, например:
- Вложение (Тип сообщения: «вложение»)
- Сообщение (Тип сообщения: 'сообщение')
- Меню навигации (Тип сообщения: 'nav_menu_item')
- Редакция (Тип сообщения: "редакция")
- Страница (Тип сообщения: «страница»)
Теперь, что такое КПТ?
Custom post types (CPT)
— это новые типы сообщений, которые вы можете создавать. Пользовательский тип записи можно добавить в WordPress с помощью функции register_post_type() . Эта функция позволяет определить новый тип записи по его меткам, поддерживаемым функциям, доступности и другим особенностям.
Давайте начнем.
Шаг 1
Вот что нам нужно для создания нового Custom Post Type
под названием « Deals
».
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
// Creating a Deals Custom Post Type function crunchify_deals_custom_post_type ( ) { $labels = array ( 'name' = > __ ( 'Deals' ) , 'singular_name' = > __ ( 'Deal' ) , 'menu_name' = > __ ( 'Deals' ) , 'parent_item_colon' = > __ ( 'Parent Deal' ) , 'all_items' = > __ ( 'All Deals' ) , 'view_item' = > __ ( 'View Deal' ) , 'add_new_item' = > __ ( 'Add New Deal' ) , 'add_new' = > __ ( 'Add New' ) , 'edit_item' = > __ ( 'Edit Deal' ) , 'update_item' = > __ ( 'Update Deal' ) , 'search_items' = > __ ( 'Search Deal' ) , 'not_found' = > __ ( 'Not Found' ) , 'not_found_in_trash' = > __ ( 'Not found in Trash' ) ) ; $args = array ( 'label' = > __ ( 'deals' ) , 'description' = > __ ( 'Best Crunchify Deals' ) , 'labels' = > $labels , 'supports' = > array ( 'title' , 'editor' , 'excerpt' , 'author' , 'thumbnail' , 'revisions' , 'custom-fields' ) , 'public' = > true , 'hierarchical' = > false , 'show_ui' = > true , 'show_in_menu' = > true , 'show_in_nav_menus' = > true , 'show_in_admin_bar' = > true , 'has_archive' = > true , 'can_export' = > true , 'exclude_from_search' = > false , 'yarpp_support' = > true , 'taxonomies' = > array ( 'post_tag' ) , 'publicly_queryable' = > true , 'capability_type' = > 'page' ) ; register_post_type ( 'deals' , $args ) ; } add_action ( 'init' , 'crunchify_deals_custom_post_type' , 0 ) ; |
Приведенный выше код создаст новый раздел под названием « Deals
», который мы называем «Пользовательский тип сообщения».

Как добавить теги к произвольному типу записи?
'taxonomies' => array('post_tag')
в приведенном выше фрагменте добавит стандартные теги WordPress к вашим пользовательским типам записей.
Шаг 2
А что если вы хотите создать Custom Taxonomy
с именем Type
. С помощью функции register_taxonomy
вы можете просто создать таксономию.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
// Let us create Taxonomy for Custom Post Type add_action ( 'init' , 'crunchify_create_deals_custom_taxonomy' , 0 ) ; //create a custom taxonomy name it "type" for your posts function crunchify_create_deals_custom_taxonomy ( ) { $labels = array ( 'name' = > _x ( 'Types' , 'taxonomy general name' ) , 'singular_name' = > _x ( 'Type' , 'taxonomy singular name' ) , 'search_items' = > __ ( 'Search Types' ) , 'all_items' = > __ ( 'All Types' ) , 'parent_item' = > __ ( 'Parent Type' ) , 'parent_item_colon' = > __ ( 'Parent Type:' ) , 'edit_item' = > __ ( 'Edit Type' ) , 'update_item' = > __ ( 'Update Type' ) , 'add_new_item' = > __ ( 'Add New Type' ) , 'new_item_name' = > __ ( 'New Type Name' ) , 'menu_name' = > __ ( 'Types' ) , ) ; register_taxonomy ( 'types' , array ( 'deals' ) , array ( 'hierarchical' = > true , 'labels' = > $labels , 'show_ui' = > true , 'show_admin_column' = > true , 'query_var' = > true , 'rewrite' = > array ( 'slug' = > 'type' ) , ) ) ; } |
Шаг 3
Теперь создайте свой первый пост о сделках. Вот скриншот Add New Deal
.
Шаг-4
Создайте свою первую таксономию типов. Вот страница Add New Type
.
С помощью этого руководства мы создали Custom Post Type - Deals
и Custom Taxonomy - Types
. В следующем уроке мы расскажем о некоторых дополнительных настройках.
Что дальше? Получите советы и рекомендации WordPress по пользовательскому типу записи (CPT) для RSS, YARPP, Post Meta, Footer, HomePage.
Кроме того, ознакомьтесь с другим учебником по CPT.
Как добавить пользовательскую таксономию в постоянную ссылку пользовательского типа записи?