9ответ(ов) в теме
Vitaliy
не в сети 4 года
На сайте с 10.12.2015
Участник
Тем 77
Сообщения 287
1
18:01

Здравствуйте.
По инструкциям добавил себе на сайт возможность начисления рейтинга пользователям за комментирование.
Использовал этот код:

if(!is_admin()) add_action('init','rcl_register_add_comment_type',30);
if(is_admin()) add_action('admin_init','rcl_register_add_comment_type',30);
function rcl_register_add_comment_type(){   
    rcl_register_rating_type(array('rating_type'=>'add-comment','type_name'=>'Комментирование','icon'=>'fa-plus'));
}

add_action('wp_insert_comment','add_rating_with_add_comment',10,2);
function add_rating_with_add_comment($comment_id,$comment){
	global $rcl_rating_types;
	
	if(!$comment->user_id) return false;
	
	$args = array(
        'user_id' => $comment->user_id,
        'object_id' => $comment_id,
        'object_author' => $comment->user_id,
        'rating_value' => $rcl_rating_types['add-comment']['type_point'],
        'rating_type' => 'add-comment'
    );
	
	rcl_insert_rating($args);
}

add_action('delete_comment','add_rating_with_delete_comment');
function add_rating_with_delete_comment($comment_id){
	global $rcl_rating_types,$wpdb;
	
	$comment = get_comment($comment_id);
	
	if(!$comment->user_id) return false;
	
	$args = array(
        'user_id' => $comment->user_id,
        'object_id' => $comment_id,
        'object_author' => $comment->user_id,
        'rating_value' => $rcl_rating_types['add-comment']['type_point'],
        'rating_type' => 'add-comment'
    );
	
	rcl_delete_rating($args);
	
	$wpdb->query("DELETE FROM ".RCL_PREF."rating_totals WHERE object_id='$comment_id' AND rating_type='add-comment'");
}

(Получается вот такая штука

Вы не можете просматривать опубликованные ссылки

)

Появилась потребность немного изменить его (или дополнить), чтобы в настройках рейтинга добавился еще один пункт "Рейтинг за комментирование в группах"
Цель - за "основные" комменты на сайте начислять рейтинг по настройкам которые выводятся указанной функцией + добавить такой же функционал, только за начисление уже других значений рейтинга за коментарии в группах....
Как реализовать это не совсем понимаю... Я как собака понимаю, но сказать и сделать не могу)))


Fatal error: Uncaught Error: Call to undefined function ads_get_box() in /var/www/www-root/data/www/codeseller.ru/wp-content/themes/codeseller/includes/adv.php:15 Stack trace: #0 /var/www/www-root/data/www/codeseller.ru/wp-includes/class-wp-hook.php(310): add_adv_content_after_first_forum_post('pfm-single-post...', '/var/www/www-ro...') #1 /var/www/www-root/data/www/codeseller.ru/wp-includes/class-wp-hook.php(334): WP_Hook->apply_filters('', Array) #2 /var/www/www-root/data/www/codeseller.ru/wp-includes/plugin.php(517): WP_Hook->do_action(Array) #3 /var/www/www-root/data/www/codeseller.ru/wp-content/plugins/wp-recall/functions/files.php(57): do_action('rcl_include_tem...', 'pfm-single-post...', '/var/www/www-ro...') #4 /var/www/www-root/data/www/codeseller.ru/wp-content/plugins/wp-recall/add-on/prime-forum/functions-templates.php(117): rcl_include_template('pfm-single-post...', '/var/www/www-ro...') #5 /var/www/www-root/data/www/codeseller.ru/wp-content/plugins/wp-recall/add-on/prime-forum/themes/prime-first/templates/pfm in /var/www/www-root/data/www/codeseller.ru/wp-content/themes/codeseller/includes/adv.php on line 15