WordPressの固定ページや投稿など、post毎にwpautopを無効にする。

すべてのpostで、wpautopを無効にするならば、functions.phpに以下のコードを書けばよい。

add_action('init', function() {
	remove_filter('the_excerpt', 'wpautop');
	remove_filter('the_content', 'wpautop');
});
add_filter('tiny_mce_before_init', function($init) {
	$init['wpautop'] = false;
	$init[‘apply_source_formatting’] = true;
	return $init;
});

しかし、すでに運用を開始して期間の経ったブログだと、自動整形ありきで作成されたpostがあるわけで、簡単にはwpautopを無効にすることはできない。

以前は、プライム・ストラテジー摘要のプラグインで「PS Disable Auto Formatting」があったが、このプラグインは、wpautopを無効にする前に、既存の自動整形ありきで作成されたpostのコードを、一括で整形してデータベースに保存するという仕様だったので、結構なリスクがあった。

実際、クライアントの使用においては、wpautopが有効でいいわけで、製作者側が凝ったレイアウト等で、HTMLコードで編集をする場合に問題があるので、wpautopを無効にしたいわけだ。

だから、投稿や固定ページなどpost毎に無効にできると便利がいいわけである。

それで、そのようなプラグインがないかとぐぐったら、これですね!