WordPressのfunctions.phpファイルとは(徹底解説+役立つコード例)WordPressのfunctions.phpファイルについて大事なポイントと使い方をご紹介します。functions.phpに追加したい17の便利なコード例も扱います。
次
- WordPressのfunctions.phpファイルの役割
- functions.phpファイルを安全に扱う
- functions.phpファイル直編集に代わる選択肢
- WordPressのfunctions.phpファイルにアクセスする方法(2種類)
- WordPressのfunctions.phpファイルに追加したい便利なコード
- WordPressのfunctions.phpファイル整理ベストプラクティス
記事のPDF版をダウンロード
閉じる
WordPressのfunctions.phpファイルとは一体何なのか、それで何ができるのか…よくわからない。そんな方に向けての記事となります。
一言で言えば、WordPressのfunctions.phpは、サイトにコード(簡単に言えば機能)を追加できるファイルです。functions.phpファイルの仕組みを理解することで、より良いWordPressサイトを構築することができます。
今回は、WordPressのfunctions.phpファイルに焦点を当て、このファイルについて知っておきたい事柄を詳しく扱います。
functions.phpファイルについて理解を深めた後には、サイトのカスタマイズに便利な17のfunctions.phpコード例もご紹介します。
- WordPressのfunctions.phpファイルの役割
- functions.phpファイルを安全に扱う
- functions.phpファイル直編集に代わる選択肢
- WordPressのfunctions.phpファイルにアクセスする方法(2種類)
- WordPressのfunctions.phpファイルに追加したい便利なコード
- ブログ記事に最終更新日を表示する
- 特定のユーザーに対してWordPressのツールバーを無効化する
- RSSフィードに投稿が表示されるのを遅らせる
- RSSフィードから特定のカテゴリーを除外する
- WordPressのリビジョンを投稿タイプで制限する
- WordPressの検索機能を無効化する
- ショートコードを自作する(例:現在の年)
- 投稿タイトルでのショートコード利用を許可する
- ログインエラーの非表示でセキュリティ向上
- 抜粋の長さを変更する
- WordPressのバージョン番号を削除する
- WordPressのページネーションを設定する
- 検索一覧ページに表示する検索結果の数を変更する
- WordPressのRSSフィードにアイキャッチ画像を掲載する
- ファイルタイプ(例:SVG)のアップロードをサポート
- 非管理者向けWordPressアップデート通知を非表示にする
- JPEG自動画像最適化のレベルを変更する
- WordPressのfunctions.phpファイル整理ベストプラクティス
- まとめ
WordPressのfunctions.phpファイルの役割
WordPressのfunctions.phpは、サイトにカスタムコードを追加するのに使用できるテーマファイルです。これを使用して、サイトのさまざまな領域の機能を変更したり、サイトに新しいコンテンツやコードを追加したりすることができます。
WordPressのfunctions.phpファイルは、テーマに含まれているにもかかわらず、テーマのカスタマイズを行うだけにとどまりません。
プラグインの仕組みと同じように、サイトのあらゆる部分を調整することができます。
WordPressのfunctions.phpファイルを使ってできる一般的な調整の種類は以下の通りです。
- 検索結果ページに表示する記事の数や、サイトのRSSフィードに含めるコンテンツなど、WordPressの中核となる動作を調整
- ショートコードを自作
- 特定のページにライブチャットサービスのスクリプトを注入する、サイトのフッターを編集するなど、コンテンツやスクリプトを操作できる
とは言え、これは数多くの例の一部に過ぎません。
functions.phpファイルには、静的であるHTMLだけでなく、PHPコードを追加することができるため、可能性は無限大です。
WordPressのfunctions.phpファイルはどこにあるのか
WordPressのfunctions.phpファイルは、他のテーマファイルと一緒に、有効になっているテーマのフォルダに保存されます。このファイルを見つけるには、FTPまたはファイルマネージャーを使用してサーバーに接続し、…/wp-content/themes/[有効なテーマ名]/functions.phpを確認してみてください。
例えば、人気のテーマであるOceanWPを使用している場合、functions.phpファイルは…/wp-content/themes/oceanwp/functions.phpに配置されています。
functions.phpファイルを安全に扱う
WordPressのfunctions.phpファイルは、ウェブサイトにコードを追加する作業となるため、編集の際にはベストプラクティスに従うことが重要です。
カンマやアポストロフィの欠落など簡単なことでも、WordPressの真っ白画面のようなサイト上のエラーを引き起こすことがあります。
最近のWordPressのバージョンでは、「There has been a critical error on your website」というメッセージが表示されたり、変更を保存する前にPHPエラーのチェックが実施されたりするなど、エラーの処理が高いレベルに引き上げられています。
とは言え、問題が起こらないようにするために、常に以下のベストプラクティスに従うことをお勧めします。
ステージングサイトでfunctions.phpコードをテスト
functions.phpのコードを本番のWordPressサイトに追加する前に、まずステージング環境でテストすることをお勧めします。これにより、潜在的なエラーをチェックし、コードが意図したとおりに動作するかどうか確認することができます。
Info
ステージングサイトは、安全でプライベートなサンドボックス内にある、本番サイトのコピーです。これを使うことで、本番サイトでメンテナンスモードを使用することなく、変更内容をテストすることができます。
Kinstaでは、全てのプランで簡単に使えるワンクリックステージング環境をご用意しています。これはWordPress専用マネージドホスティングを使用するメリットの1つです。
他のサーバー(共用に代表されるレンタルサーバーなど)をご利用であれば、WordPressステージングサイトのセットアップに関するこちらの説明をご参照ください。
functions.phpに変更を加える前にバックアップ
ステージングサイトでのテストに加えて、本番サイトのfunctions.phpファイルにコードを追加する前に、本番サイトのバックアップを取ることをおすすめします。
これは、WordPressのファイルを編集する際に必ず実践しておくべき大事なベストプラクティスです。
コードに何か問題が発生した場合であっても、このバックアップを復元することで、即座にサイトを再稼働させることができます。
Kinstaでは毎日自動でサイトのバックアップが実行されます。また、いつでも手動で、バックアップを作成、復元することができます。他のサーバーをご利用であれば、WordPressサイトのバックアップを取る方法をご確認ください。
常に子テーマを介してfunctions.phpファイルを編集
WordPressのfunctions.phpファイルはWordPressテーマのコードの中にあるため、テーマを更新するとfunctions.phpファイルが上書きされてしまいます。
テーマのfunctions.phpファイルに加えた変更が上書きされるのを避けるため、常にWordPressの子テーマを使用し、子テーマのfunctions.phpファイルにコードを追加するようにしましょう。
子テーマを使用することで、必要に応じて親テーマを更新することができます。functions.phpにあるカスタマイズの内容が上書きされることはありません。
詳しくは、WordPressの子テーマを作成する方法をご覧ください。
functions.phpファイル直編集に代わる選択肢
WordPressのfunctions.phpファイルは、サイトにコードを追加する方法として有用ですが、ほとんどの状況で、functions.phpに代わる選択肢を利用することができます。
- コード管理プラグインの使用
- 自作プラグインにコードを格納する
これらの選択肢には、functions.phpファイルの利用を上回る利点がいくつかあります。
- テーマに縛られない:テーマを変更しても、functions.phpのカスタマイズがそのまま残ることになる。
- 整理しやすい :コードの整理がしやすいので、サイトに多くのコードを追加する予定がある場合に特に便利。
- 柔軟なコントロール:コード管理プラグインには、トグルボタンを使って有効/無効にしたり、フロントエンドまたはバックエンドでのみコードを実行したり、などの便利な機能がある。
コード管理プラグインを使用する
コード管理プラグインを導入することで、わかりやすいインターフェースを使って、functions.phpファイルに記述したいコードを簡単に追加・編集することができます。
人気の選択肢には、無料のCode Snippetsなどがありますが、他にも同様の機能を提供するプラグインはいくつもあります。
Code Snippetsを使えば、WordPress管理画面からfunctions.phpのコードを手間無く追加することができます。さらに以下の機能も搭載されています。
- タイトルと説明文を追加
- タグを使ってコードを整理
- コードをサイトの特定の部分でのみ実行
そして、すべてのコードを一覧で表示し、必要に応じて簡単に有効/無効を切り替えることができます。
Code Snippetsはプラグインなので、WordPressのテーマを変更しても、すべてのコードがそのまま残ります。
プラグインを自作する
WordPressのfunctions.phpファイルに触れる代わりに、コード格納用のプラグインを自作することもできます。
複雑そうに聞こえるかもしれませんが、実は意外と簡単です。
その仕組みは以下の通りです。
- ローカルコンピュータに、プラグイン用のフォルダを作成します。
- そのフォルダの中に1つの.phpファイルを作成し、好みのテキストエディターで編集します。
- そのファイルに、以下のコードテンプレートを(名前や説明などの情報を適宜変更して)追加します。
- functions.phpに利用したいコードをファイルに追加します。
<?php
/**
* Plugin Name: My Custom Code Snippets
* Description: コード格納用の自作プラグイン
* Author: あなたの名前
* Version: 1.0
*/
/* このコメントの下に最初のコードを追加し、コメントでその中身を説明 */
[CODE]
/* このコメントの下に2つ目のコードを追加 */
[CODE]
/* 必要であればそのまま続行 */
[CODE]
?>
あとは、WordPressにプラグインをインストールし、有効化するだけです。その方法を2つご紹介します。
- FTP/SFTPでサーバーに接続し、プラグインフォルダをwp-content/pluginsフォルダにアップロードしてください。その後、プラグイン一覧に移動し、プラグインを有効化してください。
- パソコンを使って、フォルダの.zipファイルを作成します。その後、「プラグイン」>「新規追加」で.zipファイルをアップロードして、他のプラグインと同じようにインストールします。
WordPressのfunctions.phpファイルにアクセスする方法(2種類)
WordPressのfunctions.phpファイルにアクセスし、編集する方法はいくつも考えられます。ここでは、どのホスト(サーバー/ホスティングサービス)でも使える、最も汎用性の高い方法を2つご紹介します。
- WordPress内蔵のテーマコードエディター
- SFTPと好みのコードエディター
1. WordPress内蔵のテーマコードエディター
WordPressのデフォルトでは、functions.phpファイルを含むテーマのすべてのコードをWordPress管理画面から編集できます。
- WordPress管理画面を開きます。
- 「外観」>「テーマファイルエディター」を開きます。
- 右側の「テーマファイル」一覧から、「テーマのための関数(functions.php)」ファイルを選択します。
- エディターを使って中身を編集します。
- 「ファイルを更新」ボタンをクリックし、変更を保存します。
とはいえ、セキュリティを高めるために、WordPress管理画面内でのファイル編集を無効にするという考え方もあります。それを選択するのであれば、次の方法でファイルを編集可能です。
2. SFTP+好みのコードエディター
WordPressのfunctions.phpファイルを編集する別の方法として、FTP/SFTPでサーバーに接続し、ファイルを編集することができます。
その方法は以下の通りです。
- FTPクライアントをまだダウンロードしていない場合はダウンロードします。ここではFileZilaを使用します。
- FTP認証情報を使用してサーバーに接続します。
- フォルダ構造を使って…/wp-content/themes/[有効なテーマ名]に移動します。
- functions.phpファイルを右クリックし「編集」を選択します。
これでファイルがローカルコンピューターにダウンロードされ、自動的にテキストエディターで開かれるはずです。そのまま、ファイルにコードを追加することができます。
終了したら、変更内容を保存して、ファイルを閉じます。
FileZillaのプロンプトで、編集したバージョンをサーバーに再びアップロードするかどうか尋ねられます。
WordPressのfunctions.phpファイルに追加したい便利なコード
WordPressのfunctions.phpファイルを編集する方法がわかったところで、サイトに追加できる便利なfunctions.phpコードをいくつかご紹介しましょう。
ブログ記事に最終更新日を表示する
デフォルトでは、ほとんどのテーマで、ブログ記事を公開した日付が表示されます。しかし、古いコンテンツを定期的に更新しリフレッシュしている場合には、最終「更新日」も表示するという手もあります(または、公開日を最終更新日に置き換える)。
これは、訪問者に対して、継続的にコンテンツを更新していることを知らせるだけでなく、コンテンツの鮮度をGoogleに示すことにもなります。
function show_last_updated( $content ) {
$u_time = get_the_time('U');
$u_modified_time = get_the_modified_time('U');
if ($u_modified_time >= $u_time + 86400) {
$updated_date = get_the_modified_time('F jS, Y');
$updated_time = get_the_modified_time('h:i a');
$custom_content .= '<p class="last-updated-date">Recently updated on '. $updated_date . ' at '. $updated_time .'</p>';
}
$custom_content .= $content;
return $custom_content;
}
add_filter( 'the_content', 'show_last_updated' );
詳しくは、WordPressの最終更新日表示についてのこちらの記事をご覧ください。
特定のユーザーに対してWordPressのツールバーを無効化する
WordPressのデフォルトの設定では、ユーザー権限を使用してログインしているすべてのユーザーにツールバーが表示されます。とはいえ、WooCommerceストアの場合のように、独自のユーザー権限を使用する際には、必ずしもそうとは限りません。
これを変更したい場合は、functions.phpのコードを使用して、特定のユーザー権限に対してWordPressツールバーを非表示にすることができます。
この例では、authorというユーザー権限を持つユーザーに対して、管理ツールバーを非表示にします。
add_filter( 'show_admin_bar', function( $show ) {
if ( current_user_can( 'author' ) ) {
return false;
}
return $show;
} );
RSSフィードに投稿が表示されるのを遅らせる
デフォルトでは、コンテンツが公開されるとすぐにRSSフィードに表示されます。これは、コンテンツスクレイピングにより(Googleが本来の記事をインデックスする前に)あなたのコンテンツがスクレイピングされ、望まないかたちでGoogleにインデックスされる事態につながる可能性があります。
自分のコンテンツが他人に盗用されるのを避けるために、RSSフィードでの投稿表示を遅らせることができます。
これでコンテンツスクレイピングを完全に阻止できるわけではありませんが、Googleがコンテンツをインデックスする時間を先に与えることができる、というわけです。
以下のコードにあるように、数字(この例では「30」)を、遅延させたい分数に変更してください。
function kinsta_delay_feed_content($where) {
global $wpdb;
if ( is_feed() ) {
// timestamp in WP-format
$now = gmdate('Y-m-d H:i:s');
// value for wait; + device
$wait = '30'; // integer
// http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_timestampdiff
$device = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
// add SQL-sytax to default $where
$where .= " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$now') > $wait ";
}
return $where;
}
add_filter('posts_where', 'kinsta_delay_feed_content');
RSSフィードから特定のカテゴリーを除外する
RSSフィードに表示されるコンテンツを遅延させるだけでなく、ブログ記事の特定のカテゴリをサイトのRSSフィードに表示しないようにすることも可能です。
これを実現するには、次のfunctions.phpコードを使用します。
function kinsta_exclude_category_rss($query) {
if ($query->is_feed) {
$query->set('cat','-38');
}
return $query;
}
add_filter('pre_get_posts','kinsta_exclude_category_rss');
例のカテゴリーID「38」を、除外したい実際のカテゴリーIDに置き換えてください(※マイナス記号を削除しないでください)。
IDの調べ方は以下の通りです。
- 「投稿」>「カテゴリー」で、サイト内の全カテゴリーを表示します。
- 除外したいカテゴリーの下にある「編集」をクリックします。
- ブラウザのアドレスバーでページのURLを見てください。カテゴリーIDは、「?taxonomy=category&tag_ID=」の後に来る数字です。
例えば、URLが「https://yoursite.com/wp-admin/term.php?taxonomy=category&tag_ID=38&post_type=post」であれば、カテゴリーIDは「38」となります。
WordPressのリビジョンを投稿タイプで制限する
サイトのデータベースを肥大化させないために、保存する投稿リビジョンの数を制限することができます。
WordPressの投稿リビジョンをサイト全体で制限するには、サイトのwp-config.phpファイルを編集する方法がありますが、ブログ記事やWooCommerce商品など、投稿タイプごとに異なるリビジョン数を保存するには、以下の方法が便利です。
functions.phpのコード編集で、これを実現することができます。投稿タイプ(この例では「post」)を制御したい実際の投稿タイプに、数字(この例では「5」)を保存したいリビジョンの数に変更してください。
function kinsta_post_revisions_by_type( $revisions, $post ) {
if( 'post' == $post->post_type ) {
$revisions = 5;
}
return $revisions;
}
add_filter( 'wp_revisions_to_keep', 'kinsta_post_revisions_by_type', 10, 2 );
*注)ifの直後にあるpostを編集してください。例えば、商品をターゲットにする場合、次のようになります。
if( 'product' == $post->post_type ) {
WordPressの検索機能を無効化する
検索機能を必要としないサイトの場合、悪用される可能性を防ぐために、WordPressの検索機能を無効にすることをお勧めします。
例えば、サイトに検索ボックスを表示せずとも、ボットがURLに?s=[検索語句]を追加することで、検索機能を利用可能です。
これを阻止するには、以下のコードを追加します。
function kinsta_disable_wp_search( $query, $error = true ) {
if ( is_search() ) {
$query->is_search = false;
$query->query_vars[s] = false;
$query->query[s] = false;
// to error
if ( $error == true )
$query->is_404 = true;
}
}
add_action( 'parse_query', 'kinsta_disable_wp_search' );
add_filter( 'get_search_form', create_function( '$a', "return null;" ) );
検索機能を直接使用しようとすると、404ページが表示されます。
ショートコードを自作する(例:現在の年)
WordPressのショートコードは、動的なコンテンツをサイトに埋め込むことができる、非常に便利なショートカットです。
多くのWordPressプラグインがショートコードを利用していますが、WordPressのfunctions.phpファイルとadd_shortcode()関数を使って、ショートコードを自作することも可能です。
例えば、よくある使用例として、現在の年を動的に表示するショートコードが挙げられます。これを使えば、毎年1月1日に手動で更新しなくても、すべてのコンテンツで自動的に現在の年を表示することができます。
上記のショートコードを作成には、次のコードを使用します。
function year_shortcode() {
$year = date('Y');
return $year;
}
add_shortcode('currentyear', 'year_shortcode');
そして、コンテンツに[currentyear]というショートコードを記述すると、自動で実際の年に置き換えられます(例:2023)。
投稿タイトルでのショートコード利用を許可する
デフォルトでは、WordPressの投稿のタイトルに記述されたショートコードは実行されません。WordPressの投稿タイトルでショートコードを使用するには、functions.phpファイルに簡単なコードを追加して、機能を有効化することができます。
例えば、先ほどのコードと組み合わせると、[currentyear]ショートコードを追加することで、投稿タイトルに現在の年を自動で表示することができます。
add_filter( 'the_title', 'do_shortcode' );
ログインエラーの非表示でセキュリティ向上
デフォルトでは、WordPressでのログインが失敗すると、それを説明するメッセージが表示されます。このメッセージは、特定のメールアドレスがあなたのサイトに登録されているかどうか(パスワードが間違っている場合でも)など、ある種の手がかりを示してしまいます。
潜在的な機密情報の漏洩を防ぐため、functions.phpファイルに以下のコードを追加することで、このエラーを隠すことができます。
function kinsta_hide_login_errors(){
return 'These are not valid credentials';
}
add_filter( 'login_errors', 'kinsta_hide_login_errors' );
これにより、デフォルトのログインエラーテキストが「These are not valid credentials(ログイン情報が有効ではありません)」に置き換えられます。
テキストはお好みで変更できますが、ダッシュやスラッシュなどの文字はエラーの原因になりますので、なるべく使わないようにしてください(※これらの文字を「エスケープ」する場合を除く)。
抜粋の長さを変更する
デフォルトでは、WordPressの抜粋は、記事の最初の55ワード(日本語では110文字)までの表示となっています。
これを調整するには、functions.php ファイルに以下のコードを追加します。
function kinsta_change_excerpt_length($length) {
return 90;
}
add_filter('excerpt_length', 'kinsta_change_excerpt_length');
上記のコードにより、抜粋の長さが90ワードに変更されます。別の数字がいい場合には、「90」の部分を変更してください。
WordPressのバージョン番号を削除する
悪意のある人がWordPressのバージョンを検知するのを難しくするために、WordPressのバージョン番号をサイトのフロントエンドのコードのどこにも表示しないようにすることもできます。
これを行うには、functions.phpファイルに以下のコードを追加します。
function kinsta_hide_version() {
return '';
}
add_filter('the_generator', 'kinsta_hide_version');
WordPressのページネーションを設定する
テーマでのページネーションの動作に満足できない場合には、functions.phpのコードでページネーションの動作を調整したり、独自のシステムを作成することができます。
このような調整に興味のある方は、WordPressのページネーションに関するこちらの記事(functions.phpのコード例あり)をご覧ください。
検索一覧ページに表示する検索結果の数を変更する
WordPressには、アーカイブページに掲載する記事の数をコントロールするオプションが用意されています(「設定」>「表示設定」)。
ただし、この方法では、すべてのアーカイブページの設定が変更されます。検索結果ページだけ別の数にするには以下の方法があります。
次のコードをfunctions.phpファイルに追加します。数字(この例では「12」)の部分を、実際に表示する1ページあたりの結果数に変更してください。
function kinsta_search_results_list() {
if ( is_search() )
set_query_var('posts_per_archive_page', 12);
}
add_filter('pre_get_posts', 'kinsta_search_results_list');
WordPressのRSSフィードにアイキャッチ画像を掲載する
RSSフィードのコンテンツにアイキャッチ画像を組み込むには、functions.phpファイルに次のコードを追加します。
function kinsta_featured_image_rss($content) {
global $post;
if ( has_post_thumbnail( $post->ID ) ){
$content = '<div>' . get_the_post_thumbnail( $post->ID, 'full', array( 'style' => 'margin-bottom: 15px;' ) ) . '</div>' . $content;
}
return $content;
}
add_filter('the_excerpt_rss', 'kinsta_featured_image_rss');
add_filter('the_content_feed', 'kinsta_featured_image_rss');
上記のコードで、フルサイズの画像が挿入されます。別のサムネイルサイズを使用するには、「full」を別のサムネイルサイズ(例:「large」または「medium」)に変更することができます。
ファイルタイプ(例:SVG)のアップロードをサポート
WordPressのデフォルトでは、SVGファイルなど特定のファイルタイプのアップロードがブロックされます。
特定のファイルタイプのサポートを有効にするには、WordPressのfunctions.phpファイルに次のコードを追加します。
function kinsta_myme_types($mime_types){
$mime_types['svg'] = 'image/svg+xml';
return $mime_types;
}
add_filter('upload_mimes', 'kinsta_myme_types', 1, 1);
このコードはSVGファイルのアップロードのみを有効にするものですが、必要に応じて他のファイルタイプも対応可能です。
非管理者向けWordPressアップデート通知を非表示にする
デフォルトでは、WordPressで新しいアップデートが利用可能になると、管理画面にアクセスできる全てのユーザーに対してメッセージが表示されます。
ユーザーの権限によってアップデートを実行できない場合でも、管理者にその旨を連絡するように指示が出されます。
これを調整するために、以下のコードを使用して、管理者以外のすべてのユーザーに対して通知を非表示にすることができます。
function kinsta_hide_update_nag() {
if ( ! current_user_can( 'update_core' ) ) {
remove_action( 'admin_notices', 'update_nag', 3 );
}
}
add_action('admin_menu','kinsta_hide_update_nag');
その他のバリエーションについては、「WordPressのアップデート通知を無効にする方法」をご覧ください。
JPEG自動画像最適化のレベルを変更する
この機能はあまり知られていませんが、WordPressに画像をアップロードすると、サイトのサムネイル作成のために、JPEG画像が自動で圧縮されます。
WordPress 4.5以降、デフォルトの画質レベルは82に設定されています(※100は圧縮ゼロになります)。
次のコードをfunctions.phpファイルに追加してください。数字(この例では「90」)を実際に使用したい品質レベルに変更してください。
add_filter( 'jpeg_quality', create_function( '', 'return 90;' ) );
WordPressのfunctions.phpファイル整理ベストプラクティス
WordPressのfunctions.phpファイルを使って、いくつかコードを追加するだけであれば、おそらく整理について心配する必要はないでしょう。
しかし、サイトに多くのコードを追加するとなると、functions.phpファイルの構成のベストプラクティスに従わないと、すぐに扱いにくく、複雑になってしまう可能性があります。
そこで、コードの整理についてのベストプラクティスを簡単にご紹介します。
コメントを追加して説明する
functions.phpファイルにコードを追加したときには、その役割、追加した理由がはっきりしているはずです。しかし、1年後にfunctions.phpファイルを見返したとき、頭を抱えることになるかもしれません。
これを避けるには、各コードにコメントを付けて、何ができるのか、そして、なぜ追加したのかを明確にしておきましょう。
コードに付すことのできるコメントは、WordPressでは実行されず、人間が読むためのものです。これによりコードの中身が一眼でわかります。
1行のコメントを追加するには、この形式を使用します。
// 1行のコメント
複数行のコメントでは、例えば以下のようになります。
/**
* 複数行にまたがるコメント開始
* 中段
* 最終行
*/
各コードの前にコメントを記述することで、その中身がはっきりします。
インクルードファイルに分離する
コードの量が増えた時には、functions.phpファイルだけを使うのではなく、別のファイルに保存する方法もあります。
そして、includeやrequireを使って、コードをfunctions.phpファイルに取り込むことができます。Mike Schinkel氏がStackExchangeで、すぐれた例を紹介しています。
(前述のように)functions.phpの代替案を活用する
functions.phpファイルが少しごちゃごちゃしてきたと感じたら、先に説明したfunctions.phpの代わりとなる術を選ぶとよいかもしれません。
例えば、無料のプラグイン「Code Snippets」を使用すると、コードを追加、それぞれにタイトルと説明を付けることができるので、整理が捗ります。また、タグを使ってコードを整理することも可能です。
まとめ
WordPressのfunctions.phpは、ウェブサイトにPHPコードを追加する際に活用できる、非常に大事なファイルです。
functions.phpファイルにコードを追加する際には、テーマ更新時に変更が上書きされないように、常に子テーマを使用するようにしてください。また、コードの追加前にサイトのバックアップを取り、可能な限りステージングサイトでテストすることをお勧めします。
functions.phpファイルを直に編集する代わりに、コードの管理に便利なプラグインのインストールや、コード格納用プラグインの自作などもご検討ください。
WordPressのfunctions.phpファイルの役割や使い方を理解することで、あらゆる種類の便利な機能を実装することができます。
上記のfunctions.phpの例は、あくまでも一部の例に過ぎません。いくらでも調整を加えることができます。