wackeyの“くらしメモ”と“しごとメモ”。そしてWebが好き

[Mu]ムジログ

WordPress

WordPressのRSSでエラー(08って制御文字ってなんやねん?)という時の対策方法

投稿日:

というわけで、こういうことがあった時は該当文字を削除するとかで対応しちゃうのですが、根本的な対策方法が無いのかな、と思って探してみました。

残念ながらsublime textとかでfeedで出力された内容を開いて治すという方法が主流の中こんな記事を見つけました。

うちのWordPressのRSSフィードでエラーが出るのはどう考えてもASCII制御文字が悪い!

はい、こういうソリューションを期待していました。

 

今回はfunctions.phpに以下のコードを追記しました。

function remove_ascii( $data ) {
$ascii = '/[\x08]/';
$data['post_content'] = preg_replace($ascii, '', $data['post_content']);
return $data;
}
add_filter( 'wp_insert_post_data' , 'remove_ascii' , 10, 1);
view rawWP Delete ASCII Code hosted with ❤ by GitHub

記事の保存前に該当する文字列を削除する処理を書き、wp_insert_post_dataでフックします。

というわけで、これを追加してみました。

他にも何かありそうなので、これで様子を見ます。

-WordPress

Copyright© [Mu]ムジログ , 2018 All Rights Reserved Powered by AFFINGER5.