固定ページ編集時にテキストエディタに固定する方法

多言語対応サイトなどを制作する際、固定ページのコンテンツをテーマファイルではなく管理画面でコーディングする場合があります。

その際、投稿などでビジュアルエディターを使用し、その後固定ページを編集しようとすると、通常では前に使っていたエディターと同じものが初期表示されます。

管理画面でコーディングする場合はWordPressの自動補正機能など様々な機能が邪魔になることもあります。

今回は「管理画面で固定ページを編集する際、ビジュアルエディター使用不可、テキストエディターでの編集に固定」するためのコード例を以下に示します。

<?php
// functions.php に記載して使う

add_filter( 'user_can_richedit', 'disable_visual_editor_for_page' );
function disable_visual_editor_for_page( $default ) {
    global $post;
    if ( 'page' === $post->post_type ) {
        return false;
    }
    return $default;
}

add_filter( 'wp_default_editor', 'set_default_editor_for_page' );
function set_default_editor_for_page( $default_editor ) {
    global $post;
    if ( 'page' === $post->post_type ) {
        return 'tinymce';
    }
    return $default_editor;
}

2つのフックが重要で、
user_can_richeditでは固定ページの編集画面でのリッチエディタの使用を制限し、
wp_default_editorでデフォルトのエディタをテキストエディタを強制しています。

hookリンク