Anchor link to top of page
hideout 1714701 1920

Ein von einem Plugin generierter Post Type wurde über einen längeren Zeitraum in einem Projekt verwendet. Jeder Eintrag war einzeln zugänglich. Nach ein paar Änderungen am Inhaltskonzept wurde beschlossen, die Einträge des Post Types nur noch über Custom Loops mit definierten Kategorien als Archive anzuzeigen und auf die Einzelansichten fortan zu verzichten. Das Schlüsselargument hierfür ist publicly_queryable das auf false gestellt wird.

not publicly queryable
Wenn publicly_queryable auf false gestellt ist, verschwindet auch der „Ansehen“-Link in der Postliste im Dashboard

Um das Plugin nicht modifizieren zu müssen wurde das ursprüngliche Argument über die functions.php des Childthemes überschrieben.

function hide_single_posts_by_type( $post_type, $args ) {
    if ( 'my_posttype' != $post_type )
        return; 
    $args->publicly_queryable = false;
    global $wp_post_types;
    $wp_post_types[$post_type] = $args;
}
add_action( 'registered_post_type', 'hide_single_posts_by_type', 10, 2 );

Bitte Kommentarfunktion nicht für Supportanfragen nutzen. Dem kann hier nicht entsprochen werden. Die Angabe einer E-Mail-Adresse und eines Namens ist nicht erforderlich. Einen (Spitz)-Namen zu nennen wäre aber doch nett.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Hinweis: Sowohl angegebener Name als auch E-Mail-Adresse (beides ist optional, dafür werden alle Kommentare vor Veröffentlichung geprüft) werden dauerhaft gespeichert. Du kannst jeder Zeit die Löschung Deiner Daten oder / und Kommentare einfordern, direkt über dieses Formular (wird nicht veröffentlicht, und im Anschluss gelöscht), und ich werde das umgehend erledigen. – Mit hinterlassenen Kommentaren hinterlegte IP-Adressen werden nach zwei Monaten automatisch gelöscht