Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы по вёрстке Как вывести изображение при нужном рейтинге новости?

Как вывести изображение при нужном рейтинге новости?


     23.04.2016    Общие вопросы по вёрстке, Хаки    401

вопрос
Как вывести изображение при нужном рейтинге новости?
Например если новость набрала 20 лайков, то на главной странице в краткой новости будет звездочка (изображение).
Немогу найти как это осуществить. Стандарта я так понял пока еще нет у ДЛЕ.

Ответил: Gameer


1. Открываем /engine/modules/show.full.php , show.short.php , show.custom.php находим
if( $row['allow_rate'] ) {
Выше вставляем :
if( strpos( $tpl->copy_template, "[rateif" ) !== false)
{
    $tpl->copy_template = preg_replace_callback("'\\[rateif:(.*?):(.*?)\\](.*?)\\[/rateif\\]'is", function($matches) use ($row)
    {
        $check = trim(stripslashes($matches[2]));
        switch($check)
        {
            case ">":
                    if(intval($matches[1]) > $row['rating']) return $matches[3];
                    else return "";
                break;
            case ">=":
                    if(intval($matches[1]) >= $row['rating']) return $matches[3];
                    else return "";
                break;
            case "<":
                    
                    if(intval($matches[1]) < $row['rating']) return $matches[3];
                    else return "";
                break;
            case "<=":
                    if(intval($matches[1]) <= $row['rating']) return $matches[3];
                    else return "";
                break;
        }
    } , $tpl->copy_template);
}

2. В краткой, полной и шаблонах для тега custom пишем
[rateif:число рейтинга:знак равенства]текст любой[/rateif]
К примеру :
[rateif:20:<]{image-1}[/rateif]
- выведет ссылку на первую картинку если рейтинг больше 20
[rateif:20:<=]{image-1}[/rateif]
- выведет ссылку на первую картинку если рейтинг больше или равен 20
[rateif:20:>]{image-1}[/rateif]
- выведет ссылку на первую картинку если рейтинг меньше 20
[rateif:20:>=]{image-1}[/rateif]
- выведет ссылку на первую картинку если рейтинг меньше или равен 20

Комментарии пользователей (1)

andros0705
103 | 17

andros0705 - 24 апреля 2016 15:12 - Юзер

Спасибо родной!

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы