Add extra content to RSS feed

时间:2019-09-26 作者:n00bly

我想向我的RSS提要中添加一些额外的信息,这是一个数组,我只需要显示其中的“名称”。

这是我函数中的代码。php

function crunchify_feed($content) {  
    if(is_feed()) {  
        $post_id = get_the_ID(); // sample reference. remove this if you don\'t want to use this
        $fv_jobtype = get_the_terms( $post_id, "job_type" );
        $fv_jobtype_name = $fv_jobtype->name;
        $output .= $post_id;
        $output .= print_r($fv_jobtype);
        $content = $content.$output;
    }  
    return $content;  
}  
add_filter( \'the_content\', \'crunchify_feed\' );
输出在RSS提要中显示:

Array
(
[0] => WP_Term Object
    (
        [term_id] => 229
        [name] => Parttime
        [slug] => parttime
        [term_group] => 0
        [term_taxonomy_id] => 229
        [taxonomy] => job_type
        [description] => 
        [parent] => 0
        [count] => 380
        [filter] => raw
    )

)
我只需要显示名称,以便程序可以读取它。

1 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

问题在于这些方面:

    $fv_jobtype = get_the_terms($post_id, "job_type");
    ...
    $output .= print_r($fv_jobtype);
第一行获取分配给给定职位的所有作业类型,并将其存储为中的对象数组fv_jobtype 变量

倒数第二个使用print_r 函数,它试图以可读的形式打印给定的复杂值,这样您就可以得到您想要的。

How to fix it?

输出您真正想要看到的内容。如果只有名称可见,请严格执行以下操作:

function crunchify_feed( $content ) {  
    if ( is_feed() ) {  
        $post_id = get_the_ID(); // sample reference. remove this if you don\'t want to use this
        $output = implode( \', \', wp_list_pluck( get_the_terms( $post_id, \'job_type\' ), \'name\' ) ); 
        $content = $content.$output;
    }  
    return $content;  
}

add_filter( \'the_content\', \'crunchify_feed\' );

相关推荐

RSS用于页面而不是帖子?

我正在尝试设置RSS。然而,我网站上的所有页面都是页面,而不是帖子,因为SEO更好(无论发布日期如何,我的所有内容都是相关的)。我的RSS提要现在不起作用,有人告诉我这是因为我使用的是页面而不是帖子。我不懂PHP,但有没有办法将RSS也设置为包含页面?如果我要求我的托管服务为我添加一段PHP,我可以在网站上添加一段PHP,它不会破坏任何东西,但是,如果你发布了任何代码,请准确解释每个部分的注释,以防我需要自己添加。然而,在所有这些之前,还有其他方法吗?