web-dev-qa-db-fra.com

Pourquoi get_post_format () pour les retours "Standard" vides

J'ai activé les types de messages personnalisés

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

Le type de message par défaut est défini sur Standard et fonctionne pour tous les types sauf le type Standard, lorsque j'ai un message standard, le retour de get_post_format() est vide. ai-je manqué quelque chose pour les activer?

3
ilyo

Parce que "Standard" n'est pas un format en soi - cela implique simplement que la publication n'a pas de format .

... ce qui est un peu trompeur, étant donné qu'il est répertorié dans la méta-boîte Format comme format à choisir

Je pense que "standard" implique très clairement ce que cela signifie. Si vous créez un site dans lequel une publication n'est jamais "standard", alors retombez sur une valeur par défaut:

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

Vous pouvez également vous connecter à wp_insert_post et appliquer un format s'il n'a pas déjà été défini.

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