从RSS Feed中删除图像将Feed添加到其他站点时的说明

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从RSS Feed中删除图像将Feed添加到其他站点时的说明相关的知识,希望对你有一定的参考价值。

我几乎完全靠自己试图解决这个问题,对php几乎一无所知,我迫切需要帮助。一个Wordpress新闻网站重新设计的图片包含在Feed的描述标签中,我们已经设置了一个方法来拉动这些图像,所以现在其他网站上的Feed看起来是双倍的。我想关闭描述标签中的图像,我无法弄清楚如何实现这一目标。

我尝试了一些东西,比如strip_tag,改组代码/ html等,但我怀疑我的大多数问题都不知道在哪里或如何实现它们。

if ($rss = simplexml_load_file($feed)){  // (replace relative path with variable: $rssPath ).

$count = 0;
foreach($rss->channel->item as $item){
    if ($count < $items) {
         /*Set variables from RSS*/
          $title = $item->title;
          $desc = $item->description;
          $content = htmlspecialchars_decode($item->children('content', true)->encoded);
          preg_match('/(<img[^>]+>)/i', $content, 
$content_image);
//if(strstr($content, 'img')){
//            $content_trunc = 
substr($content,0,strpos($content,'</p>', 550)) . "...";
//}
//else {
//$content_trunc = substr($content,0,strpos($content,'</p>', 400)) . 
"...";
//}           
         $content_image = str_replace('class="', 
'class="media-object ', $content_image);
          $link = $item->link;  
          $pubdate = $item->pubDate; 
          $pubMonth = substr($pubdate, 8, 3);            
          $pubDay = substr($pubdate, 5, 2);

             /*Display items*/ 
            $output= "<div class='row'>
<div class='col-md-3'>";                                   

            $output = $output . 
                "           <a href='". $link ."'>" 
                 . $content_image[0]  . 
                "               </div>
                <div class='col-md-9'><span class='news-headline' style='vertical-align:top;'>" . $title . "</span>
                            </a>" . "
                          
                       <p class='news-blurb'>" . $desc . "</p>
                       </div>
</div>
 <hr />";                    


            echo $output;
            $count++;             
    }
}

这是描述标签,简而言之:

<description><![CDATA[<img width="150" height="150" src="http://placehold.it/150.150" class="attachment-thumbnail size-thumbnail wp-post-image" alt="" />news article description here [...]]]></description>

请帮忙!这是我想要学习的语言,但我还有很长的路要走。我所知道的是我需要从$ desc中过滤内容。但我不知道怎么做。

答案

preg_replace("/<img[^>]+>/i", "", $desc);线后尝试$desc = $item->description;

以上是关于从RSS Feed中删除图像将Feed添加到其他站点时的说明的主要内容,如果未能解决你的问题,请参考以下文章

是否有任何其他技术可以用来替代 rss feed 联合技术?

从 flickr JSON rss feed 获取所有图像尺寸

如何从 rss feed windows 10 获取图片文章

RSS Feed中的图像

Logstash RSS Feed(重复数据删除并提取某些数据)

有没有办法将https-rss源添加到Outlook 2013(Windows)?