你这里有几个错误。
首先,如果您需要检查是否有特定的帖子格式,请使用has_post_format( $post_format )
. 因此,如果您需要为post-type视频指定一些特定内容,您将执行以下操作
if ( has_post_format(\'video\')) {
<--show video maybe-->
}
其次,
standard
实际上不是post格式。未设置特定格式时,wordpress将指定
Standard
去那个岗位。这是您将在post editor的后端看到的内容。如果您需要排除所有其他帖子类型,只显示没有指定帖子格式的特定内容,您将使用
false == has_post_format()
例如
if ( false == has_post_format()) {
<--show post without a post format-->
}
第三,你的
is_page_template()
我很困惑,因为我不知道你在哪里使用它。
把这个留给你,你为什么不创建content-postformat.php
模板并正常调用它们。get_template_part( \'content\', get_post_format() )
获取所有格式或get_template_part( \'content\', \'video\' )
在这种情况下,调用特定格式video
总体安排
这就是twentyfourteen\'scontent.php
看起来像。所有没有帖子格式的帖子都将使用此模板显示。
<?php
/**
* The default template for displaying content
*
* Used for both single and index/archive/search.
*
* @package WordPress
* @subpackage Twenty_Fourteen
* @since Twenty Fourteen 1.0
*/
?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<?php twentyfourteen_post_thumbnail(); ?>
<header class="entry-header">
<?php if ( in_array( \'category\', get_object_taxonomies( get_post_type() ) ) && twentyfourteen_categorized_blog() ) : ?>
<div class="entry-meta">
<span class="cat-links"><?php echo get_the_category_list( _x( \', \', \'Used between list items, there is a space after the comma.\', \'twentyfourteen\' ) ); ?></span>
</div>
<?php
endif;
if ( is_single() ) :
the_title( \'<h1 class="entry-title">\', \'</h1>\' );
else :
the_title( \'<h1 class="entry-title"><a href="\' . esc_url( get_permalink() ) . \'" rel="bookmark">\', \'</a></h1>\' );
endif;
?>
<div class="entry-meta">
<?php
if ( \'post\' == get_post_type() )
twentyfourteen_posted_on();
if ( ! post_password_required() && ( comments_open() || get_comments_number() ) ) :
?>
<span class="comments-link"><?php comments_popup_link( __( \'Leave a comment\', \'twentyfourteen\' ), __( \'1 Comment\', \'twentyfourteen\' ), __( \'% Comments\', \'twentyfourteen\' ) ); ?></span>
<?php
endif;
edit_post_link( __( \'Edit\', \'twentyfourteen\' ), \'<span class="edit-link">\', \'</span>\' );
?>
</div><!-- .entry-meta -->
</header><!-- .entry-header -->
<?php if ( is_search() ) : ?>
<div class="entry-summary">
<?php the_excerpt(); ?>
</div><!-- .entry-summary -->
<?php else : ?>
<div class="entry-content">
<?php
the_content( __( \'Continue reading <span class="meta-nav">→</span>\', \'twentyfourteen\' ) );
wp_link_pages( array(
\'before\' => \'<div class="page-links"><span class="page-links-title">\' . __( \'Pages:\', \'twentyfourteen\' ) . \'</span>\',
\'after\' => \'</div>\',
\'link_before\' => \'<span>\',
\'link_after\' => \'</span>\',
) );
?>
</div><!-- .entry-content -->
<?php endif; ?>
<?php the_tags( \'<footer class="entry-meta"><span class="tag-links">\', \'\', \'</span></footer>\' ); ?>
</article><!-- #post-## -->
也就是说,将所有内容放在一起,您的代码将如下所示
$temp = $wp_query;
$wp_query = null;
$args = array(\'posts_per_page\' => 5, \'post_type\' => \'gallery\', \'post_status\' => \'published\', \'paged\' => $paged);
$wp_query = new WP_Query($args);
if($wp_query->have_posts()):
while($wp_query->have_posts()) : $wp_query->the_post();
if ( false == has_post_format()) {
<--do something for posts without post format-->
} else {
<--do something for posts with post format-->
}
endwhile;
endif; ?>
请看s-ha-dum的答案