¿Cuál es el propósito del archivo paged.php?


10

En el contexto del cuadro de jerarquía de plantilla? Por lo que sé, ¿el archivo paged.php tiene algo que ver con un archivo?

ingrese la descripción de la imagen aquí

Respuestas:


8

Si miramos adentro template-loader.php, podemos ver las condiciones bajo las cuales paged.phpse cargará:

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;

El último elseifes donde se carga la plantilla paginada si existe:

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

Lo que significa que todas las comprobaciones anteriores tienen que devolver falso para paged.phpque se cargue la plantilla, la consulta is_pagedy no se encontró ninguna otra plantilla específica de contenido.


Creo que paged.php se puede usar para personalizar páginas paginada - page / 2 / etc. core.trac.wordpress.org/ticket/14779#comment:4
amit

2
sí, eso es lo que is_paged()significa, sin embargo, si hay alguna otra plantilla más específica disponible, esa plantilla se llamará antes paged.php. por ejemplo, si su tema tiene una archive.phpplantilla, paged.phpnunca se usará para ningún tipo de contenido que use archive.php, independientemente del número de página.
Milo

2

Sí, si tiene paged.phppresente en su tema, esa plantilla se utilizará para todos menos la primera página del archivo. Esto es en caso de que el estilo / marcado de su archivo sea drásticamente diferente entre la primera página y las páginas siguientes.


1
esto no es del todo exacto, si no se usará una plantilla más específica como archive.phpo category.phpexiste paged.php. solo si solo hay una index.phpplantilla tendrá paged.phpprioridad.
Milo

Tiene toda la razón, se detiene en la primera plantilla disponible en el gráfico.
Stephen Harris

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.