テーマが表示されない・認識されない

❌ テーマ一覧に表示されない

問題: 管理画面の「外観」→「テーマ」にテーマが表示されない
原因:
  • style.cssがない、またはテーマ情報が記述されていない
  • フォルダの配置場所が間違っている
解決方法:
  1. テーマフォルダが wp-content/themes/ 直下にあるか確認
  2. style.cssの最上部にテーマ情報(コメント形式)が記述されているか確認
  3. 少なくとも「Theme Name」が記述されているか確認

❌ テーマ画像が「No Image」と表示される

問題: テーマは認識されるが、サムネイル画像が表示されない
原因: screenshot.pngがない
解決方法:
  1. 1200px × 900pxの画像を用意
  2. ファイル名を「screenshot.png」にする(小文字)
  3. テーマフォルダの直下に配置

ページが真っ白になる(ホワイトスクリーン)

❌ テーマを有効化すると真っ白なページが表示される

問題: テーマ有効化後、サイトが真っ白になりエラーメッセージも表示されない
原因: PHPの致命的エラー(Fatal Error)
解決方法:
  1. デバッグモードを有効化: wp-config.phpに以下を追加
    define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', true);
  2. エラーログを確認: wp-content/debug.log を開く
  3. よくある原因:
    • PHPタグの閉じ忘れ <?php ... ?>
    • セミコロン(;)の抜け
    • 全角スペースの混入
    • 関数名のタイポ

❌ functions.phpを編集したら真っ白になった

問題: functions.phpの変更後、サイトが表示されなくなった
緊急対処法:
  1. FTPでサーバーに接続
  2. functions.phpをリネーム(例: functions.php.bak)
  3. サイトが復旧することを確認
  4. functions.phpを修正して再アップロード
予防策:
  • functions.phpの最後に ?> を書かない
  • ファイルの最後に余分な空白行を入れない
  • 編集前に必ずバックアップを取る

スタイルが反映されない

❌ CSSを変更しても反映されない

問題: style.cssを編集したのに、サイトのデザインが変わらない
原因: ブラウザのキャッシュ
解決方法:
  1. スーパーリロード: Ctrl + Shift + R(Windows)/ Command + Shift + R(Mac)
  2. キャッシュクリア: ブラウザの設定からキャッシュを削除
  3. シークレットモードで確認: Ctrl + Shift + N で新しいウィンドウを開く
  4. バージョン番号を追加: functions.phpで
    wp_enqueue_style('mytheme-style', get_stylesheet_uri(), array(), '1.0.1');

❌ CSSが読み込まれていない

問題: ブラウザの開発者ツールで見ると、style.cssが404エラーになっている
原因: スタイルシートの読み込み方法が間違っている
解決方法:
  1. header.phpで直接リンクしていないか確認(非推奨)
  2. functions.phpで wp_enqueue_style() を使用しているか確認
  3. header.phpに <?php wp_head(); ?> があるか確認

画像・メディアの問題

❌ アイキャッチ画像が表示されない

問題: アイキャッチ画像を設定したのに表示されない
チェックポイント:
  1. functions.phpに add_theme_support('post-thumbnails'); があるか確認
  2. テンプレートに <?php the_post_thumbnail(); ?> があるか確認
  3. <?php if (has_post_thumbnail()) : ?> で条件分岐しているか確認

❌ 画像のパスが間違っている

問題: テーマ内の画像が表示されない(ロゴなど)
正しいパスの取得方法:
<!-- 間違い --> <img src="images/logo.png"> <!-- 正しい --> <img src="<?php echo get_template_directory_uri(); ?>/images/logo.png">

機能が動作しない

❌ メニューが表示されない

問題: ナビゲーションメニューを作成したのに表示されない
チェックポイント:
  1. functions.phpで register_nav_menus() が実行されているか
  2. header.phpで wp_nav_menu() を呼び出しているか
  3. 管理画面で「メニューの位置」を設定したか
  4. theme_location の名前が一致しているか

❌ ウィジェットが表示されない

問題: ウィジェットエリアにウィジェットを追加したが表示されない
チェックポイント:
  1. functions.phpで register_sidebar() が実行されているか
  2. テンプレートで <?php dynamic_sidebar('sidebar-1'); ?> を呼び出しているか
  3. ウィジェットエリアのIDが一致しているか
  4. <?php get_sidebar(); ?> を呼び出しているか

❌ JavaScriptが動作しない

問題: jQueryなどのJavaScriptが動作しない
原因: スクリプトの読み込み順序や読み込み方法の問題
解決方法:
  1. footer.phpに <?php wp_footer(); ?> があるか確認
  2. functions.phpで wp_enqueue_script() を使用する
  3. jQueryを使う場合は依存関係を指定:
    wp_enqueue_script('mytheme-script', get_template_directory_uri() . '/js/script.js', array('jquery'), '1.0', true );

パフォーマンスの問題

❌ ページの読み込みが遅い

問題: サイトの表示速度が遅い
改善方法:
  1. 画像の最適化: JPEGならTinyPNGなどで圧縮
  2. 不要なプラグインを削除: 使っていないプラグインを無効化
  3. キャッシュプラグイン: WP Super Cacheなどを導入
  4. データベースクエリの最適化: 無駄なループを減らす
  5. 外部スクリプトの削減: 不要なCDNリンクを削除

デバッグの基本

🔍 効果的なデバッグ方法

  1. ブラウザの開発者ツールを使う
    • F12キーで開発者ツールを開く
    • Consoleタブでエラーメッセージを確認
    • Networkタブで読み込まれていないファイルを確認
  2. var_dump()で変数の中身を確認
    <?php var_dump($変数名); ?>
  3. wp_die()で処理を止めて確認
    <?php wp_die('ここまで実行された'); ?>
  4. エラーログを確認
    • wp-content/debug.log
    • サーバーのエラーログ

それでも解決しない場合

💡 サポートを受ける方法

  • WordPress日本語フォーラム: https://ja.wordpress.org/support/forums/
  • Stack Overflow: 英語だが情報量が豊富
  • テーマのコードレビュー: Theme Check プラグインを使用
  • コミュニティ: WordPressのMeetupやWordCampに参加

質問する際のポイント

  • WordPressのバージョン
  • PHPのバージョン
  • 何をしたら問題が発生したか
  • エラーメッセージの全文
  • 試した解決方法

予防策:開発のベストプラクティス

⚠️ トラブルを防ぐために

  • ✅ こまめにバックアップを取る
  • ✅ ローカル環境で十分テストしてから本番に反映
  • ✅ バージョン管理(Git)を使う
  • ✅ コードにコメントを残す
  • ✅ WordPressコーディング規約に従う
  • ✅ Theme Checkプラグインで定期的にチェック
  • ✅ 変更は少しずつ行い、都度確認する

関連ページ

問題が解決したら、テーマ作成を続けましょう。

基本編(STEP 1-6)

応用編