WordPress初心者でも安心!functions.phpの使い方と注意点

Contents
はじめに:functions.phpとは?
WordPressのテーマ制作やカスタマイズをしていると、よく登場する「functions.php(ファンクションズ・ピーエイチピー)」というファイル。
このファイルは「テーマ専用の設定や機能をまとめる場所」です。
つまり、WordPressの動作を自由に拡張できるファイルです。
ただし、functions.phpは「テーマごと」に存在するため、編集方法を誤ると**サイトが真っ白になる(PHPエラー)**こともあります。
この記事では、初心者でも安心して使いこなせるよう、基礎から注意点まで丁寧に解説します。
1. functions.phpの役割とは?
functions.phpは、WordPressに機能を追加するための「テーマ専用の設定ファイル」です。
たとえば、以下のような機能を追加できます。
- サムネイル(アイキャッチ画像)の有効化
- メニューの登録
- ウィジェットエリアの追加
- カスタム投稿タイプの登録
- 抜粋文の文字数変更 など
WordPressのカスタマイズの第一歩として欠かせない存在です。
2. functions.phpの場所と開き方
【場所】
/wp-content/themes/使用中のテーマ/functions.php【開き方】
- 管理画面 → 外観 → テーマファイルエディター
- もしくは、FTPソフト(例:FTPソフトの使い方と接続方法【初心者向け】)でテーマフォルダを開く方法もおすすめです。
⚠️ 注意点:エディターで直接編集するよりも、バックアップを取ってからFTP経由で編集する方が安全です。
3. functions.phpにできること(具体例付き)
ここでは、実際によく使われる関数を紹介します。
① アイキャッチ画像(サムネイル)の有効化
add_theme_support('post-thumbnails');これを追加すると、投稿画面で「アイキャッチ画像」が設定できるようになります。
→ 関連記事:アイキャッチ画像が表示されないときの原因と対処法
② メニューの登録
register_nav_menus( array(
'header-menu' => 'ヘッダーメニュー',
'footer-menu' => 'フッターメニュー'
));→ 関連記事:WordPressでメニューを作成・設置する方法
③ 抜粋文の文字数を変更
function custom_excerpt_length($length) {
return 60;
}
add_filter('excerpt_length', 'custom_excerpt_length');→ 関連記事:WordPressで抜粋文の文字数を変更する方法
④ 絵文字や不要なタグを削除
remove_action('wp_head', 'print_emoji_detection_script', 7);
remove_action('wp_print_styles', 'print_emoji_styles');軽量化にもつながります。
→ 関連記事:WordPressサイトを高速化する7つの方法【初心者OK】
4. functions.phpを編集するときの注意点
functions.phpを編集する際は、以下の点に気をつけましょう。
✅ 1. 必ずバックアップを取る
小さなミス(例:セミコロン抜け)でも、**サイトが真っ白になる(Fatal error)**ことがあります。
→ 関連記事:BackWPupでWordPressサイトをバックアップする方法
✅ 2. 子テーマを使う
親テーマを直接編集すると、テーマ更新時に上書きされてしまいます。
子テーマを作って、そちらのfunctions.phpに記述するのが安全です。
→ 関連記事:子テーマの作り方|WordPress初心者向け完全ガイド
✅ 3. 関数の重複に注意
同じ関数名を2回定義するとエラーになります。
回避するには、関数を「存在チェック」してから定義します。
if ( !function_exists('my_theme_setup') ) {
function my_theme_setup() {
// 処理内容
}
}5. よくあるエラーと対処法
| 状況 | 原因 | 対処法 |
|---|---|---|
| 画面が真っ白になった | PHP構文エラー | FTPで修正または削除 |
| メニューが消えた | register_nav_menusが未定義 | 該当関数を追加 |
| 更新で内容が消えた | 親テーマを直接編集 | 子テーマを利用する |
6. functions.php以外で設定した方がいいケース
functions.phpにコードを増やしすぎると、管理が複雑になります。
以下のような設定は、プラグインを使った方が安全です。
| 用途 | 推奨方法 |
|---|---|
| SEO対策 | All in One SEO / Yoast SEO の設定手順と使い分け |
| キャッシュ高速化 | WP Super Cacheの設定方法 |
| セキュリティ | All in One WP Securityの使い方と設定方法 |
まとめ:functions.phpを使いこなせばサイトは自由自在!
functions.phpは、WordPressの自由度を大きく広げてくれる強力なツールです。
ただし、編集ミス=サイト停止につながることもあるため、
「子テーマ」「バックアップ」「テスト環境」を意識しながら安全に進めましょう。
💡 関連記事まとめ
- WordPressテーマに欠かせない!wp_footer()とwp_head()の役割と使い方
- is_front_page()とis_home()の違いを初心者向けに解説
- WordPressで現在のテーマディレクトリのURLを取得する方法
- functions.phpでよく使うコード集(初心者用)
✅ この記事のポイントまとめ
| 項目 | 内容 |
|---|---|
| 役割 | WordPressの機能を拡張するテーマ専用ファイル |
| 編集場所 | /wp-content/themes/テーマ名/functions.php |
| 注意点 | 子テーマ利用・バックアップ必須 |
| 代表的な処理 | アイキャッチ・メニュー・抜粋文・軽量化 |
| よくある失敗 | 構文ミス・親テーマ上書き |

