2013-09-28 30 views
0

我正在運行社交網絡,現在我的search.php顯示了人員和標籤的結果。我如何添加RSS Feed?我擁有一個博客,我想將我的RSS Feed添加到搜索中,以便每當有人搜索一個主題時,它就會顯示在搜索頁面上。如何給我的Search.php文件添加一個RSS訂閱源?

這裏的代碼的search.php:

$feed = new feed(); 
$feed->db = $db; 
$feed->url = $CONF['url']; 

if(isset($_SESSION['username']) && isset($_SESSION['password']) || isset($_COOKIE['username']) && isset($_COOKIE['password'])) {  
    $verify = $loggedIn->verify(); 

    if($verify['username']) { 
     $feed->user = $verify; 
     $feed->username = $verify['username']; 
     $feed->id = $verify['idu']; 

     if(isset($_GET['tag'])) { 
      $skin = new skin('shared/top'); $top = ''; 

      $TMPL['theme_url'] = $CONF['theme_url']; 
      $TMPL['private_message'] = $verify['privacy']; 
      $TMPL['avatar'] = $verify['image']; 
      $TMPL['url'] = $CONF['url']; 

      $top = $skin->make(); 
     } 
    } 
} 

$feed->per_page = $settings['perpage']; 
$feed->time = $settings['time']; 
$feed->censor = $settings['censor']; 
$feed->smiles = $settings['smiles']; 
$feed->c_per_page = $settings['cperpage']; 
$feed->c_start = 0; 
$feed->l_per_post = $settings['lperpost']; 

$TMPL_old = $TMPL; $TMPL = array(); 
$skin = new skin('shared/rows'); $rows = ''; 

if(empty($_GET['filter'])) { 
    $_GET['filter'] = ''; 
} 

// Allowed types 
if(isset($_GET['tag'])) { 
    // If the $_GET keyword is empty [hashtag] 
    if($_GET['tag'] == '') { 
     header("Location: ".$CONF['url']."/index.php?a=welcome"); 
    } 
    $hashtags = $feed->getHashtags(0, $settings['qperpage'], $_GET['tag'], null); 
    $TMPL['messages'] = $hashtags[0]; 
} else { 
    // If the $_GET keyword is empty [user] 
    if($_GET['q'] == '') { 
     header("Location: ".$CONF['url']."/index.php?a=welcome"); 
    } 
    $TMPL['messages'] = $feed->getSearch(0, $settings['qperpage'], $_GET['q'], $_GET['filter']); 
} 
$rows = $skin->make(); 

$skin = new skin('search/sidebar'); $sidebar = ''; 

if(isset($_GET['tag'])) { 
    $TMPL['trending'] = $feed->sidebarTrending($_GET['tag'], 10); 
} else { 
    $TMPL['genre'] = $feed->sidebarGender($_GET['filter'], $_GET['q']); 
} 
$TMPL['ad'] = generateAd($settings['ad6']); 

$sidebar = $skin->make(); 

$TMPL = $TMPL_old; unset($TMPL_old); 
$TMPL['top'] = $top; 
$TMPL['rows'] = $rows; 
$TMPL['sidebar'] = $sidebar; 

if(isset($_GET['logout']) == 1) { 
    $loggedIn->logOut(); 
    header("Location: ".$CONF['url']."/index.php?a=welcome"); 
} 

$TMPL['url'] = $CONF['url']; 

if(isset($_GET['tag'])) { 
    $TMPL['title'] = '#'.$_GET['tag'].' - '.$settings['title']; 
} else { 
    $TMPL['title'] = $LNG['title_search'].' - '.$_GET['q'].' - '.$settings['title']; 
} 

$skin = new skin('shared/timeline_x'); 
return $skin->make(); 

請幫助:)

+0

沒有什麼比它更好的了,它只是一個頁面輸出的格式,用於其他程序的加載。你需要知道的唯一事情就是格式,一個快速的網絡搜索將會產生大量的文檔,以及許多簡化生成正確格式的庫。 – IMSoP

回答

-1

試試這個例子

<?php 

    $articles = $pages->find('blog')->children()->visible()->flip()->limit(10); 

    snippet('feed', array(
     'link' => url('blog'), 
     'items' => $articles, 
     'descriptionField' => 'text', 
     'descriptionLength' => 300 
    )); 

    ?> 

鏈接: 這是我們的飼料,這需要的主要環節訪客回到我們的網站。在這種情況下,我們希望他們回到我們的博客,所以我們使用url()輔助函數爲我們的博客構建一個url。

項目: 作爲我們飼料的項目,我們通過了我們在第一行中找到的一組$物品。源代碼片段會自動處理從這些$文章中獲取正確的信息(如標題,網址等)

descriptionField: 如果要顯示Feed中每個項目的說明,則需要指定一個字段,該字段在任何項目中都可用,並且應該用於說明。

descriptionLength: 這是描述將具有的最大字符數。摘錄由供稿片段自動生成。

+0

什麼是'snippet'?這個瘋狂的'$ pages'對象是什麼?你有沒有把它從教程中間掉下來?因爲在這裏沒有任何實際的代碼可以做任何事情。 – IMSoP

+0

啊,[是的,你確實](http://getkirby.com/blog/how-to-add-a-rss-feed)。這是一個用特定CMS構建RSS的教程,對於OP來說非常沒用。 – IMSoP

+0

此代碼不會幫助我,我仍然在學習PHP,但我知道足以顯示某些內容,如人員和標籤..我只需要弄清楚如何從我的博客添加我的RSS源並使其在搜索中顯示,我正在盡力自己實現它 – OfficialAkash