在Foreach循环中,描述没有显示?

时间:2017-11-02 作者:TheDose

在我的索引中。php页面,我使用了此代码,但它没有显示说明,即:我的文章的100个字符?不建议将get\\u the\\u content()替换为$post->post\\u content,我知道这是可行的。但需要正确的输出,保持get\\u the\\u content()。让我知道为了获得输出,我还应该在代码中更改哪些内容。

<?php
$args = array(\'posts_per_page\'=>3,
    \'orderby\'=>\'rand\',
    \'post_type\'=>\'post\'
);

$post_data = get_posts($args);

foreach($post_data as $post){

    echo \'<a href="\'.get_the_permalink().\'">\'.get_the_title().\'</a><br>\';

    $post_data = substr(strip_tags(get_the_content()),0,100).\'...\';
    echo $post_data."<br>";

}
?>

1 个回复
最合适的回答,由SO网友:M-R 整理而成

请阅读get_the_permalinkget_the_title. 开发这些函数是为了从全局$post变量中获取详细信息。您的本地$帖子在此处无效。

你应该通过本地考试$post 这些功能包括get_the_permalink($post)get_the_title($post). 要获取\\u内容,您需要使用apply_filters(\'the_content\',$post->post_content);

然而,首选的方法是创建WP_Query. 请阅读它是一个强大的类,可以查询所有关于帖子的信息。在你的情况下,它会像这样

<?php
$args = array(\'posts_per_page\'=>3,
    \'orderby\'=>\'rand\',
    \'post_type\'=>\'post\'
);

$randomPosts = new WP_Query($args);

while($randomPosts->have_posts()){
    $randomPosts->the_post();

    echo \'<a href="\'.get_the_permalink().\'">\'.get_the_title().\'</a><br>\';

    echo substr(strip_tags(get_the_content()),0,100).\'...\';
    echo "<br>";

}
?>
我还没有测试过以上代码,但我想你应该明白了。

结束

相关推荐

Show the excerpt in a loop

我想用这个循环显示最后3篇文章。这很有效,但我不知道为什么,但摘录总是一样的。我做错了什么? <?php $args = array( \'numberposts\' => \'3\' ); $recent_posts = wp_get_recent_posts( $args ); foreach( $recent_posts as $recent ){ ?> <div class=\"