webコンテンツを徹底強化!WordPressサイト制作とプラグイン&テーマ情報・メンテ/エラー対応から、PHP/CSS/javascript、動画・音・イラスト等制作まで扱うコラム
マルチメディアコンテンツ制作読んどけ☆コラム

functions.phpエディットできない(orテーマファイル変更しない)場合の機能追加は?→Code Snippetsプラグインで

      2021/02/23

今回は、環境のせいで、WordPressのfunctions.phpエディットできない状況を、Code Snippetsプラグインで解決してみたいと思います。使い方によっては子テーマみたいにもできるかもしれません。さっそく内容を確認していきましょう。

WordPressプラグイン Code Snippetsとは?

functions.phpなどテーマファイルを変更せずに、PHPやCSS・JavaScript・HTML shortcodeなどを動かすことのできるプラグインです。公式での説明は『running them on your site just as if they were in your theme’s functions.php file.(まるでテーマファイルのfunctions.php内にあるように動かす)』とのこと。

環境によってfunctions.phpが変えられない場合などに、ちょっとした機能を追加するときは、特に役に立ちそうです。

管理人のサイトで、Code Snippetsプラグインが必要になった状況

先日このサイトで紹介した『microsoft AzureクラウドでWordPressのサイトをカンタンに立ち上げてみる』の件で、実際にサイト作りをしようとすると、『config.php設定により、テーマエディタ不可(外部リポジトリの時点で設定されていた)』というのがあり、細かく作ることができませんでした。functions.php編集やCSS編集できないのは、ガッツリカスタマイズ派にはかなり痛いといえます。

そこで、カスタムCSSやPHPコードを編集できるように、Code Snippetsプラグインを導入することにしました。WPのヘッダーで、バージョン情報とかいろんなものが出力されるのとかも気になっていましたし。

functions.phpやCSSが編集できない状況でも、Code Snippetsプラグインでカスタマイズしてみる事例

そういうわけで、functions.phpやCSSが編集できない状況でしたが、この状況をCode Snippetsプラグインでどうにかしてみましょう。

functions.phpでやるような形で、WPヘッダー内の余計なタグをカット

まず『functions.phpでやるような形でWPヘッダー内の余計なタグをカット』してみます。通常はこんな感じで、ヘッダーがごちゃごちゃしています。必要なものだけ出力できればいいかなというのが、人間の心理。

Code Snippetsプラグインをインストール・有効化して『add_new(スニペットの新規追加)』をします。名前はわかりやすいのをつけます。functions.phpでよくやる『WPヘッダー内の余計なタグを、remove_actionしてカット』というものです。php開始タグの後は、普通に書いていってokです。

スニペット編集画面の下のほうです。『Run snippet everywhere(どこでも)』『Only run in administration area(管理画面)』『Only run on site front-end(フロントエンド)』みたいな、適応範囲は設定する機会が多いかも。『Only run once』は、継続的に設置する機能とかには使わないでしょう。プログラムを書いて適応範囲や優先度を設定したら下のほうのボタンでセーブ(セーブと同時にアクティベートされてました)。

こんな感じで、よけいなタグをremove_actionするプログラムが適応され、ヘッダーがすっきりしました。

カスタムCSSを出力して、デザインをカスタマイズしてみる

デフォルトでリストにあった『Example CSS snippet』というのを使いました。しくみは『PHPを使って、wp_head内にカスタムCSSを出力』というシンプルなもの。とはいえ、テーマCSSを読み込んだ後に出力されるので、クラス上書きなどができます。管理画面では使わないので、『Only run on site front-end(フロントエンド)』で設定ok。

(そのほか)スニペットを個別にon/offするには

そのほか補足ですが、作ったスニペットを個別にon/offすることもできました。メニューの『Snippets』または『All Snippets』で一覧を表示。マテリアルデザインのcheckboxトグルスイッチみたいな部分を押してon/offを切り替えます。

あとがき・まとめ

  • WordPressは構築の環境によっては、functions.phpやCSSなどのテーマファイルを編集できないときがある
  • Code Snippetsプラグインを使うと、functions.phpやカスタムCSSみたいに使うことができる
  • 『全体に適応させる』や『フロントだけ適応させる』みたいなことも可能

まとめるとこんなところでしょうか。テーマのfunctions.phpやCSS自体は変えないので、場合によっては子テーマみたいに使えるかもしれません。テーマファイル編集できないけど、ちょっと凝ったカスタマイズをした場合は、検討したいプラグインです。


【カテゴリ】 - WordPressプラグイン情報
【タグ】 -

  関連記事

【WordPress】WP-Membersプラグインによる、会員向けコンテンツサイトの構築(カスタマイズ必須?)

今回は、現在管理人が検討している(まだ実装はしません)『WP-M ...

フロントの『aioseo-admin-bar-css』を出力しないようにしたい→ログイン時のみ出るようになっているので大丈夫です

今回はAll_in_One_SEO(WordPressプラグイン ...

管理画面からFTP操作『WP File Manager』~過去の脆弱性ver・機能・使用例(テーマ消えないなど)の紹介

今回はWordPressプラグイン情報です。都合によりFTPが使 ...

WordPressで車販売サイトが作れる『Car Dealer, Classifieds & Listing』・英語なのでネックも

今回は、もはや何でもある感じのWordPressプラグインで、『 ...

車・不動産・カタログなどに使えそう!WordPressコンタクトフォームにidやタイトルを渡して自動挿入させる方法

今回は、管理人が以前、お仕事でサイトを作ったときに使ったカスタマ ...

【WPプラグイン】Smart Custom FieldsとCustom Field Bulk Editorは相性悪い?(空リンク・真偽値フィールドに文字)

今回は、管理人がカスタムフィールド系の案件で使っているプラグイン ...

【WPプラグイン無しでサイト構築&表示を速く】Really Simple SSLって無効化して大丈夫?→設定しとけば大丈夫、ただし混在に注意

今回は『プラグイン干渉リスク低減や動作スピードアップ』のために、 ...