MagpieRSSを使ってPHPで簡単に自ブログの記事を転載したいのですが、"<" ">"が省略されてしまいうまくHTMLコードが表示されません。
自鯖ではうまく表示されるのですがレンタルサーバーにアップするとうまく表示されません。
HTMLコードも吐き出せるようにしたいのですが、どのようにすればよいのでしょうか。
以下が現在のコードです。
<?php
define('MAGPIE_DIR', 'magpie/');
require_once(MAGPIE_DIR.'rss_fetch.inc');
define('MAGPIE_OUTPUT_ENCODING', 'UTF-8');
$num_items = 5;
$rss = fetch_rss( 'http://**********************/atom.xml');
$items = array_slice($rss->items, 0, $num_items);
$item = $rss->items[0];
$content = $item['atom_content'];
echo "<p>$content</p>\n";
?>
ネットで調べましたらサーバーによってはCDATAが無視されてしまうようですので以下のように変更してみましたが、解決できませんでした。
$rss = fetch_rss( 'http://**************************/atom.xml', NULL , LIBXML_NOCDATA);
どうぞ皆様ご指導よろしくお願い致します。
コメント(2件)
その1:
> 自鯖ではうまく表示されるのですが
このとき、Atomフィード "atom.xml" は自サーバにあるものを参照していますか? それともレンタルサーバにあるものを参照していますか?
その2:
参照したい "atom.xml" には、本当に CDATA 部分が記録されていますか? ブラウザで CDATA 部分は表示されますか?
その1
自鯖の場合もブログのサーバにあるatom.xmlを参照しています。ブログはbloggerを使っています。
その2
確認をしたら確かにCDATA部分がちゃんと記録されていないかもしれません。ソースをみたら>/span>.<br /><br />のようになっていました。