我正在创建自定义的Wordpress主题, 但似乎无法使single.php模板正常工作。以下是我编写的代码。标题出现了, 但是内容没有出现。任何想法为什么不是呢?
<
?php
/**
* The Template for displaying all single posts.
*/get_header();
?>
<
div id="content" role="main">
<
div <
?php post_class() ?>
id="post-<
?php the_ID();
?>
">
<
h2>
<
a href="http://www.srcmini.com/<
?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <
?php the_title_attribute();
?>
">
<
?php the_title();
?>
<
/a>
<
/h2>
<
small>
<
?php the_time('F jS, Y') ?>
<
!-- by <
?php the_author() ?>
-->
<
/small>
<
div class="entry">
<
?php the_content();
?>
<
/div>
<
p class="postmetadata">
<
?php the_tags('Tags: ', ', ', '<
br />
');
?>
Posted in <
?php the_category(', ') ?>
| <
?php edit_post_link('Edit', '', ' | ');
?>
<
?php comments_popup_link('No Comments ?', '1 Comment ?', '% Comments ?');
?>
<
/p>
<
/div>
<
/div>
<
!-- #content -->
请参阅此处以获取输出的屏幕截图:
文章图片
#1 the_content()未显示, 因为它必须位于The Loop中-在此处查看文档?
你需要将代码更改为此:
if ( have_posts() ) : while ( have_posts() ) : the_post();
the_content();
endwhile;
else:
<
p>
<
?php _e('Sorry, no posts matched your criteria.');
?>
<
/p>
endif;
如果你始终确定要显示的内容, 则可以忽略其他内容:)或仅查看原始single.php, 即可在其中找到The Loop始终围绕the_content()
编辑:
这是你可能想要使用/开始的整个single.php:
<
?php
/**
* The Template for displaying all single posts.
*/get_header();
?>
<
div id="content" role="main">
<
?php if ( have_posts() ) : while ( have_posts() ) : the_post();
?>
<
div <
?php post_class() ?>
id="post-<
?php the_ID();
?>
">
<
h2>
<
a href="http://www.srcmini.com/<
?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <
?php the_title_attribute();
?>
">
<
?php the_title();
?>
<
/a>
<
/h2>
<
small>
<
?php the_time('F jS, Y') ?>
<
!-- by <
?php the_author() ?>
-->
<
/small>
<
div class="entry">
<
?php the_content();
?>
<
/div>
<
p class="postmetadata">
<
?php the_tags('Tags: ', ', ', '<
br />
');
?>
Posted in <
?php the_category(', ') ?>
| <
?php edit_post_link('Edit', '', ' | ');
?>
<
?php comments_popup_link('No Comments ?', '1 Comment ?', '% Comments ?');
?>
<
/p>
<
/div>
<
?php endwhile;
endif;
?>
<
/div>
<
!-- #content -->
#2 我只是简单地将the_post()放在the_content()之上, 就可以了
#3 我写这篇文章是因为我有一个类似的问题。我的内容没有显示。但是, 我对the_content的调用在The Loop内部。此外, 这在我的开发服务器上有效, 但在生产服务器上无效。
我可以通过删除所有插件来解决此问题, 然后将它们一个接一个地添加回去。
【WordPress(single.php不显示the_content())】另外, 当然, 如果你启用了缓存, 那么好的第一步就是清除缓存。
推荐阅读
- 关于Google字体的WordPress网站”通过https加载,但请求了不安全的样式表”
- 网页上的WordPress显示内容摘要
- WordPress在前端显示草稿页
- wordpress在主题样式中显示自定义菜单
- WordPress Salient主题(获得全宽2列的作品集)
- WordPress菜单栏上的搜索图标
- WordPress搜索不显示自定义帖子类型和字段
- WordPress Sage自定义帖子类型模板
- 标题的WordPress Rhythm主题社交图标样式更改