Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Как сделать микроразметку рейтинга для DLE 10.4?

Как сделать микроразметку рейтинга для DLE 10.4?


     11.06.2015    Все вопросы » Общие вопросы    1767

вопрос
Подскажите как сделать микроразметку рейтинга (5 звезд который) для сайта DLE 10.4?
Помню у Алаича была инструкция но для старых версий. есть ли для 10.4 инструкция где нибудь?

Ответил: ПафНутиЙ


рейтинг с тех пор не изменился, делайте по аналогии со старыми версиями.

14 комментариев

Lynat1k
Юзер

Lynat1k - 11 июня 2015 10:28 -

инструкции применимы для DLE версий 9.6 и 9.7
уже много чего изменилось
код в интсрукции Алаича не совпадает с 10.4

ПафНутиЙ
Админ

ПафНутиЙ - 11 июня 2015 17:53 -

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

Каков вопрос - таков и ответ. Просто помните об этом.

Lynat1k
Юзер

Lynat1k - 11 июня 2015 19:20 -

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

код в инструкции который надо заменить
function ShowRating($id, $rating, $vote_num, $allow = true) {
    global $lang;
    
    if( $rating AND $vote_num ) $rating = round( ($rating / $vote_num), 0 );
    else $rating = 0;
    $rating = $rating * 20;
    
    if( !$allow ) {
        
        $rated = <<<HTML
<div class="rating">
        <ul class="unit-rating">
        <li class="current-rating" style="width:{$rating}%;">{$rating}</li>
        </ul>
</div>
HTML;
        
        return $rated;
    }
    
    $rated = <<<HTML
<div id='ratig-layer-{$id}'><div class="rating">
        <ul class="unit-rating">
        <li class="current-rating" style="width:{$rating}%;">{$rating}</li>
        <li><a href="#" title="{$lang['useless']}" class="r1-unit" onclick="doRate('1', '{$id}'); return false;">1</a></li>
        <li><a href="#" title="{$lang['poor']}" class="r2-unit" onclick="doRate('2', '{$id}'); return false;">2</a></li>
        <li><a href="#" title="{$lang['fair']}" class="r3-unit" onclick="doRate('3', '{$id}'); return false;">3</a></li>
        <li><a href="#" title="{$lang['good']}" class="r4-unit" onclick="doRate('4', '{$id}'); return false;">4</a></li>
        <li><a href="#" title="{$lang['excellent']}" class="r5-unit" onclick="doRate('5', '{$id}'); return false;">5</a></li>
        </ul>
</div></div>
HTML;
    
    return $rated;
}

function userrating($id) {


код в 10.4
function ShowRating($id, $rating, $vote_num, $allow = true) {
    global $lang, $config;

    if( !$config['rating_type'] ) {
        
        if( $rating AND $vote_num ) $rating = round( ($rating / $vote_num), 0 );
        else $rating = 0;
        
        if ($rating < 0 ) $rating = 0;

        $rating = $rating * 20;
    
        if( !$allow ) {
        
            $rated = <<<HTML
<div class="rating">
        <ul class="unit-rating">
        <li class="current-rating" style="width:{$rating}%;">{$rating}</li>
        </ul>
</div>
HTML;
        
            return $rated;
        }
    
        $rated = <<<HTML
<div id='ratig-layer-{$id}'><div class="rating">
        <ul class="unit-rating">
        <li class="current-rating" style="width:{$rating}%;">{$rating}</li>
        <li><a href="#" title="{$lang['useless']}" class="r1-unit" onclick="doRate('1', '{$id}'); return false;">1</a></li>
        <li><a href="#" title="{$lang['poor']}" class="r2-unit" onclick="doRate('2', '{$id}'); return false;">2</a></li>
        <li><a href="#" title="{$lang['fair']}" class="r3-unit" onclick="doRate('3', '{$id}'); return false;">3</a></li>
        <li><a href="#" title="{$lang['good']}" class="r4-unit" onclick="doRate('4', '{$id}'); return false;">4</a></li>
        <li><a href="#" title="{$lang['excellent']}" class="r5-unit" onclick="doRate('5', '{$id}'); return false;">5</a></li>
        </ul>
</div></div>
HTML;
    
        return $rated;

    } elseif ($config['rating_type'] == "1") {
        
        if( $rating < 0 ) $rating = 0;
        
        if( $allow ) $rated = "<span id=\"ratig-layer-{$id}\" class=\"ignore-select\"><span class=\"ratingtypeplus ignore-select\" >{$rating}</span></span>";
        else $rated = "<span class=\"ratingtypeplus ignore-select\" >{$rating}</span>";
        
        return $rated;
    
    } elseif ($config['rating_type'] == "2") {
        
        $extraclass = "ratingzero";
        
        if( $rating < 0 ) {
            $extraclass = "ratingminus";
        }
        
        if( $rating > 0 ) {
            $extraclass = "ratingplus";
            $rating = "+".$rating;
        }
        
        if( $allow ) $rated = "<span id=\"ratig-layer-{$id}\" class=\"ignore-select\"><span class=\"ratingtypeplusminus ignore-select {$extraclass}\" >{$rating}</span></span>";
        else $rated = "<span class=\"ratingtypeplusminus ignore-select {$extraclass}\" >{$rating}</span>";
        
        return $rated;
        
    }
    
}


пробовал но выдало ошибку при открытии статьи

Lynat1k
Юзер

Lynat1k - 12 июня 2015 13:45 -


Вот вам и по аналогии делал
http://clip2net.com/clip/m176571/e042f-clip-93kb.jpg

Lynat1k
Юзер

Lynat1k - 11 июня 2015 10:48 -

делал по аналогии выдало ошибку в /engine/modules/functions.php on line 298

kolumb
Юзер

kolumb - 11 июня 2015 14:07 -

Beyond Compare в помощь!

Lynat1k
Юзер

Lynat1k - 11 июня 2015 15:46 -

это что такое?

Lynat1k
Юзер

Lynat1k - 11 июня 2015 17:28 -

и зачем мне софт для сравнения???? я и так вижу что содержание файлов разное!

kolumb
Юзер

kolumb - 11 июня 2015 17:46 -

Для того что бы понять что изменилось! Так легче будет подгонять внесенные изменения!

Lynat1k
Юзер

Lynat1k - 11 июня 2015 17:54 -

я и так вижу что изменилось и там больше изменения. у меня нет такого познаний в php чтобы все сиправитьк ак надо
в 10.4 же несколько видов рейтинга в отличие от старых версий..это надо как то учиытывать

Artyom91
Юзер

Artyom91 - 12 июня 2015 05:21 -

Тоже интересует этот вопрос.

Lynat1k
Юзер

Lynat1k - 20 июня 2015 22:25 -

Актуально..кто нибудь помогите

Epic
Юзер

Epic - 20 марта 2017 18:50 -

На форуме у Алаича помог всем Hooligan
http://talk.alaev.info/topic/910/

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

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

наверх