我已经在Wordpress中对RSS提要进行了一些更改,并且正在使用fetch_feed()将数据显示到另一个网站。 想象有两个名为#Wordpress1和#Wordpress2的网站。 这是我添加到#wordpress1的functions.php文件中的代码

add_action('rss2_item', 'dw_add_data_to_rss');
function dw_add_data_to_rss(){
    global $post;

    if( $post->post_type == 'product' ) {
        $product = new WC_Product( $post->ID );

        $output = '';
        $thumbnail_ID = get_post_thumbnail_id( $post->ID );
        $thumbnail = wp_get_attachment_image_src($thumbnail_ID, 'thumbnail');
        $output  = '<post-thumbnail>';
        $output .= '<url>'. $thumbnail[0] .'</url>';
        $output .= '<width>'. $thumbnail[1] .'</width>';
        $output .= '<height>'. $thumbnail[2] .'</height>';
        $output .= '</post-thumbnail>';

        $output .= '<price>' . number_format( $product->get_price() ) . ' ' . get_woocommerce_currency_symbol() . '</price>';

        echo $output;
    }
}

此代码将产品价格和缩略图添加到Rss feed中,现在我们需要在#Wordpress2上显示这些数据,但我不知道该怎么做

$rss = fetch_feed( 'http://localhost/wp/feed/?post_type=product' );
if ( ! is_wp_error( $rss ) ) {
    $maxitems  = $rss->get_item_quantity( 10 ); 
    $rss_items = $rss->get_items( 0, $maxitems );
}

foreach ( $rss_items as $item ) {
    echo '<a href="'. $item->get_permalink() .'"><img src="{MY_IMAGE_FROM_RSS}"> <span class="price">{MY_PRICE_FROM_RSS}</span></a>';
}

在上面的代码中我应该使用什么代替MY_IMAGE_FROM_RSS和MY_PRICE_FROM_RSS

===============>>#1 票数:1 已采纳

您应该使用get_item_tags()函数,并将空白用于所需的名称空间。

对于MY_IMAGE_FROM_RSS使用$item->get_item_tags('','post-thumbnail')[0]['child']['']['url'][0]['data'] ;对于MY_PRICE_FROM_RSS使用$item->get_item_tags('','price')[0]['data']

  ask by Amin translate from so

未解决问题?本站智能推荐:

1回复

Simplepie无法识别wordpress RSS

在simplepie中,为什么没有这些域将它们解析为HTML页面的原因? 到目前为止,我唯一可以使用的简易RSS是twitter RSS feed。 例如 我需要使用wordpress和Blogger网站的rss提要(自动检测)工作。 谁能指出我正确的方向? 干杯
1回复

从WordPress访问自定义字段和RSS源

我试图从WordPress中的RSS源访问自定义字段(使用SimplePie),但我无法 您可以在RSS中看到命名空间和标记存在,但由于某种原因,$ public_url始终为空。 我不确定我做错了什么。
1回复

如何使用SimplePie过滤/阻止RSS源项目

我有一个谷歌新闻提要,我在我的WordPress网站上显示,使用以下代码: 问题是,我需要过滤掉某些单独的文章。 谷歌新闻有guid标签。 鉴于该项目的指导,我如何告诉SimplePie忽略给定的项目? 谢谢-
1回复

过滤具有特定内容的RSS项 使用SimplePie的属性

我正在抓取RSS feed,但我只希望它显示在标签内包含特定图像URL的项目。 这是我要搜索的特定位: 这是我在此应用程序中使用的特定代码。 这是基础知识,我对Simplepie或PHP并不是很擅长(我假设对于拥有更扎实的PHP知识的人,有更优雅的方法可以做到这一点): 同样
1回复

如何使用SimplePie读取Wordpress密码保护的供稿

我正在尝试阅读wordpress feed,它使用simplepie进行了密码保护。 在我看到这个问题的地方没有答案 我正在Simplepie演示页面中测试url feed 一旦我们单击“读取”按钮,因为feed受密码保护,它将重定向到登录页面并显示此错误 我有用户名和密
2回复

如何使用SimplePie和fetch_feed()从RSS feed中提取media:thumbnail?

我有两个单独的WordPress安装程序–我将一个站点A命名为另一个站点B。我想使用fetch_feed()将提要从站点B提取到站点A上。 我也想包括一个缩略图。 WordPress默认情况下不在提要中包含缩略图,因此我创建了一个自定义提要,其中包括以下内容: 这似乎可行,并且在每个
1回复

Simplepie缓存的默认位置

我正在使用fetch_feed()解析RSS feed。 fetch_feed()会自动缓存。 如何测试是否以正确的时间间隔缓存了Feed? 缓存的默认位置在哪里? 我已经使用wp_feed_cache_transient_lifetime挂钩来设置时间间隔。
1回复

回显到页面时,是否需要转义simplepie $ itme-> get_content()输出?

我有一个WordPress插件,可读取RSS提要并将其输出到管理页面中的浏览器。 在插件中,它使用WordPress的标准feed.php模板(wp-includes / feed.php),该模板使用SimplePie通过WordPress获取提要。 该页面循环遍历提要项,并使用$it
1回复

SimplePie多个随机顺序

我是SimplePie的新手,正在浏览API,无法找到我需要的东西。 我需要使用Simple Pie来从多个feed中获取随机文章。 我最好解释一下我的问题: 以下是SimplePie现在给我的订阅源(按时间顺序): 第1条(CNN) 第2条(CNN) 第3条
2回复

从另一个WordPress网站提取帖子

我正在尝试使用下面来自http://codex.wordpress.org/Function_Reference/fetch_feed#Usage的代码从我的个人网站获得2条最新帖子。 通过此代码,我可以获取Posts URL,标题和发布日期,这太好了! 现在,尝试获取图像是另一