Tengo un problema con los comentarios sobre el tema underscores.me que no logro resolver. El archivo pot del tema dice que está basado en underscores. El tema en sí parece estar “muerto”, a pesar de que fue creado y mantenido por Automattic, y no se ha actualizado en varios años. https://underscores.me/
La página de inicio está configurada para mostrar diez publicaciones, con comentarios para cada publicación que se muestran debajo de cada publicación. El problema es que cuando un usuario hace clic en el enlace de “responder” a un comentario o ingresa un nuevo comentario en el formulario de comentarios y hace clic en “Publicar comentario”, se lo redirige a la publicación individual donde ve los comentarios anteriores y el formulario de comentarios. Estoy tratando de averiguar cómo mantener a los usuarios en la página de inicio mientras comentan.
No me importa si la página de inicio se vuelve a cargar al enviar un comentario; simplemente no quiero que los usuarios sean redirigidos a la publicación única.
He analizado otros temas básicos y no puedo entender por qué en mi caso el enlace de respuesta lleva a los usuarios a la página de publicación única.
¿Alguna idea? ¿Tiene esto algo que ver con el bucle?
A continuación hay cuatro archivos: index.php, content.php (llamado por index.php), comments.php y el archivo template-tags.php que contiene la función newco_theme_entry_footer.
Lo sé, lo sé 🙂 Es mucho código, pero la mayor parte parece ser WordPress bastante estándar.
índice.php:
/**
* The main template file
*
* This is the most generic template file in a WordPress theme
* and one of the two required files for a theme (the other being style.css).
* It is used to display a page when nothing more specific matches a query.
* E.g., it puts together the home page when no home.php file exists.
*
* @link https://developer.wordpress.org/themes/basics/template-hierarchy/
*
*/get_header();
?>
if ( have_posts() ) :
if ( is_home() && ! is_front_page() ) :
?>
endif;
/* Start the Loop */
while ( have_posts() ) :
the_post();
/*
* Include the Post-Type-specific template for the content.
* If you want to override this in a child theme, then include a file
* called content-___.php (where ___ is the Post Type name) and that will be used instead.
*/
get_template_part( 'template-parts/content', get_post_type() );
endwhile;
endif;
?>
get_sidebar();
get_footer();
content.php
/**
* Template part for displaying posts
*
* @link https://developer.wordpress.org/themes/basics/template-hierarchy/
*
*/?>
>
if ( 'post' === get_post_type() ) :
?>
echo 'Posted on: ' .get_the_date();
newco_theme_posted_by();
?>
the_content(
sprintf(
wp_kses(
/* translators: %s: Name of current post. Only visible to screen readers */
__( 'Continue reading
"%s"', 'newco-theme' ),
array(
'span' => array(
'class' => array(),
),
)
),
wp_kses_post( get_the_title() )
)
);
wp_link_pages(
array(
'before' => '
' . esc_html__( 'Pages:', 'newco-theme' ),
'after' => '
',
)
);
?>
comentarios.php
/**
* The template for displaying comments
*
* This is the template that displays the area of the page that contains both the current comments
* and the comment form.
*
* @link https://developer.wordpress.org/themes/basics/template-hierarchy/
*
*//*
* If the current post is protected by a password and
* the visitor has not yet entered the password we will
* return early without loading the comments.
*/
if ( post_password_required() ) {
return;
}
?>
Plantilla-etiquetas.php
if ( ! function_exists( 'newco_theme_entry_footer' ) ) :
/**
* Prints HTML with meta information for the categories, tags and comments.
*/
function newco_theme_entry_footer() {
// Hide category and tag text for pages.
if ( 'post' === get_post_type() ) {
/* translators: used between list items, there is a space after the comma */
$categories_list = get_the_category_list( esc_html__( ', ', 'newco-theme' ) );
if ( $categories_list ) {
/* translators: 1: list of categories. */
printf( '' . esc_html__( 'Posted in %1$s', 'newco-theme' ) . '', $categories_list ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
}/* translators: used between list items, there is a space after the comma */
$tags_list = get_the_tag_list( '', esc_html_x( ', ', 'list item separator', 'newco-theme' ) );
if ( $tags_list ) {
/* translators: 1: list of tags. */
printf( '' . esc_html__( 'Tagged %1$s', 'newco-theme' ) . '', $tags_list ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
}
}
if ( ! is_single() && ! post_password_required() && ( comments_open() || get_comments_number() ) ) {
echo '';
}
edit_post_link(
sprintf(
wp_kses(
/* translators: %s: Name of current post. Only visible to screen readers */
__( 'Edit %s', 'newco-theme' ),
array(
'span' => array(
'class' => array(),
),
)
),
wp_kses_post( get_the_title() )
),
'',
''
);
}
endif;