Pregunta

( Nota del Moderador: El título original era "¿Hay una manera de obtener comentarios puesto por puesto de identificación en un bucle de encargo usando WP-Query ()?")

Hola! Estoy corriendo un lazo de encargo utilizando WP_Query , que sólo se muestra un puesto de una categoría específica en la home.php la página, así:

<?php $pr_q = "cat=11&posts_per_page=1"; $pregunta_q = new WP_Query($pr_q); ?>
<?php while ($pregunta_q->have_posts()) : $pregunta_q->the_post(); ?>
    <!-- post stuff here -->
<?php endwhile; ?>

¿Hay alguna forma para que se muestre comentarios para dicho puesto específico? Probé incluyendo la plantilla de comentarios dentro del bucle y nada. ¿Hay una función que carga los comentarios para un puesto específico que se pueden utilizar en el interior home.php o en otro sitio?

¿Fue útil?

Solución

Para poder utilizar la plantilla de comentarios en las bucles, complemento

global $withcomments; $withcomments = true;

Otros consejos

Por defecto, WP_Query se cargue sólo comentarios con la consulta si estás

  1. mirando a una alimentación de comentarios, o
  2. mirando un elemento singular.

Su consulta no se retiraría de forma automática en los comentarios porque, como una categoría de la lista (a pesar de que sólo hay una) que no cuenta como 'singular'. Afortunadamente, hay una forma de evitar esto. Básicamente, antes de tirar en la plantilla de los comentarios, debe buscar a los comentarios y ponerlos en el objeto de consulta que está utilizando:

<?php $pr_q = "cat=11&posts_per_page=1"; $pregunta_q = new WP_Query($pr_q); ?>
<?php while ($pregunta_q->have_posts()) : $pregunta_q->the_post(); ?>
  <!-- post stuff before comments here -->
  $comments = get_comments( array(
    'post_id' => $post->ID,
    'orderby' => 'comment_date_gmt',
    'status' => 'approve',
  ) );
  if(!empty($comments)){
    $pregunta_q->comments = $comments;
    $pregunta_q->comment_count = count($comments);
  }
  <!-- comment stuff here -->
<?php endwhile; ?>

John P Bloch respuesta es correcta. Comentario sólo se carga si usted está en singular y en la alimentación comentario. Afortunadamente podemos anular este comportamiento mediante la adición de parámetro adicional sobre WP consulta.

'withcomments' => 1, 'feed' => 1

No hay necesidad de WP_Query o lazo de encargo para los comentarios. Puede obtener sólo los comentarios de correos en bucle de encargo del poste o WP_Query. En bucle que tiene la post_id. Uso post_id para obtener comentarios. Código está escrito a continuación.

$comments = get_comments('post_id='.$post->ID);
       foreach($comments as $comment) :
               print_r($comment);
       endforeach;
Licenciado bajo: CC-BY-SA con atribución
scroll top