Ich muss einen benutzerdefinierten Beitragstyp für die Spielzeuge erstellen, die ich verkaufe. Der benutzerdefinierte Beitragstyp, den ich erstellen möchte, ist „Spielzeug“. Ich möchte, dass sie Kategorien/Tags haben, damit ich sie später sortieren kann. Tags, die ich jetzt erstellen möchte, sind “Badespielzeug”, “Magnete”, “Yoyos” und “Glow in the Dark”.
Ich denke, wenn ich den Code beobachten kann, kann ich versuchen, ihn zu analysieren und ihn später einfach zu replizieren.
Hier ist das Tutorium dem ich versucht habe zu folgen. Aber es verwirrt mich immer noch, wie man Taxonomien oder Tags hinzufügt.
Ich füge diese Funktionen dem hinzu functions.php
meines Child-Themes und ich verwende WordPress 3.3.1
Sie möchten Ihre Taxonomie und Ihren benutzerdefinierten Beitragstyp in Ihrer functions.php mithilfe von definieren register_taxonomy()
und register_post_type()
Funktionen.
Hier ist ein Beispiel, wie es aussehen könnte:
/****************************************
* Add custom taxonomy for Toys *
****************************************/
add_action('init', 'toys_categories_register');
function toys_categories_register() {
$labels = array(
'name' => 'Toys Categories',
'singular_name' => 'Toys Category',
'search_items' => 'Search Toys Categories',
'popular_items' => 'Popular Toys Categories',
'all_items' => 'All Toys Categories',
'parent_item' => 'Parent Toy Category',
'edit_item' => 'Edit Toy Category',
'update_item' => 'Update Toy Category',
'add_new_item' => 'Add New Toy Category',
'new_item_name' => 'New Toy Category',
'separate_items_with_commas' => 'Separate toys categories with commas',
'add_or_remove_items' => 'Add or remove toys categories',
'choose_from_most_used' => 'Choose from most used toys categories'
);
$args = array(
'label' => 'Toys Categories',
'labels' => $labels,
'public' => true,
'hierarchical' => true,
'show_ui' => true,
'show_in_nav_menus' => true,
'args' => array( 'orderby' => 'term_order' ),
'rewrite' => array( 'slug' => 'toys', 'with_front' => true, 'hierarchical' => true ),
'query_var' => true
);
register_taxonomy( 'toys_categories', 'toys', $args );
}
/*****************************************
* Add custom post type for Toys *
*****************************************/
add_action('init', 'toys_register');
function toys_register() {
$labels = array(
'name' => 'Toys',
'singular_name' => 'Toy',
'add_new' => 'Add New',
'add_new_item' => 'Add New Toy',
'edit_item' => 'Edit Toy',
'new_item' => 'New Toy',
'view_item' => 'View Toy',
'search_items' => 'Search Toys',
'not_found' => 'Nothing found',
'not_found_in_trash' => 'Nothing found in Trash',
'parent_item_colon' => ''
);
$args = array(
'labels' => $labels,
'public' => true,
'publicly_queryable' => true,
'show_ui' => true,
'query_var' => true,
'has_archive' => true,
'rewrite' => array( 'slug' => 'toys', 'with_front' => true ),
'capability_type' => 'post',
'menu_position' => 6,
'supports' => array('title', 'excerpt', 'editor','thumbnail') //here you can specify what type of inputs will be accessible in the admin area
);
register_post_type( 'toys' , $args );
}
Dann müssen Sie zum Admin-Backend gehen und Sie sollten Toys direkt unter Post sehen, erstellen Sie die gewünschten Kategorien in ‘Toys Categories’.
Ich weiß, dass ich spät dran bin, aber das könnte denen helfen, die Schwierigkeiten haben, einen einfachen Weg zu finden, benutzerdefinierte WP-Beitragstypen hinzuzufügen.
Es gibt eine großartige Bibliothek, um mit WordPress-Post-Typen und Taxonomien zu arbeiten.
Befolgen Sie diese Schritte, um Ihr Leben einfacher zu machen.
-
Führen Sie in Ihrem Themenverzeichnis diesen Befehl aus.
$ composer require azi/raskoh
-
schließen Sie den Composer Autoloader in Ihre Themes functions.php ein
require_once "vendor/autoloader.php";
-
Fügen Sie nach der Anforderung diesen Code hinzu, um den Posttyp zu registrieren
`
$toy = new Raskoh\PostType("Toy");
$toy->register();
der Raskoh (Bibliothek) kümmert sich um den Rest. Hier ist die Bibliothek auf