Get post format

时间:2017-04-27 作者:name name2

我有帖子的循环和模板

if ( have_posts() ) : ?>
    <div class="container">
        <div class="row">
            <?php while ( have_posts() ) : the_post();?>
                <?php get_template_part( \'template-parts/post\', get_post_format() );?>
            <?php endwhile; ?>
        </div>
    </div>
<?php else :?>
    <?php get_template_part( \'template-parts/content\', \'none\' );?>
<?php endif; ?>
我想使用post格式并为eash post格式添加特殊的html代码,因此我将其添加到我的post模板(模板部分中的post.php):

<?php if ( get_post_format() == \'link\' ) : ?>
   //code here
<?php endif;?>
但它不起作用。

那么,是否可以在post模板文件中使用get\\u post\\u format()函数?或者如何在post模板文件中检查当前post格式?

1 个回复
最合适的回答,由SO网友:Floyd 整理而成

如果您在循环之外,请传递帖子ID。

$format = get_post_format( $post_id );
为防止丢失格式,请向模板中添加默认值:

$format = get_post_format() ? : \'standard\';
然后可以使用相同的IF语句:

if ( $format == \'link\' ) :

相关推荐

如何处理多个forloop?

I have and order\\u id as array但是wc_get_order 一次只接受一个id如何循环使用order\\u id并让项目id和项目名称的列表?我在课堂上使用这个。如果按如下所示传递单个id,则其工作正常 public function getStuffDone() { order_id =array(358,368) $order = wc_get_or