2011-11-07 86 views
0

我已創建RSS源,所有的事情是去工作運行良好{} PHP,但在這個XML代碼RSS提要,不能<description>標籤

<description><![CDATA[****no php is allowed here****]]></description> 

這裏是我的觀點,生成xml文件

<?php 
echo '<?xml version="1.0" encoding="utf-8"?>' . "\n"; 
?> 
<rss version="2.0" 
    xmlns:dc="http://purl.org/dc/elements/1.1/" 
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" 
    xmlns:admin="http://webns.net/mvcb/" 
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
    xmlns:content="http://purl.org/rss/1.0/modules/content/"> 

    <channel> 

    <title><?php echo $feed_name; ?></title> 

    <link><?php echo $feed_url; ?></link> 
    <description><?php echo $page_description; ?></description> 
    <dc:language><?php echo $page_language; ?></dc:language> 
    <dc:creator><?php echo $creator_email; ?></dc:creator> 

    <dc:rights>Copyright <?php echo gmdate("Y", time()); ?></dc:rights> 
    <admin:generatorAgent rdf:resource="http://www.codeigniter.com/" /> 

    <?php foreach($posts as $entry): ?> 

     <item> 

      <title><?php echo $entry->title_nw; ?></title> 
      <link><?php echo site_url('view=entry'.'&amp;'.'id=' . $entry->id_nw); ?></link> 
      <guid><?php echo site_url('blog/post/' . $entry->url_title); ?></guid> 

      <description><![CDATA[ 
     <?php character_limiter($entry->text_nw, 200); ?> 
     ]]></description> 
     <pubDate><?php echo $entry->date_nw;?></pubDate> 
     </item> 


    <?php endforeach; ?> 

    </channel></rss> 

請向下滾動,你可以看到這個代碼

 <description><![CDATA[ 
    <?php character_limiter($entry->text_nw, 200); ?> 
    ]]></description> 

這裏是概率說明這段代碼在描述標記中是不可接受的

+0

你說的「不能接受的」是什麼意思?不被誰接受? –

+0

我在Eclipse中編寫了這個代碼,當在這個代碼中寫入php時,它不會像PHP那樣渲染它,而是像一個簡單的文本一樣,當在瀏覽器中測試這個頁面時,它解析所有沒有描述的東西 – ahmedsaber111

+1

所以當你在啓用PHP的實時服務器上測試它?這將是非常奇怪的,我不認爲PHP解析器收聽CDATA標籤。 Hmmmm。 –

回答

1

IIRC character_limiter()不返回結果,只是返回它們。所以:

1)確保你已經加載在你的控制器文字助手調用該函數
2)儘量與前:

<description><?php echo htmlspecialchars(character_limiter($entry->text_nw, 200)); ?></description> 
+0

謝謝Pekka,Damien Pirsy 問題是我沒有在character_limiter之前寫回聲。現在一切都進展順利,謝謝你 – ahmedsaber111