Таксономия Wordpress по умолчанию (Категории) имеет элемент Без категории по умолчанию. Как добавить элемент по умолчанию в новую пользовательскую таксономию?
functions.php:
// === CUSTOM TAXONOMIES === //
function my_custom_taxonomies() {
register_taxonomy(
'block', // internal name = machine-readable taxonomy name
'static_content', // object type = post, page, link, or custom post-type
array(
'hierarchical' => true,
'labels' => array(
'name' => __( 'Blocks' ),
'singular_name' => __( 'Block' ),
'add_new_item' => 'Add New Block',
'edit_item' => 'Edit Block',
'new_item' => 'New Block',
'search_items' => 'Search Block',
'not_found' => 'No Block found',
'not_found_in_trash' => 'No Block found in trash',
),
'query_var' => true, // enable taxonomy-specific querying
'rewrite' => array( 'slug' => 'block' ), // pretty permalinks for your taxonomy?
)
);
}
add_action('init', 'my_custom_taxonomies', 0);
РЕДАКТИРОВАТЬ: я просто хочу, чтобы элемент таксономии там, когда тема установлена. Это не должно автоматически добавляться к любому пустому термину .
Категория по умолчанию - это жестко прописанный регистр в
wp_insert_post()
функции.Так что это не может быть точно воспроизведено, но вы можете справиться с этим другими способами. Я бы попробовал подключиться к переходу статуса поста для новых постов и назначить требуемый термин по умолчанию, если ни один не был назначен при создании поста.
источник
Используя плагин Default Term, вы можете сделать это
По умолчанию, когда сообщение отправляется, оно сохраняет термин по умолчанию в сообщении, если термин не отмечен. Он работает как для иерархической, так и не иерархической таксономии.
источник
Мне нужно было заполнить пользовательские таксономические «Дни» днями недели. Я не хотел, чтобы клиенту приходилось возиться с созданием дней или входить туда и удалять дни или дни с ошибками. Следуя приведенному выше совету, я придумал это, но мне интересно, есть ли более краткий способ его кодирования:
источник