| |

WordPress Post Type-Funktionen

mixer 2062006 1920

Die Funktion flxo_has_archive ermittelt, ob der abgefragte Inhaltstyp ein Archive hat. Die Abfrage ist auch auf andere boolsche Post Type-Argumente anwendbar.

/** * returns true if post_type has archive */ function flxo_has_archive( $post_type ) { $obj = get_post_type_object( $post_type ); return isset( $obj->has_archive ) && $obj->has_archive === 1 ? true : false; }
Code-Sprache: PHP (php)

Array aller öffentlichen Inhaltstypen ausgeben (inklusive Seiten)

function flxo_get_public_post_types() { $args = array( 'public' => true ); $post_types = get_post_types( $args, 'objects' ); foreach ( $post_types as $post_type ) { $items[$post_type->name] = $post_type->label; } return $items; }
Code-Sprache: PHP (php)

Array aller öffentlichen Inhaltstypen exklusive Seiten

function flxo_get_publicly_queryable_post_types() { $args = array( 'public' => true, 'publicly_queryable' => true // like posts but not like pages ); $post_types = get_post_types( $args, 'objects' ); foreach ( $post_types as $post_type ) { $items[$post_type->name] = $post_type->label; } return $items; }
Code-Sprache: PHP (php)

Post Type Objekt ausgeben

echo '<pre><h3>Post Type Object</h3>'; print_r( get_post_type_object( $post_type ) ); echo '</pre>';
Code-Sprache: PHP (php)

Gibt die Labels und Paramter eines Post Types aus.

Post Type Object WP_Post_Type Object ( [name] => publicwiki [label] => Wiki [labels] => stdClass Object ( [name] => Wiki [singular_name] => Wiki [add_new] => Erstellen [add_new_item] => Neue Seite erstellen [edit_item] => Seite bearbeiten [new_item] => Neue Seite [view_item] => Seite ansehen [view_items] => Seiten ansehen [search_items] => Seiten durchsuchen [not_found] => Keine Seiten gefunden. [not_found_in_trash] => Keine Seiten im Papierkorb gefunden. [parent_item_colon] => Übergeordnetee Seite: [all_items] => Wiki [archives] => Wiki [attributes] => Seiten-Attribute [insert_into_item] => In die Seite einfügenn [uploaded_to_this_item] => Zu dieser Seite hochgeladen [featured_image] => Beitragsbild [set_featured_image] => Beitragsbild festlegen [remove_featured_image] => Beitragsbild entfernen [use_featured_image] => Als Beitragsbild nutzen [filter_items_list] => Seitenliste filtern [items_list_navigation] => Navigation der Seitenliste [items_list] => Seitenliste [menu_name] => Wiki [name_admin_bar] => Wiki ) [description] => [public] => 1 [hierarchical] => 1 [exclude_from_search] => [publicly_queryable] => 1 [show_ui] => 1 [show_in_menu] => 1 [show_in_nav_menus] => 1 [show_in_admin_bar] => 1 [menu_position] => [menu_icon] => [capability_type] => page [map_meta_cap] => 1 [register_meta_box_cb] => [taxonomies] => Array ( ) [has_archive] => [query_var] => publicwiki [can_export] => 1 [delete_with_user] => [_builtin] => [_edit_link] => post.php?post=%d [cap] => stdClass Object ( [edit_post] => edit_page [read_post] => read_page [delete_post] => delete_page [edit_posts] => edit_pages [edit_others_posts] => edit_others_pages [publish_posts] => publish_pages [read_private_posts] => read_private_pages [read] => read [delete_posts] => delete_pages [delete_private_posts] => delete_private_pages [delete_published_posts] => delete_published_pages [delete_others_posts] => delete_others_pages [edit_private_posts] => edit_private_pages [edit_published_posts] => edit_published_pages [create_posts] => edit_pages ) [rewrite] => Array ( [slug] => wiki [with_front] => [pages] => 1 [feeds] => [ep_mask] => 1 ) [show_in_rest] => [rest_base] => [rest_controller_class] => )
Code-Sprache: PHP (php)

Parameter eines Post Types ändern

function flxo_custom_post_type_args( $args, $post_type ) { if ( $post_type == 'custom-type' ) { $args['has_archive'] = true; $args['rewrite'] = array( 'slug' => 'custom-slug' ); } return $args; } add_filter( 'register_post_type_args', 'flxo_custom_post_type_args', 20, 2 );
Code-Sprache: PHP (php)

Schreibe einen Kommentar

Bitte Kommentarfunktion nicht für Supportanfragen nutzen. Dem kann hier nicht entsprochen werden.

Deine E-Mail-Adresse wird nicht veröffentlicht.