当前位置: 首页>>代码示例>>PHP>>正文


PHP SimplePie::get_feed_link方法代码示例

本文整理汇总了PHP中SimplePie::get_feed_link方法的典型用法代码示例。如果您正苦于以下问题:PHP SimplePie::get_feed_link方法的具体用法?PHP SimplePie::get_feed_link怎么用?PHP SimplePie::get_feed_link使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SimplePie的用法示例。


在下文中一共展示了SimplePie::get_feed_link方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: parse

 function parse($caching = true)
 {
     $feed = new SimplePie();
     $feed->feed_url($this->uri);
     $feed->cache_location(SIMPLEPIE_CACHE_DIR);
     $feed->enable_caching($caching);
     // parse
     $parse_result = @$feed->init();
     if ($parse_result === false) {
         trigger_error("FeedParser::parse(): Failed to parse feed. uri: {$this->uri}", E_USER_NOTICE);
         return false;
     }
     $feed->handle_content_type();
     $link = $feed->get_feed_link();
     $channel = array('title' => $feed->get_feed_title(), 'link' => $link, 'uri' => $this->uri, 'last_modified' => SimplePie_Sanitize::parse_date($feed->data['last-modified']), 'description' => $feed->get_feed_description());
     // url
     $url = new Net_URL($feed->get_feed_link());
     $items = array();
     $feed_items = @$feed->get_items();
     if (is_array($feed_items)) {
         foreach ($feed_items as $item) {
             // category
             $categories = $item->get_category();
             if ($categories != '') {
                 $category = split(" ", $categories);
                 $category = array_trim($category);
             } else {
                 $category = '';
             }
             // author
             $author = '';
             if (is_array($authors = $item->get_authors())) {
                 $men = array();
                 foreach ($item->get_authors() as $man) {
                     $men[] = $man->get_name();
                 }
                 $author = join(', ', $men);
             }
             // description
             $description = $item->get_description();
             if (empty($description)) {
                 $description = '';
             }
             $items[] = array('title' => $item->get_title(), 'uri' => $item->get_permalink(), 'description' => $description, 'date' => $item->get_date('U'), 'author' => $author, 'category' => $category);
         }
     }
     $this->data = array('channel' => $channel, 'items' => $items);
     $this->parser =& $feed;
     unset($feed);
     return true;
 }
开发者ID:komagata,项目名称:plnet,代码行数:51,代码来源:FeedParser.php

示例2: kingRssOutput

function kingRssOutput($data)
{
    $feed = new SimplePie();
    $feed->feed_url($data['rss_url']);
    $path = explode($_SERVER["SERVER_NAME"], get_bloginfo('wpurl'));
    $feed->cache_location($_SERVER['DOCUMENT_ROOT'] . $path[1] . "/wp-content/cache");
    if (!empty($data['cache_time'])) {
        $feed->max_minutes = $data['cache_time'];
    }
    if (!empty($data['nosort'])) {
        $feed->order_by_date = false;
    }
    if (!empty($data['stripads'])) {
        $feed->strip_ads(1);
    }
    $feed->bypass_image_hotlink();
    $feed->bypass_image_hotlink_page($path[1] . "/index.php");
    #if images in feed are protected
    $success = $feed->init();
    if ($success && $feed->data) {
        $output = '';
        $replace_title_vars[0] = $feed->get_feed_link();
        $replace_title_vars[1] = $feed->get_feed_title();
        $replace_title_vars[2] = $feed->get_feed_description();
        $replace_title_vars[3] = $data['rss_url'];
        $replace_title_vars[4] = get_settings('siteurl') . '/wp-content/plugins/king-framework/images/rss.png';
        if ($feed->get_image_exist() == true) {
            $replace_title_vars[5] = $feed->get_image_url();
        }
        $search_title_vars = array('%link%', '%title%', '%descr%', '%rssurl%', '%rssicon%', '%feedimg%');
        #parse template placeholders
        $output .= str_replace($search_title_vars, $replace_title_vars, $data['titlehtml']);
        $max = $feed->get_item_quantity();
        if (!empty($data['max_items'])) {
            $max = min($data['max_items'], $feed->get_item_quantity());
        }
        for ($x = 0; $x < $max; $x++) {
            $item = $feed->get_item($x);
            $replace_vars[0] = stupifyEntities($item->get_title());
            $replace_vars[1] = $item->get_permalink();
            $replace_vars[2] = $item->get_date($data['showdate']);
            $replace_vars[3] = stupifyEntities($item->get_description());
            if ($item->get_categories() != false) {
                $categories = $item->get_categories();
                $replace_vars[4] = implode(" | ", $categories);
            }
            if ($item->get_author(0) != false) {
                $author = $item->get_author(0);
                $replace_vars[5] = $author->get_name();
            }
            # cut article text to length ... do the butcher
            if (!empty($data['shortdesc'])) {
                $suffix = '...';
                $short_desc = trim(str_replace("\n", ' ', str_replace("\r", ' ', strip_tags(stupifyEntities($item->get_description())))));
                $desc = substr($short_desc, 0, $data['shortdesc']);
                $lastchar = substr($desc, -1, 1);
                if ($lastchar == '.' || $lastchar == '!' || $lastchar == '?') {
                    $suffix = '';
                }
                $desc .= $suffix;
                $replace_vars[3] = $desc;
            }
            $search_vars = array('%title%', '%link%', '%date%', '%text%', '%category%', '%author%');
            #parse template placeholders
            $output .= str_replace($search_vars, $replace_vars, $data['rsshtml']);
        }
    } else {
        if (!empty($data['error'])) {
            $output = $data['error'];
        } else {
            if (isset($feed->error)) {
                $output = $feed->error;
            }
        }
    }
    return $output;
}
开发者ID:schorsch,项目名称:wordpress-king,代码行数:77,代码来源:king-rss.php


注:本文中的SimplePie::get_feed_link方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。