0

我在下面有这个 php 代码,用于显示特定类别的帖子。

<ul id="sliderx">
<?php query_posts('category_name=slideshow&showposts=10');
while (have_posts()) : the_post();
echo "<li>".the_content()."</li>";
endwhile;?>
</ul>

如您所见,它在类别幻灯片中显示这些帖子,其结构应该是这样的。

<ul id="sliderx">
<li>the post 1</li>
<li>the post 2</li>
<li>the post 3</li>
</ul>

但生成的输出是这样的。

<ul id="sliderx">
<p>three</p>
<li></li><p>two</p>
<li></li><p>one</p>
<li></li>
</ul>

并且生成的结构不应该看起来像那样,而且看起来很讨厌,所以我在如何正确显示它时遇到了问题,就像显示在这个结构中一样。

<ul id="sliderx">
<li>the post 1</li>
<li>the post 2</li>
<li>the post 3</li>
</ul>

所以我想知道是否有人可以告诉我如何解决这个问题。

我愿意接受任何建议、建议和建议。谢谢你。

4

1 回答 1

3

发生这种情况是因为 the_content() 已经包含一个回声。PHP 尝试在将字符串发送到 echo 命令之前创建字符串。在评估字符串时,内容将被打印出来。然后 echo 获取尚未打印的内容: li 标签。

所以简单的解决方法是:

echo '<li>';
the_content();
echo '</li>';

它有效并符合我的愿望。

:)

于 2012-10-07T21:41:39.430 回答