paged.phpファイルの目的は何ですか?


10

テンプレート階層図のコンテキストでは?私が収集したものから、paged.phpファイルはアーカイブと関係がありますか?

ここに画像の説明を入力してください

回答:


8

を見るとtemplate-loader.phppaged.phpロードされる条件がわかります。

if ( defined('WP_USE_THEMES') && WP_USE_THEMES ) :
    $template = false;
    if     ( is_404()            && $template = get_404_template()            ) :
    elseif ( is_search()         && $template = get_search_template()         ) :
    elseif ( is_tax()            && $template = get_taxonomy_template()       ) :
    elseif ( is_front_page()     && $template = get_front_page_template()     ) :
    elseif ( is_home()           && $template = get_home_template()           ) :
    elseif ( is_attachment()     && $template = get_attachment_template()     ) :
        remove_filter('the_content', 'prepend_attachment');
    elseif ( is_single()         && $template = get_single_template()         ) :
    elseif ( is_page()           && $template = get_page_template()           ) :
    elseif ( is_category()       && $template = get_category_template()       ) :
    elseif ( is_tag()            && $template = get_tag_template()            ) :
    elseif ( is_author()         && $template = get_author_template()         ) :
    elseif ( is_date()           && $template = get_date_template()           ) :
    elseif ( is_archive()        && $template = get_archive_template()        ) :
    elseif ( is_comments_popup() && $template = get_comments_popup_template() ) :
    elseif ( is_paged()          && $template = get_paged_template()          ) :
    else :
        $template = get_index_template();
    endif;
    if ( $template = apply_filters( 'template_include', $template ) )
        include( $template );
    return;
endif;

最後elseifは、ページングされたテンプレートが存在する場合にロードされる場所です。

elseif ( is_paged()          && $template = get_paged_template()          ) :

つまり、上記のチェックはすべて、paged.phpテンプレートをロードするためにfalseを返す必要があり、クエリを実行するだけis_pagedで、他のコンテンツ固有のテンプレートは見つかりませんでした。


paged.phpを使用してページングされたページをカスタマイズできると思います-page / 2 /など。core.trac.wordpress.org
amit

2
はい、それがis_paged()意味ですが、他にもっと具体的なテンプレートが利用可能な場合、そのテンプレートはの前に呼び出されpaged.phpます。たとえば、テーマにarchive.phpテンプレートがある場合、は、ページ番号に関係なく、をpaged.php使用するどのタイプのコンテンツにも使用されませんarchive.php
ミロ

2

うん、あなたがpaged.phpあなたのテーマに存在しているなら、そのテンプレートはアーカイブの最初のページを除いてすべてに使われます。これは、アーカイブのスタイル/マークアップが最初のページと後続のページで大幅に異なる場合に備えています。


1
より特定のテンプレートのような場合、これは、完全に正確ではないarchive.phpcategory.php、存在してpaged.php使用されることはありません。index.phpテンプレートしかない場合にのみpaged.php優先されます。
ミロ

あなたは絶対に正しいです-あなたはチャートで最初に利用可能なテンプレートで停止します。
スティーブンハリス

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.