如何顯示WordPress某個文章所有評論者名稱

藏色散人
發布: 2020-11-10 15:02:05
轉載
2578 人瀏覽過

下面由WordPress教學專欄為大家介紹顯示WordPress某個文章所有評論者名稱的辦法,希望對需要的朋友有所幫助!

如何顯示WordPress某個文章所有評論者名稱

如果想顯示某篇文章或目前文章所有評論者名稱列表,可以參考本文的方法。

使用場景,例如在文章適當位置,顯示當前已有:史珍香,秦壽生,焦厚根,朱逸群,夏建仁等發表了熱情揚溢的評論,再加一個錨點鏈接,引導讀者跳轉到評論表單,也發個熱情揚溢的評論。

將程式碼新增至目前主題函數範本functions.php:

function get_comment_authors_list( $id = 0, $sep = ', ' ) {
$post_id = $id ? $id : get_the_ID();
if ( $post_id ) {
$comments = get_comments( array(
'post_id' => $post_id,
'status'  => 'approve',
'type'    => 'comment',
) );
 
$names = array();
foreach ( $comments as $comment ) {
$name = $comment->comment_author;
if ( $comment->user_id ) {
$user = get_userdata( $comment->user_id );
$name = $user ? $user->display_name : $name;
}
 
$arr = explode( ' ', trim( $name ) );
if ( ! empty( $arr[0] ) && ! in_array( $arr[0], $names ) ) {
$names[] = $arr[0];
}
}
unset( $comments );
 
$sep = $sep ? $sep : ', ';
return implode( $sep, $names );
}
}
 
 
add_shortcode( 'comment_authors_list', 'comment_authors_list_shortcode' );
 
function comment_authors_list_shortcode( $atts = array() ) {
$atts = shortcode_atts( array(
'post_id'  => 0,
'list_sep' => '',
), $atts );
 
return get_comment_authors_list( $atts['post_id'], $atts['list_sep'] );
}
登入後複製

使用方法:

一、呼叫ID為:123文章的所有評論者名稱

在模板中使用:

<?php echo get_comment_authors_list(&#39;123&#39;); ?>
登入後複製

在文章中添加短代碼:

[comment_authors_list post_id="123" /]
登入後複製

二、調用當前文章所有評論者名稱,與上面類似只是去掉其中的文章ID,適合放在文章正文模板。

在範本中使用

<?php echo get_comment_authors_list(); ?>
登入後複製

在文章中加入短代碼:

[comment_authors_list /]
登入後複製

以上是如何顯示WordPress某個文章所有評論者名稱的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:zmingcx.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板