[WordPress] プラグイン不要!WordPressの自動整形を無効・解除する方法

  WordPress

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る
WordPress 自動整形 解除 無効

プラグインを使用してもWordPressの自動整形が無効・解除されないし、よく紹介されている方法でも無効・解除されない。そんな時に出会ったプラグインを使用しないWordPressの自動整形を無効・解除する方法をご紹介したいと思います。

WordPressの自動整形を無効・解除する方法

いくつかのプラグインを使用してもWordPressの自動整形が無効・解除されないし、プラグインよってはプラグインやテーマに悪影響を与えて、WordPressのダッシュボードとサイトに一切アクセスできなくなりました。また、よく紹介されているfunctin.phpに数行のコードを入力する方法でも無効・解除されませんでした。そんな時に出会ったプラグインを使用しないWordPressの自動整形を無効・解除する方法であるfunctin.phpに数行ではなく、しっかりとコードを挿入してWordPressの自動整形を無効・解除する方法についてご紹介したいと思います。

ビジュアルリッチエディターを使用しない設定

WordPressの投稿に使用する際に、「ビジュアルリッチエディター」と「HTMLコードエディター」をタブで選択をして投稿を行うと思います。ビジュアルリッチエディターはMicrosoft Office Wordのように文字を入力して、文字の大きさ・太さなどの装飾・デザインを行え、pタグやdivタグなどに触れたことがない方でも手軽に投稿を行えます。また、手動でpタグやdivタグなどを入力することに慣れている方は、HTMLコードエディターの方が扱いやすいと思います。

しかし、誤操作で「ビジュアルリッチエディター」と「HTMLコードエディター」のタブを切り替えてしまうと勝手に自動整形が入って自動保存されてしまうと思ってもいない文章構造になってしまいます。また、コードを入力する方にとってはpタグや改行タグの自動整形が厄介に感じる方も多いと思います。実際に使用しているとなんでもpタグでくくられてしますため、文章構造がめちゃくちゃになってしまうこともあります。

WordPress 自動整形 ビジュアルリッチエディター 個人設定
「ユーザー」⇒「あなたのプロフィール」⇒個人設定の「ビジュアルリッチエディターを使用しない」にチェックを入れるとビジュアルリッチエディターが非表示になり、HTMLコードエディターのみの使用となります。これにより、タブの切り替えによる自動整形がなくなります。

プラグインによる自動整形の解除・無効にする方法

自動整形の解除・無効にするプラグインを下記にご紹介したいと思います。もっとも多くの方に使用されているであろうプラグイン「PS Disable Auto Formatting」は、WordPressのpタグや改行タグの自動整形を停止して、自動整形する対象を自由に指定して、過去の投稿を一括して自動整形することもできます。

function.phpによる自動整形の解除・無効にする方法

全ての投稿の自動整形を解除・無効にする場合

全ての投稿の自動整形を解除・無効にする方法です。functions.phpに下記のコードを記述してください。

remove_filter(‘the_content’, ‘wpautop’); // 記事の自動整形を解除・無効にする
remove_filter(‘the_excerpt’, ‘wpautop’); // 抜粋の自動整形を解除・無効にする

固定ページのみ・単一記事のみの自動整形を解除・無効にする場合

固定ページの場合はpage.php、単一記事の場合はsingle.phpで自動整形を解除・無効にする方法です。page.php・single.phpに下記のコードを記述してください。

<?php remove_filter (‘the_content’, ‘wpautop’); ?> // <?php the_content(); ?>の前に入れる

functions.phpで自動整形を解除・無効にする方法です。functions.phpに下記のコードを記述してください。

add_filter(‘the_content’, ‘wpautop_filter’, 9);
function wpautop_filter($content) {
global $post;
$remove_filter = false;

$arr_types = array(‘page’); //自動整形を解除・無効にする投稿タイプを記述
$post_type = get_post_type( $post->ID );
if (in_array($post_type, $arr_types)) $remove_filter = true;

if ( $remove_filter ) {
remove_filter(‘the_content’, ‘wpautop’);
remove_filter(‘the_excerpt’, ‘wpautop’);
}
return $content;
 }

全体の自動整形を解除・無効にする場合

実際に使用している方法です。全体の自動整形を解除・無効にする方法です。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'] = ture;
	return $init;
});

コードを入力するので実際にこの方法を使用しています。他の方法では私の使っているプラグイン・テーマでは、自動整形を解除・無効にすることができませんでしたが、多くの方がプラグインで解決しているようです。よかったら参考にしていただければと思います。

SNSでもご購読できます。

コメント

コメントを残す

*