page.php
個別ページを表示するpage.phpを見てみます。
<?php /** * 個別ページを表示するテンプレート * The template for displaying all pages */ //ヘッダーを表示する。 get_header(); ?> <div id="primary" class="content-area"> <main id="main" class="site-main"> //メインループ開始 <?php while ( have_posts() ) : the_post(); // content-page.phpを読み込む。 get_template_part( 'template-parts/content', 'page' ); //必要な場合はコメント表示 // If comments are open or we have at least one comment, load up the comment template. if ( comments_open() || get_comments_number() ) : comments_template(); endif; endwhile; // End of the loop. ?> </main><!-- #main --> </div><!-- #primary --> <?php get_sidebar(); get_footer();
single.phpとほぼ同じ内容です。get_template_partで読み込むファイルがcontent-page.phpになっている点、また投稿ではないため時系列が必要ないので、前後の投稿を表示するthe_post_navigationがない点のみ異なります。
404.php
404ページを表示する404.phpを見ていきます。
<?php /** * 404ページのテンプレート * The template for displaying 404 pages (not found) * @package _s */ get_header(); ?> <div id="primary" class="content-area"> <main id="main" class="site-main"> <section class="error-404 not-found"> <header class="page-header"> <h1 class="page-title"> <?php // esc_html_e()は、第一引数を翻訳してエスケープして出力する関数。第2引数は翻訳ファイルの指定のために用いる。 esc_html_e( 'Oops! That page can’t be found.', '_s' ); ?> </h1> </header><!-- .page-header --> <div class="page-content"> <p><?php esc_html_e( 'It looks like nothing was found at this location. Maybe try one of the links below or a search?', '_s' ); ?></p> <?php //検索フォームを呼び出す関数。 get_search_form(); //the_widget()はwidgetを呼び出す関数。ここでの引数は再帰のの投稿を表示する。 the_widget( 'WP_Widget_Recent_Posts' ); ?> <div class="widget widget_categories"> <h2 class="widget-title"><?php esc_html_e( 'Most Used Categories', '_s' ); ?></h2> <ul> <?php //wp_list_categories()はリンク付きのカテゴリーリストを表示する。引数は配列で、ここでは、「'orderby'=>'count'カテゴリー投稿数の順番で、'order'=>'DESC'降順で、'show_count'=>1 カテゴリーに投稿数を表示して、'title_li'=>''リストの外側に表示されるタイトルを非表示にして、'number'=>10 表示するカテゴリーの上限を10にする」という意味です。 wp_list_categories( array( 'orderby' => 'count', 'order' => 'DESC', 'show_count' => 1, 'title_li' => '', 'number' => 10, ) ); ?> </ul> </div><!-- .widget --> <?php /* translators: %1$s: smiley */ //convert_smilies() 顔文字をimageタグに変換して返す。esc_html__() 第一引数を翻訳してエスケープする。sprintfで2つをつなげて、さらに<p>タグで囲んで代入する。 //つまり、$_s_archive_content = <p>Try looking in the monthly archives. 🙂</p> $_s_archive_content = '<p>' . sprintf( esc_html__( 'Try looking in the monthly archives. %1$s', '_s' ), convert_smilies( ':)' ) ) . '</p>'; //the_widget() 第二引数でドロップダウンリストで表示するよう指定して、第三引数は、見出しの後ろに出力するテキスト。 the_widget( 'WP_Widget_Archives', 'dropdown=1', "after_title=</h2>$_s_archive_content" ); the_widget( 'WP_Widget_Tag_Cloud' ); ?> </div><!-- .page-content --> </section><!-- .error-404 --> </main><!-- #main --> </div><!-- #primary --> <?php get_footer();
404.phpにはget_sidebar()がありません。single.php、page.phpと比べるとだいぶ長いですが、WordPress Codexで関数を調べれば特に難しいところはないと思います。