Php-在post-template.php中发出警告,并且不在页面上加载内容

时间:2020-04-22 作者:TASan

我正在使用HTML5 Blank来创建我的网站。我想设计一些不同于其他页面的页面样式,因此为它们制作了一个页面模板。在这个页面模板中,我使用了以下内容:

<?php the_content(); ?>

这昨天做得很好。然后我今天醒来,现在相同的页面显示此错误,没有内容:

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

页面模板文件中的所有其他内容都可以正常加载,只是内容不能加载。我在日志中看不到从昨天到今天发生的任何更新,所以这让我有点困惑。

这些是帖子模板中317周围的行。php:

// If the requested page doesn\'t exist.
Line 317 ---> if ( $elements[\'page\'] > count( $elements[\'pages\'] ) ) {
    // Give them the highest numbered page that DOES exist.
    $elements[\'page\'] = count( $elements[\'pages\'] );
}
我在谷歌上搜索了大约一个小时,发现许多人都有同样的问题,但我的确切情况没有明显的解决方案。我禁用了所有插件,但没有任何帮助。

正常的帖子和带有标准模板的页面加载很好,只是带有页面模板的页面在24小时前工作,到目前为止没有任何更改。

我从哪里开始解决这个问题?

1 个回复
SO网友:TASan

问题是,在我不知道的情况下,错误地从模板文件中删除了与循环相关的代码。我不得不在后面加上:

<?php if (have_posts()): while (have_posts()) : the_post(); ?>
以及

<?php else: ?>

        <h2><?php _e( \'Sorry, nothing to display.\', \'html5blank\' ); ?></h2>

<?php endif; ?>

相关推荐

我的Single.php页面跳过了第一个div标记

我目前正在设计我的单曲。php文件,并且由于某种原因,在编译时,页面完全跳过第一个标记,然后打印其他所有内容,包括<h1> 在第一个中标记<div>. 目前我唯一的修复方法是放置一个空白<div> 标记之前<div class=\"page-header mb-5\"> 为了打印并因此查看样式,我觉得我的代码中只存在一个bug,不想依赖空白<div> 作为修复。有什么帮助吗?<?php get_header();?>