将自定义帖子类型的_Content();视为数组或对象

时间:2019-01-14 作者:Enrico

我在mu plugins文件夹中创建了一个自定义帖子类型。

function wpdocs_codex_book_init() {
    $labels = array(
        \'name\'                  => _x( \'Books\', \'Post type general name\', \'textdomain\' ),
        \'singular_name\'         => _x( \'book\', \'Post type singular name\', \'textdomain\' ),
    );

    $args = array(
        \'labels\'             => $labels,
        \'public\'             => true,
    );

    register_post_type( \'book\', $args );
}

add_action( \'init\', \'wpdocs_codex_book_init\' ); 
当它在一本书中呈现它的内容时。php页面我创建自定义查询并使用以下代码:

<?php
$args = array(
    \'post_type\' => \'book\',
);
$query = new WP_Query( $args ); 
?>

<h1><?php the_title(); ?></h1>
<h1><?php the_content(); ?></h1>
标题呈现正确,但当涉及到内容时,会引发以下错误:

警告:count():参数必须是在/app/public/wp includes/post模板中实现Countable的数组或对象。php在线284

默认帖子和页面会正确呈现。为什么会这样?提前感谢

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

single-book.php 不应包含自定义查询。WordPress已经查询了正确的帖子,所以new WP_Query( $args ) 完全没有必要。

你的问题是你失踪了the loop.

最低限度single-book.php 应具有:

<?php while ( have_posts() ) : the_post(); ?>

    <h1><?php the_title(); ?></h1>

    <?php the_content(); ?>

<?php endwhile; ?>

相关推荐

如何在WooCommerce总价金额->ProductPages下增加保证金

我对ProductPage上的woocommerce价格金额有两个问题。第一个问题:我想在总价格金额下增加更多保证金,并按下“添加到卡”按钮我怎样才能做到这一点?(示例见下图)第二我只想显示总价。现在我得到了可变产品的最低价格,显示在产品标题下面,以及总价格金额。我只想显示总价。已经谢谢你了!