Wordpress.org: Visa bara kommentarer till de inlägg den inloggade användaren skrivit
Som titeln lyder är jag på jakt efter lite kod till min functions.php fil som gör att den inloggade användaren bara kan se sina egna kommentarer och de kommentarer som hör till de inlägg användaren har skrivit.
Så som det är nu så ser användaren alla kommentarer som finns på hela sidan.
Hittade några koder på google, men ingen jag testade fungerade. Någon som vet någon bra kod som fungerar?
Tacksam för svar!
Är det i admingränssnittet du vill begränsa vem som ser vilka kommentarer eller vill du modifiera den vanliga kommentarsfunktionen så att den bara visar den inloggade användarens kommentarer?
function wps_get_comment_list_by_user($clauses) {
if (is_admin()) {
global $user_ID, $wpdb;
$clauses['join'] = ", wp_posts";
$clauses['where'] .= " AND wp_posts.post_author = ".$user_ID." AND wp_comments.comment_post_ID = wp_posts.ID";
};
return $clauses;
};
if(!current_user_can('edit_others_posts')) {
add_filter('comments_clauses', 'wps_get_comment_list_by_user');
}
här är en annan jag testat
if (!current_user_can('edit_others_posts')) {
function author_posts_comments_only($query) {
global $current_user;
$query->query_vars['post_author'] = $current_user->ID;
}
add_action('pre_get_comments', 'author_posts_comments_only');
}
här är en
function mypo_parse_query_useronly( $wp_query ) {
if ( strpos( $_SERVER[ 'REQUEST_URI' ], '/wp-admin/edit.php' ) !== false ) {
if ( !current_user_can( 'level_10' ) ) {
global $current_user;
$wp_query->set( 'author', $current_user->id );
}
}
}
add_filter('parse_query', 'mypo_parse_query_useronly' );
Skrivet av kevvs:
Är det i admingränssnittet du vill begränsa vem som ser vilka kommentarer eller vill du modifiera den vanliga kommentarsfunktionen så att den bara visar den inloggade användarens kommentarer?