Du bist nicht angemeldet (anmelden)
Seite 1
Custom Post Type Archives
Ich frickel gerade an einer Art Katalog in Wordpress. In diesem Katalog gibt es „Objekte“. Dafür habe ich einen eigenen Posttype „Objekt“ angelegt.
Klappt soweit: einzelne Objekte können über domain.de/objects/mein-objekt aufgerufen werden. Jetzt hätte ich gerne eine Archive-Seite unter: domain.de/objects/
Irgendwie klappt das nicht. Bekomme nur die 404 Seite, obwohl archive.php und archive-object.php im theme verzeichnis existieren.
add_action( 'init', 'create_my_post_types' );function create_my_post_types() {register_post_type( 'object',array('labels' => array('name' => __( 'Objects' ),'singular_name' => __( 'Object' )),'public' => true,'rewrite' => array('slug' => 'objects')));}
Klappt soweit: einzelne Objekte können über domain.de/objects/mein-objekt aufgerufen werden. Jetzt hätte ich gerne eine Archive-Seite unter: domain.de/objects/
Irgendwie klappt das nicht. Bekomme nur die 404 Seite, obwohl archive.php und archive-object.php im theme verzeichnis existieren.
So wie du es jetzt hast, enspricht es den Wordpress Pages, die haben auch keine Archive.
Du musst erst noch eine Taxonomie (Kategoriesierung) erzeugen mit register_taxonomy.
In der function register_post_type diese dann hinzufügen
Das Archiv kannst du dann mit dem Templatenamen taxonomy-object_category.php erzeugen.
// hier mal mein post type fürs Portfolio:
Du musst erst noch eine Taxonomie (Kategoriesierung) erzeugen mit register_taxonomy.
register_taxonomy('object_category','object',array('hierarchical' => true,'labels' => array('name' => _x( 'Categories', 'taxonomy general name', THEME_LANG ),/* usw usf */)) );
In der function register_post_type diese dann hinzufügen
'taxonomies' => array('object_category'),
Das Archiv kannst du dann mit dem Templatenamen taxonomy-object_category.php erzeugen.
// hier mal mein post type fürs Portfolio:
add_action( 'init', 'create_post_type' );function create_post_type() {global $theme_path;register_taxonomy('portfolio_category','portfolio',array('hierarchical' => true,'labels' => array('name' => _x( 'Categories', 'taxonomy general name', UT_THEME_NAME ),'singular_name' => _x( 'Category', 'taxonomy singular name', UT_THEME_NAME ),'search_items' => __( 'Search Categories', UT_THEME_NAME ),'all_items' => __( 'All Categories', UT_THEME_NAME ),'parent_item' => __( 'Parent Category', UT_THEME_NAME ),'parent_item_colon' => __( 'Parent Category:', UT_THEME_NAME ),'edit_item' => __( 'Edit Category', UT_THEME_NAME ),'update_item' => __( 'Update Category', UT_THEME_NAME ),'add_new_item' => __( 'Add New Category', UT_THEME_NAME ),'new_item_name' => __( 'New Category Name', UT_THEME_NAME ),'menu_name' => __( 'Categories', UT_THEME_NAME )),'show_ui' => true,'show_in_menu' => true,'query_var' => true,'rewrite' => array( 'slug' => 'works' ),'show_in_nav_menus' => true) );register_post_type( 'portfolio',array('labels' => array('name' => __( 'Portfolio', UT_THEME_NAME ),'singular_name' => __( 'Work', UT_THEME_NAME ),'add_new' => __( 'Add New', UT_THEME_NAME ),'add_new_item' => __( 'Add New Work', UT_THEME_NAME ),'edit' => __( 'Edit', UT_THEME_NAME ),'edit_item' => __( 'Edit Work', UT_THEME_NAME ),'new_item' => __( 'New Work', UT_THEME_NAME ),'view' => __( 'View Work', UT_THEME_NAME ),'view_item' => __( 'View Work', UT_THEME_NAME ),'search_items' => __( 'Search Portfolio', UT_THEME_NAME ),'not_found' => __( 'No Works found', UT_THEME_NAME ),'not_found_in_trash' => __( 'No Works found in Trash', UT_THEME_NAME ),'parent' => __( 'Parent Work', UT_THEME_NAME )),'public' => true,'menu_position' => 9,'menu_icon' => $theme_path . '/img/portfolio.png','hierarchical' => true,'_builtin' => false,'capability_type' => 'post','taxonomies' => array('portfolio_category'),'supports' => array( 'title', 'editor', 'thumbnail', 'revisions' ),'rewrite' => array('slug' => 'portfolio', 'with_front' => false),'show_in_nav_menus' => true));}
