Лучший код для формата сообщения?

Как было предложено на этом сайте, я использую этот код для создания выдержки, если не выбран формат публикации / если это стандартный пост.

<?php $format = get_post_format(); if ( false === $format ) { echo 'This is a default post'; the_excerpt(); } ?> 

Тем не менее, кажется, что должен быть лучший способ включить его в одну инструкцию PHP, остальная часть которой следует этой схеме:

 if ( has_post_format( 'video' )) { ?> A VIDEO POST <?php the_content(); } if ( has_post_format( 'audio' )) { ?> AN AUDIO POST <?php the_content(); } 

Кто-нибудь знает, как включить исходный код в этот же оператор if? Если, то …

Solutions Collecting From Web of "Лучший код для формата сообщения?"

Я не уверен, что понимаю. Вы просто хотите объединить все if-утверждения вместе? Если это так, вы можете использовать elseif, например:

 <?php $format = get_post_format(); if ( false === $format ) { echo 'This is a default post'; the_excerpt(); } elseif ( has_post_format( 'video' )) { ?> A VIDEO POST <?php the_content(); } elseif ( has_post_format( 'audio' )) { ?> AN AUDIO POST <?php the_content(); } ?> 

Я предпочитаю использовать файлы шаблонов, с get_template_part() и get_post_format() :

 <?php get_template_part( 'post', get_post_format() ); ?> 

Затем этот метод будет искать, например post-gallery.php , и вернуться к post.php если либо post-gallery.php не существует, либо get_post_format() возвращает false .

Затем для каждого типа Post Format вы просто создаете post-{post-format-type}.php , и вам хорошо идти.

Вместо этого используйте коммутатор.

 switch ( get_post_format() ) { case 'video': // video post code break; case 'audio': // audio post code break; default: // default post code break; }