【发布时间】:2010-10-13 13:53:56
【问题描述】:
我必须将帖子内容放入标签<head>。
我正在尝试将此代码放入主题的 header.php 文件中:
if(is_single()){
$stringa = the_content();
}
但它不起作用。
我该怎么办? 谢谢
【问题讨论】:
-
编辑了评论。 不可见
标签: php wordpress wordpress-theming
我必须将帖子内容放入标签<head>。
我正在尝试将此代码放入主题的 header.php 文件中:
if(is_single()){
$stringa = the_content();
}
但它不起作用。
我该怎么办? 谢谢
【问题讨论】:
标签: php wordpress wordpress-theming
the_content() 和get_the_content() 函数是在WordPress loop 内部使用的,这意味着你不能随意使用它们。您需要在 header.php 文件中构建一个循环,用于查询 WordPress 数据库、获取一些内容并在必要时使用它。
基本上,将您的 the_content() 调用封装在内部:
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
...
<?php endwhile; endif; ?>
然后您将能够在页面的任何位置获取帖子内容......但是,我不太明白您为什么要尝试在页面的<head> 部分中获取帖子内容。 <head> 用于样式声明、<script> 标签和有关页面的元信息... 不是 用于实际页面内容。如果您尝试获取有关当前页面的特定信息,我建议您完全使用不同的函数。
【讨论】:
我认为您正在寻找的是:
$stringa = get_the_content();
【讨论】:
if (is_single())
{
the_post();
$content = get_the_content();
rewind_posts();
}
重要的是要放rewind_posts(),否则post loop在其他模板中不起作用。
【讨论】: