Поддержка Плагины WP-PostRatings

  • Добрый день,
    Подскажите пожалуйста,
    Стоит, WordPress 4.9.9, плагин WP-PostRatings

    Очень нужна помощь,
    Изменить плагин WP-PostRatings — нужно что б рейтинг по умолчанию был максимальный ?
    То есть, в новых постах или в постах где нет рейтинга — стояло по умолчанию максимум.

    Подскажите, хотя бы куда копать в каком файле нужно изменить.
    С WordPress мало знаком, в основном с Joomla.

    • Тема изменена 5 лет, 4 месяца назад пользователем warlocksp.
Просмотр 1 ответа (всего 1)
  • Решил сам в файл: «functions.php»
    Добавил:

    /**
    * Функция автоматического добавления рейтинга новым записям
    * 
    * @param ind $post_id уникальный идентификатор поста
    */
    function save_postratings_for_post( $post_id ) {
    	// Если это ревизия - ничего не делаем
    	if ( wp_is_post_revision( $post_id ) )
    		return;
    	
    	// Смотрим, есть ли данные о проголосовавших юзерах
    	  // Функция срабатывает при обновлении записи, потому исключаем момент с подменой данных
    	$ratings_users = (int)get_post_meta($post_id, 'ratings_users', true);
    	if($ratings_users > 0)
    		return;
    		
    	// Узнаем, какой максимальный рейтинг доступен (указывается в настройках плагина)
    	  // А также проверим, если такой опции нет, то плагин отсутствует и смысла добавлять данные нет
    	$postratings_max = (int)get_option('postratings_max');
    
    	if(!$postratings_max)
    		return;
    		
    	// Добавляем рандомные данные
    	  // В функцию random_int первым параметром передаётся минимальный возможный рейтинг, вторым - максимальный
    	$score_and_average = random_int(1, $postratings_max);
    	  // Общий рейтинг (ratings_average = ratings_score / ratings_users)
    	update_post_meta($post_id, 'ratings_average', $score_and_average);
    	  // Сумма рейтинга ( ratings_score_user_1 + ratings_score_user_2 + .... + ratings_score_user_n )
    	update_post_meta($post_id, 'ratings_score', $score_and_average);
    	  // Количество проголосовавших людей
    	update_post_meta($post_id, 'ratings_users', 1);
    }
    add_action( 'edit_post', 'save_postratings_for_post' );
    • Ответ изменён 5 лет, 4 месяца назад пользователем warlocksp.
Просмотр 1 ответа (всего 1)
  • Тема «WP-PostRatings» закрыта для новых ответов.