Estoy configurando un sitio de WordPress de una página. Recibo algunas páginas en mi sitio que no tienen contenido. Por ejemplo, obtendré la página de blog vacía, así como la plantilla de blog. Así que pensé que podría enviar un cheque para ver si la página tiene contenido y si sigue adelante y publique esa información. Tengo problemas para que funcione. Estoy usando una consulta personalizada para la página de inicio. Entonces pensé que podía hacer esto
if ( $page_query->have_posts() ) : while ( $page_query->have_posts() ) : $page_query->the_post();
if( $page_query->post_content != ''){
get_template_part( 'content', get_post_format() );
}
endwhile; endif;
El problema es que recibo un error en ese código y no puedo entender por qué. Me sale este error
Aviso: Propiedad indefinida: WP_Query :: $ post_content en
empty()
como una variable. Primero debe almacenarlo en una variable. Incluso entonces, no funcionará, ya que puede haber algunos espacios vacíos en su contenido.Esto también funciona y prueba cosas como etiquetas de párrafo vacías o
en el contenido que pueden causar que falle una comprobación normal. Visite http://blog.room34.com/archives/5360 para ver la idea original: simplemente grabe aquí para que pueda encontrarla nuevamente. : O)Pon esto en tus functions.php:
Y pon esto donde quieras ejecutar el cheque:
Eso devolverá
true
si el contenido está vacío,false
si no.fuente
He implementado algunos métodos "has_content ()" varias veces a lo largo de los años y siempre hay suficiente tiempo entre ellos, así que necesito buscar nuevamente un poco para responder esta pregunta.
de todos modos, esta es mi solución, que me gusta encontrar la próxima vez aquí, así que es para referencia.
todas las funciones de "bucle interno" se pueden reemplazar por un objeto de publicación "post_content"
en functions.php y archivos similares:
como función
plantilla dentro del bucle:
fuente