Dittoでちょっとハマった事がありました。
今まで気付かなかったのですが、DittoでRSSを生成するとき、タイトル部分に「…」があるとIEやOperaで開いたときにエラーになるようです。
IEの場合はこんな感じのエラーがでます。
「未定義のエンティティ ’hellip’ を参照します。」
どうやらタイトル部分の「…」が「…」に変換されているのが原因みたいです。
xmlはあまり詳しくないのでこれでいいのかわからないのですが、一応こんな感じで設定してみたらエラーが出なくなりました。
ちなみにDittoのバージョンは1.0.2です。
Dittoスニペットの以下のコード(真ん中くらい)
$header = '<?xml version="1.0" encoding="'.$modx->config['etomite_charset'].'" ?>'."\n".
// set ttl value
'<rss version="2.0">'."\n".
' <channel>'."\n".
' <title>'.$modx->documentObject['pagetitle'].'</title>'."\n".
を次のように変更する。
$header = '<?xml version="1.0" encoding="'.$modx->config['etomite_charset'].'" ?>'."\n".
// set &hellip
'<!DOCTYPE body [ '."\n".
'<!ENTITY hellip "…">'."\n".
']>'."\n".
// set ttl value
'<rss version="2.0">'."\n".
' <channel>'."\n".
' <title>'.$modx->documentObject['pagetitle'].'</title>'."\n".
今のところ問題ないようなのですが、こんな解決方法でいいのでしょうか…xmlに詳しい方がいたら突っ込みをお願いしたいところです。
あと、もしかしたら「…」以外にも同じような事になる文字があるかもしれないですね。