php - read - wordpress page the_content
Wordpress: single.php no muestra the_content() (3)
Estoy creando un tema de Wordpress personalizado y parece que no consigo que funcione la plantilla single.php. A continuación se muestra el código que he escrito. El título aparece pero el contenido no. ¿Alguna idea de por qué no lo es?
<?php
/**
* The Template for displaying all single posts.
*/
get_header(); ?>
<div id="content" role="main">
<div <?php post_class() ?> id="post-<?php the_ID(); ?>">
<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2>
<small><?php the_time(''F jS, Y'') ?> <!-- by <?php the_author() ?> --></small>
<div class="entry">
<?php the_content(); ?>
</div>
<p class="postmetadata"><?php the_tags(''Tags: '', '', '', ''<br />''); ?> Posted in <?php the_category('', '') ?> | <?php edit_post_link(''Edit'', '''', '' | ''); ?> <?php comments_popup_link(''No Comments »'', ''1 Comment »'', ''% Comments »''); ?></p>
</div>
</div><!-- #content -->
Vea aquí para una captura de pantalla de la salida:
Estoy escribiendo esto porque tuve un problema similar. Mi contenido no estaba apareciendo. Sin embargo, mi llamada a the_content estaba dentro de The Loop . Además, esto estaba funcionando en mi servidor de desarrollo pero no en el servidor de producción.
Pude resolver esto eliminando todos los complementos y luego, uno por uno, agregarlos nuevamente.
Además, por supuesto, si tiene habilitado el almacenamiento en caché, un buen primer paso es borrar el caché.
Simplemente puse the_post()
sobre the_content()
y funcionó
the_content()
no se muestra porque tiene que estar dentro de The Loop . Echa un vistazo a la documentación aquí »
Necesitas cambiar tu código a esto:
if ( have_posts() ) : while ( have_posts() ) : the_post();
the_content();
endwhile;
else:
<p><?php _e(''Sorry, no posts matched your criteria.''); ?></p>
endif;
Puede omitir el else
si siempre está seguro de que tiene contenido para mostrar :) O simplemente eche un vistazo al single.php
original donde puede encontrar The Loop siempre rodea the_content()
editar:
Aquí está el single.php completo que podrías usar / comenzar con:
<?php
/**
* The Template for displaying all single posts.
*/
get_header(); ?>
<div id="content" role="main">
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<div <?php post_class() ?> id="post-<?php the_ID(); ?>">
<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2>
<small><?php the_time(''F jS, Y'') ?> <!-- by <?php the_author() ?> --></small>
<div class="entry">
<?php the_content(); ?>
</div>
<p class="postmetadata"><?php the_tags(''Tags: '', '', '', ''<br />''); ?> Posted in <?php the_category('', '') ?> | <?php edit_post_link(''Edit'', '''', '' | ''); ?> <?php comments_popup_link(''No Comments »'', ''1 Comment »'', ''% Comments »''); ?></p>
</div>
<?php endwhile; endif; ?>
</div><!-- #content -->