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

Настройка тегов в короткой новости


     12.07.2014    новость, цвет    Общие вопросы по вёрстке, Шаблоны (TPL)    3540

вопрос
Нужно вывести ключевые слова в короткую новость из пункта "Ключевые слова для облака тегов:", раздела "Дополнительно" при добавлении новости на сайт. Я знаю, что выводить можно добавив тег {tags} в shortstory.tpl. Таким образом он будет выводить все теги введенные мной в данном поле. Но мне нужно указать именно первый тег, пробовал так {tags limit=1}, не работает, это первая часть беды, вторая заключается как мне настроить стиль для этого поля.
Буду очень признателен, если вы наставите хоть на нужный путь, а не дадите точного ответа.
Заранее благодарю.

Ответил: vitnet


Открыть файл engine/modules/show.short.php

Найти
        } else {
            $tpl->set_block( "'\\[tags\\](.*?)\\[/tags\\]'si", "" );
            $tpl->set( '{tags}', "" );
         }

ниже добавить
        if( preg_match( "#\\{tags limit=['\"](.+?)['\"]\\}#i", $tpl->copy_template, $matches ) ) {
            $count = intval($matches[1]);
            
            $tpl->set( '[tags]', "" );
            $tpl->set( '[/tags]', "" );
            
            $tags_c = 0;
            $tags_v = array ();
            
            $row['tags'] = ( !is_array($row['tags']) ) ? explode( ",", $row['tags'] ) : $row['tags'];
    
            foreach ( $row['tags'] as $value ) {
                $value = trim( $value );
                $tags_c++;

                if( $config['allow_alt_url'] ) $tags_v[] = "<a href=\"" . $config['http_home_url'] . "tags/" . urlencode( $value ) . "/\">" . $value . "</a>";
                else $tags_v[] = "<a href=\"$PHP_SELF?do=tags&amp;tag=" . urlencode( $value ) . "\">" . $value . "</a>";

                if( $tags_c >= $count ) break;
            }

            $tpl->set( $matches[0], implode( ", ", $tags_v ) );
        } else {
            $tpl->set_block( "'\\[tags\\](.*?)\\[/tags\\]'si", "" );
        }

Готово!

1 комментарий

Gopr
Юзер

Gopr - 12 июля 2014 20:42 -

На v9.7
[tags][/tags]
всегда скрывают код, даже если у новости есть теги
{tags limit=1} - выводится просто текстом

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

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

наверх