使われているフィルタを調べる
- 2010年3月27日 (土) 23時00分
- カテゴリ : WordPress
本文中にURLを書いたら、なぜだか、変な改行が入ってしまう。
ちくしょう、なにが悪いのかしら。
DBにはキレイに登録されているから、出力時の問題だということは分かるのだが、どのタイミングで改行が紛れ込むのか、あちこちソースを追っかけても分からなかった。
んで結局、出力直前にフィルタの一覧を見たり、特定フィルタを外したりすることで原因を探るという方法をとってみた。
例) the_content に add されたフィルタを調べる。
調べた結果、謎の改行の原因は /wp-includes/media.php の function autoembed の働きによるものだった。
記事本文中にURLがある場合、それがYouTubeのようなメディアコンテンツかもしれない、もしそうなら再生画面でも出しましょうか、と勝手に心配してくれる機能があるらしい。
http://codex.wordpress.org/Embeds
いやいやいや、メディア設定なんて見たこともありませんでした。
悲惨だな悲惨だな悲惨だな~
ちくしょう、なにが悪いのかしら。
DBにはキレイに登録されているから、出力時の問題だということは分かるのだが、どのタイミングで改行が紛れ込むのか、あちこちソースを追っかけても分からなかった。
んで結局、出力直前にフィルタの一覧を見たり、特定フィルタを外したりすることで原因を探るという方法をとってみた。
例) the_content に add されたフィルタを調べる。
<pre>
<?php
//unset($wp_filter['the_content'][10]); // 優先度が 10 のやつを消したり
//remove_filter('the_content','indent_entry_body'); // 名前で消したり
//$wp_filter['the_content'] = array(); // いっそ全部消したりもしましたよ、えぇ
// 見て調べる
var_dump($wp_filter['the_content']);
?>
</pre>
<?php the_content(); ?>
調べた結果、謎の改行の原因は /wp-includes/media.php の function autoembed の働きによるものだった。
記事本文中にURLがある場合、それがYouTubeのようなメディアコンテンツかもしれない、もしそうなら再生画面でも出しましょうか、と勝手に心配してくれる機能があるらしい。
http://codex.wordpress.org/Embeds
Check the “Auto-embeds” check box in Administration > Settings > Media SubPanel.この機能をON (たぶんデフォルト) にしていると、なんでもないURLまでが解析処理にまわされて、その前後に改行が入っちゃうみたい。
いやいやいや、メディア設定なんて見たこともありませんでした。
悲惨だな悲惨だな悲惨だな~
コメント : 0件
トラックバック : 0件
- このページへのトラックバックURL
- http://www.sweetwarp.com/66.html/trackback
