WordPressサイトを制作する際の機能の追加は、基本的に以下の2通りに分かれます。
1. プラグインを利用
2. テンプレートファイルである「functions.php」ファイルに記載する
1の場合は「プラグインで運用したほうが簡単」「テーマ変更の際に左右されない」というメリットがあり、
一方で2では「余計なプラグインをインストールしなくていい」というメリットがあります。
どちらもメリット・デメリットがあるためどちらを選択するかは制作の際に予め決めておくことが必要となります。
ここでは、オリジナルテーマ制作をよく行っているhighfivecreateがWordPressサイト制作の際に、functions.phpによく記載する機能を一覧にまとめました。
※詳細項目が作成出来次第リンクします。
有効度が高いもの
- WPのバージョンやrel=“shortlink”、RSDなど勝手に表示される不必要な読込を非表示
- 非ログイン状態でのREST API エンドポイントを無効に namespaces で 例外を追加(例えばcontactform7の場合など)
- WPのjqueryは使わないでCDNを読み込む(ただし管理画面はWP側のjqueryをinclude) ※ローカルで動かない場合の変更方法も明記
- cssとjsを「wp_enqueue_scripts」「enqueue_style_script」にて読込 ※キャッシュ対策として更新日時のパラメータを付与
- WordPress4.2から利用可能になった絵文字を読込むscriptとstyleを無効化する
- 管理画面の固定ページのみビジュアルエディタ表示を無効
- 固定ページのみ自動的に付与されるpタグやbrタグを無効
- 管理画面にオリジナルのSEOセッティングができるフィールドを追加(Title, Keywords, Description, noindex)
- 管理者以外の管理画面の見せ方をカスタマイズ
- スラッグ名が日本語だったら自動的にid付与する
必要に応じて有効にするもの
- カスタムメニューの利用と登録(functions.phpとテンプレートファイルへの追加例)
- 親ページ/子ページ/孫ページをIDで指定する条件分岐
- body_classにページスラッグ名を含ませたりオリジナルのclassを追加
- 画像サイズ追加&管理画面から選べるようにカスタム
- アイキャッチ画像の利用とサイズ追加
- 一覧ページ等で、アイキャッチ画像がなかったら一番目の画像を取得し、さらに画像がなかったら定義した画像を表示
- phpファイルを読み込むショートコード
- ニュースカテゴリー(news)を読み込むショートコード
- カスタム投稿のパーマリンクをIDにする
- パスワード変更時にシステムからユーザーへ送られるメール本文を変更
※上記は参考であり、プラグイン利用を選択する場合もあり、また内容は随時変更されます