it-swarm.com.de

Trennen von Kommentaren für benutzerdefinierte Posttypen von Kommentaren für reguläre Blogposts

Ich habe einen benutzerdefinierten Beitragstyp (gs_index) mit aktivierten Kommentaren und möchte eine Liste der letzten Kommentare nur für diesen bestimmten Beitragstyp (außerhalb der Schleife) anzeigen.

Ich möchte auch die Kommentare der Standard-Blog-Posts ohne die Kommentare des benutzerdefinierten Post-Typs anzeigen.

Hier ist der Code, den ich gerade benutze

<ul>
  <?php
    $comments = get_comments('number=10&status=approve');
    $true_comment_count = 0;
    foreach($comments as $comment) :
  ?>

  <?php $comment_type = get_comment_type(); ?>
  <?php if($comment_type == 'comment') { ?>  
  <?php $true_comment_count = $true_comment_count +1; ?>  
  <?php $comm_title = get_the_title($comment->comment_post_ID);?>
  <?php $comm_link = get_comment_link($comment->comment_ID);?>
  <?php $comm_comm_temp = get_comment($comment->comment_ID,ARRAY_A);?>
  <?php $comm_content = $comm_comm_temp['comment_content'];?>

    <li>
      <span class="footer_comm_author">
        <?php echo($comment->comment_author)?>
      </span> on 
      <a href="<?php echo($comm_link)?>" title="<?php echo $comm_title?>">
        <?php echo $comm_title?> 
      </a>
    </li> 

  <?php } ?>
  <?php if($true_comment_count == 5) {break;} ?>
  <?php endforeach;?>
</ul>
3
George

Es ist nicht gut dokumentiert, aber laut Codex können Sie in der Funktion get_comments eine 'type'-Variable übergeben. Probieren Sie es aus

$comments = get_comments('number=10&status=approve&type=YOUR_POST_TYPE');
1
Norcross

Was Sie versuchen zu erreichen, ist ein fehlendes Feature mit der Funktion get_comments() in WordPress. Daher ist es mit der Funktion get_comments() bisher grundsätzlich nicht möglich, Kommentare nach dem Typ abzurufen.

Das zugehörige Ticket lautet: Ticket # 12904 - get_comments (): Post-Status aktivieren, Post-Typ

Sie benötigen eine andere Funktion, die die gesuchten Daten zurückgibt. Wahrscheinlich müssen Sie selbst eine schreiben.

1
hakre