WordPress管理画面からテーマとプラグインエディターを無効にする方法

WordPressには組み込みのテーマエディターとプラグインエディターが付属していることをご存知でしたか?このプレーンなコードエディターを使用すると、WordPressダッシュボードから直接テーマファイルやプラグインファイルを編集できます。

これは非常に役立つように聞こえるかもしれませんが、このようにファイルを直接編集できる機能を解放すると、サイトが破損するなどの問題が発生する可能性があることがわかっています。他の脆弱性と組み合わせると、潜在的なセキュリティ上の問題を引き起こす可能性さえあります。

この記事では、WordPress管理エリアからテーマとプラグインエディターを無効にする方法を示し、それが賢明なアイデアである理由を説明します。

WordPress管理画面でテーマとプラグインエディターを無効にする

WordPressでテーマとプラグインエディターを無効にする理由

WordPressには、管理エリアから直接WordPressのテーマやプラグインファイルを編集できる、組み込みのコードエディターが付属しています。

テーマエディターは、外観 » テーマファイルエディターページにあります。デフォルトでは、現在アクティブなテーマのファイルが表示されます。

WordPressのテーマファイルエディター

同様に、プラグインエディターは プラグイン » プラグインファイルエディター ページで確認できます。デフォルトでは、サイトにインストールされているプラグインのうち、アルファベット順で最初に来るものが表示されます。

WordPressのプラグインファイルエディター

テーマまたはプラグインエディターページを初めて訪れると、WordPressはエディターの使用がウェブサイトを破損する可能性があるという警告を表示します。

WordPressのテーマエディタに関する警告

WordPress 4.9では、テーマとプラグインのエディタがアップグレードされ、ユーザーが誤ってウェブサイトを壊してしまうのを防ぐようになりました。ほとんどの場合、エディタは致命的なエラーを検出し、変更を元に戻します。

ただし、これは保証されておらず、一部のコードがまだ通過してしまう可能性があり、結果としてWordPress管理エリアへのアクセスを失うことになります。

内蔵ファイルエディターの最大の欠点は、ウェブサイトにどんな種類のコードでも追加できる完全なアクセス権を与えてしまうことです。

ハッカーがWordPress管理エリアに侵入した場合、内蔵エディターを使用してWordPressのすべてのデータにアクセスできます。

ハッカーは、マルウェアを配布したり、WordPressウェブサイトからDDOS攻撃を開始したりするためにもそれを使用できます。

WordPressのセキュリティを向上させるために、組み込みのファイルエディターを完全に削除することをお勧めします。

それでは、WordPressでテーマとプラグインエディターを簡単に無効化する方法を見てみましょう。

WordPressでテーマとプラグインエディターを無効にする方法

WordPressでテーマエディターとプラグインエディターを無効にするのは非常に簡単です。しかし、WordPressにコードを追加する必要があります。まだ行ったことがない場合は、WordPressにウェブ上のスニペットを貼り付ける方法に関するガイドをご覧ください。

テーマのfunctions.phpファイル、サイト固有のプラグイン、またはコードスニペットプラグインを使用して、このコード行を追加する必要があります。

define( 'DISALLOW_FILE_EDIT', true ); 

無料で使いやすく、万が一問題が発生してもウェブサイトが壊れることがないため、WPCodeプラグインの使用をお勧めします。

WPCodeのホームページ

注意: WPCodeのプレミアムバージョンもあり、コードリビジョン、自動変換ピクセル、スケジュールされたスニペットなどの高度な機能が付属しています。

まず、無料のWPCodeプラグインをインストールして有効化する必要があります。詳細な手順については、WordPressプラグインのインストール方法に関するガイドを参照してください。

プラグインを有効化したら、WordPressダッシュボードから コードスニペット » スニペットを追加 に移動します。

次に、「カスタムコードを追加(新しいスニペット)」オプションにマウスカーソルを合わせ、「+カスタムスニペットを追加」ボタンをクリックします。

WPCodeでカスタムコードを追加する

次に、スニペットのコードタイプを選択するように求められます。「PHPスニペット」オプションを選択してください。

コードの種類としてPHPスニペットを選択

その後、スニペットにタイトルを付け、「コードプレビュー」ボックスに上記のコードを貼り付けることができます。

コードスニペットをWPCodeに貼り付ける

最後に、スイッチを「非アクティブ」から「アクティブ」に切り替え、「スニペットを保存」ボタンをクリックするだけです。

カスタムコードスニペットを有効化して保存する

これで、プラグインとテーマのエディターはWordPress管理画面のテーマとプラグインのメニューから消えます。

代わりに、wp-config.phpファイルを編集し、「これで編集は完了です。ハッピーパブリッシング」という行の直前に上記のコードを貼り付けることもできます。

次に、変更を保存して、ファイルをウェブサイトにアップロードし直します。

ファイルを直接編集したくない場合は、Sucuri WordPressプラグインをインストールできます。このプラグインはワンクリックで強化機能を提供します。

WordPressテーマとプラグインファイルを編集する適切な方法

多くのユーザーは、WordPressのテーマやプラグインエディターを使用してコードを確認したり、カスタムCSSを追加したり、子テーマのコードを編集したりしています。

テーマにカスタムCSSのみを追加したい場合は、外観 » カスタマイズにあるテーマカスタマイザーを使用して行うことができます。

テーマカスタマイザー経由でカスタムCSSを追加する

詳細については、サイトを壊すことなくWordPressにカスタムCSSを追加する方法に関するガイドをご覧ください。

プラグインのコードを確認したい場合は、FTPクライアントを使用することで行うことができます。

ファイル管理とシンタックスハイライトを改善するために、コンピュータでWordPressファイルを編集するためのコードエディターのいずれかを使用できます。

最後になりましたが、コードを書かずにカスタムWordPressテーマを作成することもできます。

この記事が、WordPress管理画面からテーマとプラグインのエディターを簡単に無効にする方法を学ぶのに役立ったことを願っています。また、WordPressのパフォーマンスと速度を向上させるための究極ガイドや、最適なWebデザインソフトウェアの専門家によるおすすめもご覧になりたいかもしれません。

この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterFacebookでもフォローできます。

開示:当社のコンテンツは読者によってサポートされています。これは、当社のリンクの一部をクリックすると、当社が手数料を得る可能性があることを意味します。WPBeginnerがどのように資金提供されているか、それがなぜ重要か、そしてどのように私たちをサポートできるかについては、こちらをご覧ください。当社の編集プロセスはこちらです。

究極のWordPressツールキット

無料のツールキットにアクセスしましょう - すべてのプロフェッショナルが持つべきWordPress関連の製品とリソースのコレクションです!

読者とのインタラクション

33 CommentsLeave a Reply

  1. セキュリティ上の理由と、プラグインやテーマが意図したとおりに機能するようにするため、これは必須の調整です。
    私のクライアントのほとんどは技術的な背景を持たず、このようなことはしませんが、そもそもそのような変更を許可しないのは賢明な考えです。
    この簡単なステップガイドに感謝します。

  2. チュートリアルありがとうございます。wp-config.phpファイルを使用しましたが、うまくいきました。特に顧客サイトにとっては、サイトのコードを変更させないという点で、またセキュリティの観点からも、このオプションは非常に良いと思います。

    最終的に、wp-configファイルを主に選択したのは、管理画面からこの機能を簡単に無効化できないようにするためです。私にはそれは意味がありませんでした。

  3. これは最近では何も達成できません。
    1) CODE SNIPPETS ソリューションを使用した場合、ハッカーが管理パネルにアクセスできる場合、彼らは単にCODE SNIPPETSパネルに移動してスニペットを無効にするでしょう。

    2) 同様に、wp-configファイルに追加した場合、管理パネルにアクセスできる人がコードスニペットプラグインをインストールして有効にし、次のようなルールを設定できない理由がわかりません。

    define( ‘DISALLOW_FILE_EDIT’, true );

    ハッカーが管理パネルにアクセスできる場合、この問題に対する解決策は全くないように思えます。

    同意しない場合は、その理由を説明してください。私のログインは100%健全に見えます。

    • サイトに管理者レベルのアクセス権がある場合、問題を回避するためのプラグインを追加することを検討できます。これらのサイトセクションにアクセスできる他のユーザーロールがありますが、プラグインを追加する能力はありません。これにより、このレベルのアクセス権を持つ非管理者がファイルにアクセスするのを防ぐことができます。

      管理者

  4. こんにちは!私は逆の問題を抱えています。エディタにCSSコードを追加する必要がありますが、エディタが消えてしまいました。
    何か提案はありますか?
    どうもありがとうございます。
    よろしくお願いします。

  5. すべてのヒントと役立つアドバイスをありがとうございます。行き詰まったときに参照するのに最適です。ありがとうございます。

  6. 残念ながらこれは私にはうまくいきません。wp-config.phpファイルを更新しましたが、wpダッシュボードのエディタオプションはまだ表示されています。何か提案してもらえますか?

    • Rajさん、こんにちは。

      同じ問題がありましたが、解決できました。これがあなたの問題と同じかどうかはわかりませんが、インターネット上の投稿からコピー&ペーストすると、シングルクォーテーション(‘ ‘)やダブルクォーテーション(” “)が、まっすぐな引用符ではなくカーリークォーテーションになることがあることに気づきました。シングルクォーテーションを削除して、再度入力してみてください。

      お役に立てば幸いです!

      -デイブ

  7. 全てに保存オプションを無効にすることは可能ですか?クライアントにコントロールパネルを見せたいのですが、変更を保存してほしくありません。

  8. トライリオン(数えきれないほど)の感謝を!!

    この小さなコードが私の世界を変えました!

    今までどうしてあなたに出会えなかったんだろう??

    笑顔でいてね – Bella

  9. こんにちは
    テーマエディターのPHPファイルで、ペーストコマンド(マウスとCtrl+V経由)を無効にしたいです。外部からコードをコピーせずにコードを書きたいからです。手動でのコード入力を許可したいです。助けてください。

  10. define(‘DISALLOW_FILE_EDIT’, true); この関数は、WordPressにコードを貼り付けた場合にthemes/functions.phpで機能します

  11. こんにちは、アクセスなしでこれを回避する方法を見つけた人はいますか?ウェブサイトのセットアップに1800ドルを支払ったのですが、それは変更されていないテーマであり、エディターのロックを解除するためにもっと支払うように求めています。
    助けてください!!

      • こんにちは。昨日、誰かが私のウェブサイトにMonsterInsightsプラグインをインストールしてハッキングされました。しかし、あなたが提案したコード行はすでにwp-configにインストールされていました。
        これらの停止のための何か提案はありますか?
        よろしくお願いします。

        • グラハムさん、こんにちは。

          ウェブサイトがハッキングされた可能性があると思われる場合は、ハッキングされたWordPressサイトを復旧する方法に関するガイドをご覧ください。将来的には、ウェブサイトを保護するために、完全なWordPressセキュリティガイドに従うことも検討してください。

  12. define( ‘DISALLOW_FILE_EDIT’, true );

    これはページ全体のエディターを無効にします。ホームページと特定のユーザー(例:エディター)のみ無効にする必要があります。ページビルダーを使用しているためです。クライアントはそれを見たくありません。

    どなたか助けていただけますか….

  13. このコードをサイト固有のプラグインに追加しても機能することを確認できます。そのレシピもここWPBeginnerで見つけることができます…

    …というわけで、皆さん、すべてに感謝します!

  14. こんにちは!私のずる賢い開発者がこれを私にしてしまい、アクセスが必要です…FTPアクセスなしでこの巧妙なトリックを「元に戻す」方法はありますか?

    私も開発者で、問題なくファイルを編集できますが、契約した開発者はコードにアクセスするために私に料金を請求したいと考えています…なので、何とか自分でできる方法を探しています!

    Mel

    • 「すべての成果物」を契約しましたか?もしそうなら、FTPパスワードを彼に引き渡すように要求してください。それは成果物です。(契約なので、裁判所によって強制力があります。特定の行動を訴えることはできないかもしれませんが、別の開発者に古いサイトと全く同じ新しいサイトを作成させるのにかかる費用を訴えることはできます。それはおそらく既存の開発者を破産させるでしょう。そうすれば、彼はすべてを引き渡すことに積極的になるでしょう。)

      契約に「すべての納品物」が含まれていなかった場合、または署名された契約がない場合は、安価な法的レッスンだと考えてください。(法科大学院はもっと費用がかかります。)

      • 素晴らしいヒントです。
        特定の投稿(ページ)タイプに対して特定の(例えばElementorのような)エディターを無効にする方法はありますか?ただし、クラシックエディターへのアクセスは許可したままにしたいです。
        子テーマのfunctions.phpファイルで実現できることを願っています。

  15. この投稿を読んでいる間、なぜ誰もWordPress管理画面でエディターリンクを非表示にしたいと思うのだろうかと思っていました。なぜなら、それらのリンクにアクセスできるのは管理者だけであり、彼らが必要なことを行う許可を得られない場合、何の意味があるのだろうか?クライアントのためにブログを設定している場合に役立つことを理解しました。良いヒントをありがとう。

  16. これは素晴らしいヒントです。私のtwentytwelve-child-themeフォルダのfunctions.phpファイルにこの行を追加したところ、うまくいきました。テーマのカスタマイズ(ヘッダー、背景など)のオプションはまだ表示されますが、「エディター」のリンクは消えました。(それらを消すためにCTRL-Rを押してページを強制的に再読み込みする必要がありました。)

    クライアントが触るべきではないバックエンドのものはすべて削除するように努めていますが、プラグインとテーマのエディターはまさに破滅を招きます! 1行のコードでそれらを削除できるのは素晴らしいことです…

    単に別のプラグインを推奨するのではなく、子テーマのfunctionsやファイルを編集して何かを達成するこれらのヒントに本当に感謝しています。ただし、これは「初心者向け」のことから少し外れていることは理解しています。

    もしあなたがこのリクエストをすでに千回受けていないなら、ハードコアな私たち向けに「WPAdvanced」サイトを立ち上げてくれると嬉しいです!

    • フィードバックありがとうございます、マークさん。はい、過去にもWPAdvancedのリクエストは受けています。今のところ、WPBeginnerの改善を続けることに注力しています(まだ完了していません)。

      -Syed

      管理者

  17. この手法で遭遇する問題は、古いプラグインのアップグレードもできなくなることです。これについて、wp-configファイルへの追加を無効にし、アップグレードしてからセキュリティ強化を元に戻す以外のアイデアはありますか?

  18. こんにちは、ヒントをありがとう、はい、functions.phpファイルで機能します。

    しかし、このコードは私のテーマオプションページを無効にしてしまいました :(…エディターだけを非表示にする別のコードはありますか、または非表示を避けるためにオプションページに入れるものはありますか?