We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 28073
    • 164 Posts
    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 "&#8230;">'."\n".
    			']>'."\n".
    		// set ttl value
    			'<rss version="2.0">'."\n".
    			'	<channel>'."\n".
    			'		<title>'.$modx->documentObject['pagetitle'].'</title>'."\n".
    


    今のところ問題ないようなのですが、こんな解決方法でいいのでしょうか…xmlに詳しい方がいたら突っ込みをお願いしたいところです。
    あと、もしかしたら「…」以外にも同じような事になる文字があるかもしれないですね。