Все для DataLife Engine / DLE хаки / Хак для DLE / Расширение функций рейтинга DLE Нравится - Не нравится

Расширение функций рейтинга DLE Нравится - Не нравится


Представляем модификация стандартного рейтинга дле или хак Расширение функций рейтинга DLE Нравится - Не нравится, если у вас DLE 10.5 или выше. Хак для DLE Расширение функционала стандартного рейтинга "Нравится" - "Не нравится", который позволит вам сделать раздельный вывод минусов и плюсов в рейтинге DataLife Engine.

Обратите внимание, dle хак применим только для рейтинга - "Нравится" и "Не нравится" третьего типа, который можно выбрать в панели администратора сайта дле "Настройка системы". Данный вариант вывода рейтинга легко реализуем путем имеющихся данных и дополнительных изменений никаких в БД делать вам не придется.
Установка хака Расширение функций рейтинга DLE Нравится - Не нравится предельно проста
Приступим.

Открыть файл engine/modules/functions.php
Найти строку (первую, в функции ShowRating):
    } elseif ($config['rating_type'] == "2") {


После нее вставить:
        $rate_minus = ($vote_num - $rating)/2;
        $rating_plus = $rating + $rate_minus;

        $rated = <<<HTML
<div class="main-sliders-rate ignore-select">
    <a href="#" title="Нравится(+)" onclick="doRate('1', '$id'); return false;">
        <span>
            <svg viewBox="61.9 84.9 200.8 194.4">
                <path d="M237,146c-4-0.8-8.8-0.8-11.2-0.8h-41V98.6c0-8-6.4-13.7-13.7-13.7h-19.3c-7.2,0-12.9,4.8-15.3,11.2l-11.2,47.4c0,0.8-1.6,3.2-1.6,3.2l-19.3,20.1c0,0-0.8,0.8-0.8,1.6c-0.8,0-1.6,0.8-1.6,0.8H78.8c-8.8,0-16.9,5.6-16.9,14.5v61c0,8.8,8,16.1,16.9,16.1h23.3c1.6,0,3.2-0.8,4.8-0.8l16.1,13.7c4,3.2,9.6,5.6,14.5,5.6h72.3c39.4,0,53-31.3,53-57v-41.8C261.1,158,245.8,148.4,237,146z M81.2,186.9h18.5v56.2H81.2L81.2,186.9L81.2,186.9z M243.4,222.3c0,11.2-3.2,36.9-34.5,36.9h-72.3c-0.8,0-2.4-0.8-2.4-0.8l-16.1-12.9v-0.8v-61v-1.6c0-0.8,0-1.6,0.8-1.6l19.3-20.1c3.2-3.2,5.6-7.2,6.4-11.2l10.4-44.2h9.6v43.4c0,8,7.2,14.5,15.3,14.5h45c2.4,0,5.6,0,6.4,0.8c1.6,0.8,10.4,4,10.4,16.1C243.4,180.5,243.4,222.3,243.4,222.3z"></path>
            </svg>
            $rating_plus
        </span>
    </a>
    <a href="#" title="Не нравится(-)" onclick="doRate('-1', '$id'); return false;">
        <span>
            <svg viewBox="97.6 84.8 200.8 194.4">
                <path d="M298.4,183.6v-41.8c0-25.7-12.9-57-53-57h-72.3c-4.8,0-10.4,2.4-14.5,5.6l-16.1,13.7c-1.6-0.8-3.2-0.8-4.8-0.8h-23.3c-8.8,0-16.9,7.2-16.9,16.1v61c0,8.8,8,14.5,16.9,14.5h23.3c0.8,0,1.6,0.8,1.6,0.8s0,0.8,0.8,1.6l19.3,20.1c0.8,0.8,1.6,2.4,1.6,3.2l11.2,47.4c1.6,6.4,8,11.2,15.3,11.2h19.3c7.2,0,13.7-5.6,13.7-13.7v-45.8h41c2.4,0,7.2,0,11.2-0.8C283.1,215.7,298.4,206.1,298.4,183.6z M118.5,120.2H137v56.2h-18.5V120.2z M279.9,183.6c0,12.9-8.8,16.1-10.4,16.1c-1.6,0-4,0.8-6.4,0.8h-45c-8,0-15.3,6.4-15.3,14.5v43.4h-11.2l-10.4-44.2c-0.8-4-4-8-6.4-11.2l-19.3-20.1l-0.8-1.6v-1.6v-61v-0.8l16.1-12.9c0.8,0,1.6-0.8,2.4-0.8h72.3c31.3,0,34.5,25.7,34.5,36.9V183.6z"></path>
            </svg>
            $rate_minus
        </span>
    </a>
</div>
HTML;
        if( $allow ) $rated = "<div id=\"ratig-layer-$id\">$rated</div>";
        return $rated;




Готово. В шаблоне использовать один стандартный тег
{rating}


Стили и HTML код нагло взяты с сайта kinokong
Пример работы можно посмотреть тут - color.sandev(точка)pro

С уважением,
Олег Александрович a.k.a. Sander
Версия DLE 10.5 и выше, к примеру на свежей версии dle 11

Скачать классные хаки для dle можно у нас в разделе, как хак расширение функционала рейтинга DLE Нравится - Не нравится

Rasshirenie-funkciy-reytinga-DLE-Nravitsya-Ne-nravitsya.rar [21,63 Kb] (cкачиваний: 348)
  • 80

Комментарии 10

dle9.com от 30 ноября 2016 00:10
Цитата: Sergey
Хотя если честно, не получилось... в стиль тоже поставил, но пользы ноль... в новостях отображается и без стилей, а вот в других частях смешно выглядит
Внимание! У Вас нет прав для просмотра скрытого текста.

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

Ошибка в том, что вы не говорите версию движка, так подозреваю у вас версия 11.1 или нет ?????????


постр управляется стилями смотря в какой новости в короткой img-shortmain
Sergey от 29 ноября 2016 23:53
Хотя если честно, не получилось... в стиль тоже поставил, но пользы ноль... в новостях отображается и без стилей, а вот в других частях смешно выглядит
Внимание! У Вас нет прав для просмотра скрытого текста.
Sergey от 29 ноября 2016 23:07
Сработало. Был бы благодарен если бы Вы помогли понять в чем я ошибаюсь, уже шаблон перерыл не могу понять как длину постера изменить, везде где есть значение постер менял цифру ничего не работает. И непонятно как поиск сполз в мобильной версии. Может я что-то лишнее вставил?
dle9.com от 29 ноября 2016 22:57
Цитата: Sergey
А у меня не вышло, звездочки остались, уже все испробовал, стиль не размещал, не знал куда
Внимание! У Вас нет прав для просмотра скрытого текста.

1. версию движка надо указывать
2. стили это важно, в файл с расширением .CSS , например если это был бы шаблон от движка, папка Default/css/styles.css

И ещё в версии 11 в панели управления есть разные режимы рейтинга, 1,2,3 нужно попробовать один из вариантов.

Хотя возможно даже этот хак не надо для 11 версии, там такой уже есть режим подходящий вам.
Sergey от 29 ноября 2016 22:41
А у меня не вышло, звездочки остались, уже все испробовал, стиль не размещал, не знал куда
Внимание! У Вас нет прав для просмотра скрытого текста.
dle9.com от 24 октября 2016 17:56
можно ещё взять теги в fullstory.tpl оформления (категории даты и т.д. после тайтла), скопировать удалть все лишнее и туда добавить тег {rating}

Просто вы вставили {rating} в пустое место без оформления тегов стилями div , поэтому отступления нет
dle9.com от 24 октября 2016 17:51
в шаблоне значит есть такой стиль оформления, без слова просто left или так

<div style="margin-left:10px;">{rating}</div>
DiGiTaL от 24 октября 2016 16:53
Цитата: dle9.com
Как выровнять ?
http://img-host.org.ua/

Теперь вот так :lol:
dle9.com от 24 октября 2016 15:43
Цитата: DiGiTaL
Dle 11.0
Как выровнять ?
Внимание! У Вас нет прав для просмотра скрытого текста.

сделать так

<div style="padding-left:10px;">{rating}</div>


если с левой стороны будет не ровно добавьте значения больше 10 в коде
DiGiTaL от 24 октября 2016 14:32
Dle 11.0
Как выровнять ?
Внимание! У Вас нет прав для просмотра скрытого текста.
Добавить комментарий

Оставить комментарий

    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent