web-dev-qa-db-fra.com

Obtenir le contenu du commentaire par ID de commentaire

Donc, j'essaie depuis une heure environ de lister les commentaires par leur identifiant. J'ai essayé la fonction get_comment($id, $output) mais cela n'a pas bien fonctionné, alors je suis retourné à ce qui est montré ci-dessous, mais il ne montre que tous les commentaires. Je veux qu'il montre seulement un commentaire par son identité. Je ne peux pas trouver un moyen de le faire. Qu'est-ce que je fais mal?

$args = array(
    'id' => 1,
);

// The Query
$comments_query = new WP_Comment_Query;
$comments = $comments_query->query( $args );

// Comment Loop
if ( $comments ) {
    foreach ( $comments as $comment ) {
        echo '<p>'.$comment->comment_content.'</p>';
    }
}
1
Matthew Abrman

Le Codex donne l’impression que vous pouvez interroger un commentaire spécifique par ID, comme le générateur GenerateWP , mais je ne pouvais pas le faire fonctionner avec l'un de ces exemples. Même en regardant à travers le code WP_Comment_Query:query(), il est clair que vous devriez pouvoir passer l'ID dans les paramètres.

Cela dit, utiliser get_comment() est votre seule solution. Voici ce qui peut fonctionner en fonction de votre code d'origine:

<?php
/**
 * Get the contents of a single comment by its ID.
 * 
 * @param  int $comment_id The ID of the comment to retrieve.
 * 
 * @return string The comment as a string, if present; null if no comment exists.
 */
function wpse120039_get_comment_by_id( $comment_id ) {
    $comment = get_comment( intval( $comment_id ) );

    if ( ! empty( $comment ) ) {
        return $comment->comment_content;
    } else {
        return '';
    }
}

echo '<p>' . wpse120039_get_comment_by_id( '34' ) . '</p>';
0
Morgan Estes

Je ne vois pas d'argument à WP_Comment_Query qui vous permettrait de rechercher des commentaires par ID de commentaire, uniquement par l'ID de publication associé. Cependant, get_comment le fera. Un exemple du Codex:

$my_id = 7;
$comment_id_7 = get_comment( $my_id ); 
$name = $comment_id_7->comment_author;
0
s_ha_dum