Как добавить новый тип записей в WordPress?
function custom_post_type() {
$args = array(
'public' => true,
'label' => 'Мой новый тип записей',
// Добавьте остальные параметры по вашему усмотрению
);
register_post_type( 'custom_post', $args );
}
add_action( 'init', 'custom_post_type' );
Заранее благодарю за помощь! Ответы:
К сожалению, я не являюсь экспертом по WordPress, но я могу дать тебе некоторые общие указания и примеры кода, которые могут помочь тебе решить твои вопросы.
1. Создание нового типа записей с помощью функции register_post_type():
Вот пример кода, который поможет тебе создать новый тип записей в WordPress:
function custom_post_type() {
$args = array(
'public' => true,
'label' => 'Мой новый тип записей',
// Добавьте остальные параметры по вашему усмотрению
);
register_post_type( 'custom_post', $args );
}
add_action( 'init', 'custom_post_type' );
2. Добавление пользовательских полей (метабоксов) для нового типа записей:
Для добавления пользовательских полей тебе может понадобиться использовать функцию add_meta_box(). Вот пример кода:
function add_custom_fields() {
add_meta_box( 'custom_meta_box', 'Мои пользовательские поля', 'display_custom_fields', 'custom_post', 'normal', 'high' );
}
function display_custom_fields() {
global $post;
// Вывод пользовательских полей для редактирования
}
add_action( 'add_meta_boxes', 'add_custom_fields' );
3. Настройка архивной страницы для нового типа записей:
Для настройки архивной страницы тебе может понадобиться создать шаблон страницы (archive-custom_post.php) и настроить соответствующие параметры в функции register_post_type(). Вот пример кода:
$args = array(
'public' => true,
'label' => 'Мой новый тип записей',
'has_archive' => true,
'rewrite' => array( 'slug' => 'custom_posts' ),
// Добавьте остальные параметры по вашему усмотрению
);
register_post_type( 'custom_post', $args );
4. Добавление таксономий (категории и метки) к новому типу записей:
Для добавления таксономий тебе может понадобиться использовать функции register_taxonomy() и register_taxonomy_for_object_type(). Вот пример кода:
function custom_taxonomy() {
$args = array(
'hierarchical' => true,
'labels' => array(
'name' => 'Мои категории',
'singular_name' => 'Моя категория',
),
// Добавьте остальные параметры по вашему усмотрению
);
register_taxonomy( 'custom_category', 'custom_post', $args );
register_taxonomy_for_object_type( 'category', 'custom_post' );
register_taxonomy_for_object_type( 'custom_category', 'custom_post' );
}
add_action( 'init', 'custom_taxonomy' );
Надеюсь, эти примеры кода помогут тебе в создании нового типа записей в WordPress и решении твоих задач. Удачи!