Membuat taksonomi khusus ini yang akan mengontrol tata letak pada posting tunggal, pada dasarnya saya ingin menambahkan dua opsi, Layout 1 dan Layout 2.
// Register Custom Taxonomy
function custom_taxonomy() {
$labels = array(
'name' => _x( 'Layout', 'Taxonomy General Name', 'text_domain' ),
'singular_name' => _x( 'Layout', 'Taxonomy Singular Name', 'text_domain' ),
'menu_name' => __( 'Taxonomy', 'text_domain' ),
'all_items' => __( 'All Items', 'text_domain' ),
'parent_item' => __( 'Parent Item', 'text_domain' ),
'parent_item_colon' => __( 'Parent Item:', 'text_domain' ),
'new_item_name' => __( 'New Item Name', 'text_domain' ),
'add_new_item' => __( 'Add New Item', 'text_domain' ),
'edit_item' => __( 'Edit Item', 'text_domain' ),
'update_item' => __( 'Update Item', 'text_domain' ),
'separate_items_with_commas' => __( 'Separate items with commas', 'text_domain' ),
'search_items' => __( 'Search Items', 'text_domain' ),
'add_or_remove_items' => __( 'Add or remove items', 'text_domain' ),
'choose_from_most_used' => __( 'Choose from the most used items', 'text_domain' ),
'not_found' => __( 'Not Found', 'text_domain' ),
);
$capabilities = array(
'manage_terms' => 'foobar',
'edit_terms' => 'foobar',
'delete_terms' => 'foobar',
'assign_terms' => 'foobar'
);
$args = array(
'labels' => $labels,
'hierarchical' => true,
'public' => true,
'show_ui' => true,
'show_admin_column' => false,
'show_in_nav_menus' => false,
'show_tagcloud' => false,
'capabilities' => $capabilities,
);
register_taxonomy( 'Layout', array( 'post' ), $args );
}
// Hook into the 'init' action
add_action( 'init', 'custom_taxonomy', 0 );
Kemampuan diatur ke nilai yang tidak valid untuk menghentikan istilah diedit, tetapi saya tidak bisa membuat wp_insert_term berfungsi.
Menambahkan dua istilah ke taksonomi khusus saya tidak mungkin terlalu sulit, bukan?
Menggunakan ini untuk memasukkan istilah tidak berfungsi, meskipun jika saya mengubah nama taksonomi saya menjadi 'kategori', yaitu WP default berfungsi dengan baik. Apa yang menyebabkannya?
function example_insert_category() {
$parent_term = term_exists( 'layout' ); // array is returned if taxonomy is given
$parent_term_id = $parent_term['term_id']; // get numeric term id
wp_insert_term(
'Example Category',
'layout',
array(
'description' => 'This is an example category created with wp_insert_term.',
'slug' => 'example-category'
)
);
}
add_action( 'after_setup_theme', 'example_insert_category' );