サイトを完結させる:footer.php の作り方ガイド

ヘッダー、サイドバーと来たら、最後はサイトの土台を締めくくる**footer.php**です。

footer.phpは単にコピーライトを表示するだけでなく、WordPressがJavaScriptを読み込んだり、管理バーを表示したりするための「仕上げ」のコードを実行する非常に重要な役割を持っています。

それでは、**「正しく閉じるためのfooter.phpの作り方」**をまとめます。


footer.phpの役割は、header.phpで開いたタグ(<body><html>など)を適切に閉じ、サイト共通のフッター情報を表示することです。


1. footer.php の基本構造(全体像)

最もシンプルかつ標準的な構成は以下の通りです。

PHP

<footer class="site-footer">
    <div class="container">
        <?php if ( is_active_sidebar( 'footer-widget' ) ) : ?>
            <div class="footer-widgets">
                <?php dynamic_sidebar( 'footer-widget' ); ?>
            </div>
        <?php endif; ?>

        <div class="copyright">
            <p>&copy; <?php echo date( 'Y' ); ?> <?php bloginfo( 'name' ); ?>. All Rights Reserved.</p>
        </div>
    </div>
</footer>

<?php wp_footer(); ?>
</body>
</html>

2. 絶対に忘れてはいけない wp_footer()

header.phpにおけるwp_head()と同様に、wp_footer()は必須中の必須タグです。

  • 役割: </body>タグの直前に記述します。
  • なぜ必要か?: 多くのプラグインやWordPress本体のJavaScriptは、この場所でコードを出力します。これがないと、プラグインが動かない、解析タグが反映されない、ログイン中の管理バーが表示されないといった不具合が発生します。

3. コピーライトの動的表示

コピーライトの年号を 2024 のように直書きすると、毎年更新する手間が発生します。PHPを使って自動化するのがスマートです。

  • echo date( 'Y' );: 現在の西暦を自動で出力します。
  • bloginfo( 'name' );: functions.phpの説明でも出た、サイトタイトルを表示する関数です。

4. フッターメニューの追加(応用)

フッターにもナビゲーションを置きたい場合は、functions.phpでメニューを登録した上で、以下のように呼び出します。

PHP

<nav class="footer-navigation">
    <?php
    wp_nav_menu( array(
        'theme_location' => 'footer-menu',
        'container'      => false,
        'depth'          => 1, // フッターは階層を深くしないことが多い
    ) );
    ?>
</nav>

全パーツの組み立て:index.php での合体

これで header.php, sidebar.php, footer.php という3つの主要パーツが揃いました。これらを1つのページとして機能させるために、index.php で以下のように呼び出します。

PHP

<?php get_header(); ?>

<div class="content-wrapper">
    <main class="main-content">
        </main>

    <?php get_sidebar(); ?>
</div>

<?php get_footer(); ?>

ポイント: get_header(), get_sidebar(), get_footer() という専用の関数を使うことで、WordPressは自動的に各ファイルを探して読み込んでくれます。


最後に:footer.php を作る際のチェックリスト

  1. タグの整合性: header.php で始めた <body><div id="page"> などのタグが、footer.php ですべて正しく閉じられているか確認しましょう。
  2. wp_footer() の位置: 必ず </body> の直前にありますか?

次のステップ:いよいよ記事を表示させましょう!

外枠(ヘッダー・サイドバー・フッター)は完成しました。今の状態だと、サイトの真ん中がまだ空っぽです。

次は、WordPress自作テーマの核心である**「メインループ(記事をデータベースから取得して表示する仕組み)」**の書き方をマスターしましょう。

システム開発なんでもパートナー
システム開発なんでもパートナー

この記事を書いた人