繁体   English   中英

如何在Wordpress中的小部件中呈现格式化的帖子内容

[英]How to render formatted post content in widget in Wordpress

我是wordpress的新手,尝试制作一个仅显示particuler类别的最新帖子的小部件。

为此,我在admin中进行了一些设置,以选择管理员要显示其最新帖子(最新ID的帖子)的类别。

我在小部件中使用以下代码来显示帖子内容:

$query_arguments = array(
        'posts_per_page' => (int) 1,
        'post_type' => 'post',
        'post_status' => 'publish',
        'cat' => (int) $settings['category'],
        'order' => 'DESC',
        'orderby' => (($settings['display_by'] == 0) ? 'ID' : 'date')
    );  

$posts_query = new WP_Query( $query_arguments );  
if ($posts_query->have_posts()) {  
    $posts = $posts_query->get_posts();  
    $post = $posts[0];  
    echo $post->post_content;
}  

但是上面的代码在一个段落中显示了内容,或者您​​可以说没有格式。 我进行了大量搜索,发现我需要应用“ the_content”过滤器来格式化内容。 因此,我完成了与以下代码相同的操作:

if ($posts_query->have_posts()) {  
    $posts = $posts_query->get_posts();  
    $post = $posts[0]; 
    $content = apply_filters('the_content', $post->post_content); 
    echo $content;
}  

现在,以上更改返回了空字符串。 我有很多东西,但每个人都在说要使用Apply过滤器或使用the_content()函数。 我已经尝试了两种解决方案,但没有任何反应。

谁能分享这个问题的解决方案?

请检查是否通过echo $ post-> post_content在$ post-> post_content中获取任何文本

您需要做的就是

$query_arguments = array(
        'posts_per_page' => (int) 1,
        'post_type' => 'post',
        'post_status' => 'publish',
        'cat' => (int) $settings['category'],
        'order' => 'DESC',
        'orderby' => (($settings['display_by'] == 0) ? 'ID' : 'date')
    );  

$posts_query = new WP_Query( $query_arguments );  
while ($posts_query->have_posts()) { 
    $posts_query->the_post();
    echo get_the_content();
}  

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM