Домой Каталог: Дополнения WP-Recall Rating System почему не работают кастомные типы рейтинга ?
11ответ(ов) в теме
bocman.sev@gmail.com
не в сети 4 года
На сайте с 16.09.2020
Участник
Тем 106
Сообщения 413
1
21:30
Версия WP-Recall: 16.24.30
Версия дополнения: 3.1.0

хочу добавить на основании ,встроенных типов рейтинга рейтинг пользователю производящий дествие лайка и каментирования,подскажите почему не работают?

// добавил рейтинг за лайкание  в админку
add_action('init', 'rcl_register_add_laykkaniye_type', 30); 
function rcl_register_add_laykkaniye_type(){ 
	rcl_register_rating_type(array(
		'rating_type'	=>'add-laykkaniye',
		'type_name'		=>'лайкание',
		'icon'			=>'fa-thumbs-o-up'
	)); 
}

add_action( 'rcl_edit_rating_post', 'add_rating_with_add_laykkaniye', 99 );
function add_rating_with_add_laykkaniye($post_id){
  if (is_single()){
  global $post;
  $user_ID = get_current_user_id();
 global $rcl_rating_types; 
if(!$post->post_author)  return false;
if($user_ID == $post->post_author ) { 
  return false; }
    
    $args = array( 
              'user_id' => $user_ID,
			  'object_id' => $post_id,
			  'object_author' => $user_ID, 
			  'rating_value' => $rcl_rating_types['add-laykkaniye']['type_point'], 
			  'rating_type' => 'add-laykkaniye' );
rcl_insert_rating($args); 
  } 
}

// добавил рейтинг за комментирование  в админку
add_action('init', 'rcl_register_add_commenting_type', 30); 
function rcl_register_add_commenting_type(){ 
	rcl_register_rating_type(array(
		'rating_type'	=>'add-commenting',
		'type_name'		=>'комментирование',
		'icon'			=>'fa-thumbs-o-up'
	)); 
}

add_action( 'wp_insert_comment', 'add_rating_with_add_commenting', 10, 2 );
function add_rating_with_add_commenting( $id, $comment ){
  if (is_single()){
  $user_ID = get_current_user_id();
  global $rcl_rating_types;    
    $args = array( 
              'user_id' => $user_ID,
			  'object_id' => $id,
			  'object_author' => $user_ID, 
			  'rating_value' => $rcl_rating_types['add-commenting']['type_point'], 
			  'rating_type' => 'add-commenting' );
   rcl_insert_rating($args); 
  } 
}

0
Вова (Otshelnik-Fm)
не в сети 10 часов
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18652
2
21:39

Вроде уже была тема от вас

Вы не можете просматривать опубликованные ссылки
0
bocman.sev@gmail.com
не в сети 4 года
На сайте с 16.09.2020
Участник
Тем 106
Сообщения 413
3
21:47

по началу казалось ,что работало тепреь смотрю не работают эти типы не могу понять где ошибся

0
bocman.sev@gmail.com
не в сети 4 года
На сайте с 16.09.2020
Участник
Тем 106
Сообщения 413
4
22:07

не проходит проверку if (is_single()){ подскажите почему?

0
Вова (Otshelnik-Fm)
не в сети 10 часов
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18652
5
22:24

не проходит проверку if (is_single())

дежавю

Вы не можете просматривать опубликованные ссылки
0
bocman.sev@gmail.com
не в сети 4 года
На сайте с 16.09.2020
Участник
Тем 106
Сообщения 413
6
22:25

так автор этого события вы ,вот и прашиваю

0
Вова (Otshelnik-Fm)
не в сети 10 часов
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18652
7
22:43

не я.

Я предположил там:

Если хук отрабатывает ранее чем происходит инициализация переменной - то в глобальной ничего не будет.

вот и не отрабатывает ваша проверка.

0
bocman.sev@gmail.com
не в сети 4 года
На сайте с 16.09.2020
Участник
Тем 106
Сообщения 413
8
22:45

как поправить .чтобы работало или в этой проверке нет необходимости?

0
Вова (Otshelnik-Fm)
не в сети 10 часов
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18652
9
22:50

rcl_edit_rating_post не передает $post_id так как вы указали. На этом месте список аргументов.
Не стоит придумывать от себя - просто загляните туда где этот хук создается и станет понятно.

Ищите по файлам плагина rcl_edit_rating_post и чтоб он был в do_action - это не сложно найти инициализацию хука. Там и аргументы все посмотрите.

Ваш вопрос не касается работы базовой части дополнения рейтинга. Этот вопрос стоит задавать в ветке "

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

".
Более я вам не помогу тут. Проблемы в работе рейтинговой системы нет.

Это разработка - ваша задача.

0
bocman.sev@gmail.com
не в сети 4 года
На сайте с 16.09.2020
Участник
Тем 106
Сообщения 413
10
22:52

Array
(
    [object_id] => 1565
    [object_author] => 17
    [rating_type] => post
    [user_id] => 1
    [rating_status] => plus
    [rating_value] => 1
)

Редакции сообщения
22.12.2020 22:52bocman.sev@gmail.comПричина: не указано
0
bocman.sev@gmail.com
не в сети 4 года
На сайте с 16.09.2020
Участник
Тем 106
Сообщения 413
11
22:52

переписал но все равно не работает

add_action( 'rcl_edit_rating_post', 'add_rating_with_add_laykkaniye', 99 );
function add_rating_with_add_laykkaniye($obj){

  $user_ID = get_current_user_id();
  global $rcl_rating_types; 
  if(!$obj->object_author)  return false;
  if($user_ID == $obj->object_author ) { 
  return false; }
    
    $args = array( 
              'user_id' => $user_ID,
			  'object_id' => $obj["object_id"],
			  'object_author' => $user_ID, 
			  'rating_value' => $rcl_rating_types['add-laykkaniye']['type_point'], 
			  'rating_type' => 'add-laykkaniye' );
rcl_insert_rating($args); 
  
}

Редакции сообщения
22.12.2020 22:53bocman.sev@gmail.comПричина: не указано
0
Вы не имеете права на публикацию сообщений в этой теме