webentwicklung-frage-antwort-db.com.de

Warum ist get_post_format () für "Standard" leer?

Ich habe benutzerdefinierte Beitragstypen aktiviert

add_theme_support( 'post-formats', array( 'aside', 'link', 'gallery', 'status', 'quote', 'image' ) );

Der Standardbeitragstyp ist auf Standard eingestellt und funktioniert für alle außer dem Typ Standard, wenn ich einen Standardbeitrag habe, ist die Rückgabe von get_post_format() leer. Habe ich etwas verpasst, um sie zu aktivieren?

3
ilyo

Da "Standard" selbst kein Format ist, impliziert dies lediglich, dass der Beitrag keine Formate hat .

... was etwas irreführend ist, da es in der Meta-Box Format als Format zur Auswahl steht

Ich denke, "Standard" impliziert ganz klar, was es bedeutet. Wenn Sie eine Site erstellen, in der ein Beitrag niemals "Standard" ist, greifen Sie auf einen Standard zurück:

if ( ! $format = get_post_format() )
    $format = 'gallery';

Alternativ können Sie sich an wp_insert_post anschließen und ein Format erzwingen, falls noch keines festgelegt wurde.

function wpse_58121_set_default_format( $post_id ) {
    if ( ! get_post_format( $post_id ) )
        set_post_format( $post_id, 'gallery' );
}
6
TheDeadMedic