li之外的PHP文本
我正在构建一个wordpress主题,由于某些原因,当我查看源代码时,我的页面列表显示在li之外li之外的PHP文本,php,wordpress,Php,Wordpress,我正在构建一个wordpress主题,由于某些原因,当我查看源代码时,我的页面列表显示在li之外 <ul class="tabs"> <?php while ( $queryObject->have_posts()) : $queryObject->the_post(); echo sprintf('<li>%s</li>', the_title()); endwhile;
<ul class="tabs">
<?php
while ( $queryObject->have_posts()) : $queryObject->the_post();
echo sprintf('<li>%s</li>', the_title());
endwhile;
?>
</ul>
当我在chrome的inspector中查看源代码时
<ul class="tabs">
Deans’ Corner<li></li>
Education Plan<li></li>
Counselors’ Corner<li></li>
</ul>
院长角
教育计划
辅导员角
我错过了一些简单的东西看看
标题()的文档
:
显示或返回当前文章的标题
[……]
$echo
(布尔值)(可选)显示标题(TRUE)或返回标题以在PHP中使用(FALSE)
默认值:TRUE
title()
采用可选参数$echo
,该参数决定是返回还是回显页面标题。由于您没有填写,并且默认为echo选项,因此您的代码不起作用。请查看标题()的文档:
显示或返回当前文章的标题
[……]
$echo
(布尔值)(可选)显示标题(TRUE)或返回标题以在PHP中使用(FALSE)
默认值:TRUE
title()
采用可选参数$echo
,该参数决定是返回还是回显页面标题。由于您没有填充它,并且它默认为echo选项,因此您的代码无法工作。如果_title()出现回音,您将无法将其直接用于sprintf()
因此,您可以只使用HTML
<li><?= the_title(); ?></li>
下面的例子是不必要的,因为正如Timosta在回答中指出的,_title()的可选参数
或者,如果需要将_title()用作函数参数,则可以使用输出缓冲:
ob_start()
the_title();
$title = ob_get_clean();
echo sprintf('<li>%s</li>', $title);
ob_start()
_title();
$title=ob_get_clean();
echo sprintf(“%s ”,$title);
如果_title()出现回声,您将无法将其直接用于sprintf()
因此,您可以只使用HTML
<li><?= the_title(); ?></li>
下面的例子是不必要的,因为正如Timosta在回答中指出的,_title()的可选参数
或者,如果需要将_title()用作函数参数,则可以使用输出缓冲:
ob_start()
the_title();
$title = ob_get_clean();
echo sprintf('<li>%s</li>', $title);
ob_start()
_title();
$title=ob_get_clean();
echo sprintf(“%s ”,$title);
问题在于默认情况下,标题()会回显标题,而不是返回标题。实际上,您可以在标题前后指定要回显的内容,因此无需使用sprintf()
。
这应该起作用:
<ul class="tabs">
<?php
while ( $queryObject->have_posts()) : $queryObject->the_post();
the_title('<li>', '</li>');
endwhile;
?>
</ul>
检查WordPress代码:
问题在于默认情况下,标题()会回显标题,而不是返回标题。实际上,您可以在标题前后指定要回显的内容,因此无需使用sprintf()
。
这应该起作用:
<ul class="tabs">
<?php
while ( $queryObject->have_posts()) : $queryObject->the_post();
the_title('<li>', '</li>');
endwhile;
?>
</ul>
检查WordPress代码:
我猜标题()
实际上是回显标题,而不是返回标题。可能在标题()
中发生了一些事情,但您还没有发布这些。@HoboSapiens这是一个wordpressfunction@jrock2004在问题中提出解决办法不是个好主意。如果下面没有回答您的问题,请添加您自己的答案。我猜标题()
实际上是回显标题而不是返回标题。可能在标题()中发生了一些事情,“但是你还没有贴出来。”霍博萨皮恩斯说,这是一个wordpressfunction@jrock2004在问题中提出解决办法不是个好主意。如果下面没有什么能回答你的问题,那就加上你自己的答案。是的,我刚开始读这个。我能够完成标题(“”,“ ”);总之,要这样做:标题(“”、“ ”)
或使用实际用于返回标题的方法:获取标题()。否则,echo就隐藏在一个函数后面,这个函数的标题绝不表示任何东西都将被echo
ed。我能够完成标题(“”,“ ”);总之,要这样做:标题(“”、“ ”)
或使用实际用于返回标题的方法:获取标题()。否则,echo将隐藏在一个函数后面,该函数的标题绝不表示任何内容将被echo
ed。这已在以前的回答/评论中介绍过。这已在以前的回答/评论中介绍过。