只返回_content()的某些(Html)元素

时间:2017-02-10 作者:Elias

我有25多篇帖子,结构都是一样的,内容如下:

<ul class="foo">
<li>b</li>
<li>a</li>
<li>r</li>
</ul>
<p>lorem ipsum...</p>
<img></img>
它们作为单一的投资组合对象。

我想在内容归档中显示每个帖子的一些内容作为预览。php(类似于公文包网格)。我可以用标题、标题图片等预览每篇文章(我可以从WP中检索到的东西),但我只能显示一个摘录(看起来很糟糕,因为每篇文章都是以列表开头的),或者显示整个文章(看起来也很糟糕)。

\\u expcerpt()函数不行,因为我希望它像列表一样显示;\\u content()不行,因为我想丢失其余部分。

我只知道每个帖子都以<ul> 使用3或4<li> 长度可变的元素。那些我不想展示的,没有更多,没有更少

那么我的猜测是用正则表达式过滤the\\u内容并只显示列表元素?

1 个回复
最合适的回答,由SO网友:shishir mishra 整理而成

有两种方法可以实现它。

$args = array(
                \'post_type\' => \'post\',
                \'posts_per_page\'=>1
             );
   $mj_query = new WP_Query( $args );
作者the_expcerpt(), 您可以使用摘录字段显示文章列表页面的内容。您可以通过当前的后期编辑页面启用“按屏幕显示摘录字段”选项。只需将html元素放入该摘录字段并使用以下代码即可。它将根据您的需要显示它。

while($mj\\u query->have\\u posts()){

    the_excerpt();
}

作者get_the_content(), 您可以通过以下方式获取特定帖子的所有内容get_the_content() 函数并使用substr() 作用在这里,您可以根据要显示的内容使用长度。

while ( $mj_query->have_posts() ) {

   $theExcerpt = get_the_content();
   echo substr($theExcerpt,0,100);
}

相关推荐

无法在模板函数.php中使用IS_HOME

我试图在标题中加载一个滑块,但只在主页上加载。如果有帮助的话,我正在使用Ultralight模板。我正在尝试(在template functions.php中)执行以下操作:<?php if ( is_page( \'home\' ) ) : ?> dynamic_sidebar( \'Homepage Widget\' ); <?php endif; ?> 但这行不通。现在,通过快速的google,我似乎需要将请