WP Auto Comment одобряет для пользовательского типа сообщения - PullRequest
0 голосов
/ 12 сентября 2018

Я добавил действие для автоматического утверждения комментариев для моей xyz пользовательской записи.Но это не работает, когда добавлено условие if($post_type =='course').Я пробовал также с фильтром.Но это не работает.Как я могу решить это?

Действие:

global $post_type;
if($post_type =='xyz'){
    function action_pre_comment_approved( $array, $int, $int ) { 

    }; 
add_action( 'pre_comment_approved', 'action_pre_comment_approved', 10, 3 ); 
}

Фильтр:

global $post_type;
if($post_type =='xyz'){
    function filter_pre_comment_approved( $approved, $commentdata ) { 

        return $approved; 
    }; 
    add_filter( 'pre_comment_approved', 'filter_pre_comment_approved', 10, 2 ); 
}

Ответы [ 2 ]

0 голосов
/ 12 сентября 2018

Попробуйте этот код.

function filter_pre_comment_approved( $approved, $commentdata ) {   
    global $post_type;
    if($post_type =='xyz'){
        return $approved; 
    }else{
        return false;
    }
}
add_filter( 'pre_comment_approved', 'filter_pre_comment_approved', 10, 2 ); 
0 голосов
/ 12 сентября 2018

Внутренняя функция Wordpress, которая фактически устанавливает статус комментария для одобренного, нигде не видна в вашем коде:

wp_set_comment_status( $comment_id, $comment_status ) 

Ваш код может срабатывать, когда видит комментарий, но нет функции, которая может изменить комментарийстатус присутствует, комментарий не одобрен.На мой взгляд, когда используется эта функция, вам может понадобиться только одна из «action» или «filter» для изменения статуса комментария.Дайте нам знать результат, если вы попробуете это.

Посетите страницу из Wordpress Codex для получения более подробной информации об этой функции

...