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

Изменить вывод тегов


     04.05.2013    теги    Общие вопросы, Общие вопросы по PHP, Хаки    11964

вопрос
Подскажи, как можно отредактировать вывод "Облака тегов"?
Для примера привожу, то что должно получиться
Изменить вывод тегов

Сейчас это выводится, как слова расположенные в алфавитном порядке друг за другом.

Ответил: Sander


Открыть файл engine/modules/tagscloud.php
Во второй половине файла найти строку:
if (trim($value['tag']) != "" ) {

Сразу после нее вставить:
$last_symb = strtoupper(substr($value['tag'],0,1));

Для UTF-8:
$last_symb = mb_strtoupper(mb_substr($value['tag'],0,1,$config['charset']),$config['charset']);


Чуть ниже найти код, 2 шт:
$tags[] = "<a href

Оба заменить на
$tags[$last_symb][] = "<a href


И еще ниже, после цикла, найти строку:
$tags = implode(", ", $tags);

Заменить на:
        $list = "";
        foreach($tags as $k=>$v){
            $list .= "\n<h3>{$k}</h3>\n\n".implode(", ", $v);
        }
        $tags = $list;

Пример полученного:
https://dle-faq.ru/?do=tags

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

rashpil
Эксперт

rashpil - 6 мая 2013 09:45 -

Я в подобной ситуации из запроса к БД создавал массив. Ключами к которому были номера букв в таблице аски, а элементами массивы с данными. И получалось у меня 2 цикла. Могу написать такое тебе, но за денежку 419694531

nowheremany
Эксперт

nowheremany - 6 мая 2013 10:51 -

Запрос лишний, а цикл -да, по любому ещё один делать по первым символам

Благодарность принимаю тут Связь

snake2010
Юзер

snake2010 - 6 мая 2013 16:26 -

Sander спасибо большое за ответ. В связи с этим появился новый вопрос по теме. На сколько сильно этот Хак нагружает сервер? Я заметил по Вашей ссылке, уж очень сильно тормозит страница. Если бы был выбор сделать так как предлагаете Вы или усложнить себе задачу и сделать такую же страницу вручную, то чему отдать предпочтение?

Sander
PHP-developer

Sander - 6 мая 2013 17:04 -

Именно этот хак вообще не нагружает страницу.

SanDev.pro - мой блог.

Telegram: @sandev
Skype: Sander8804

snake2010
Юзер

snake2010 - 6 мая 2013 17:40 -

Sander - это здорово, но все же Ваша страница заметно тормозит. Надеюсь это никак не связано с данным Хаком. Проверю на себе :) В заключении к Вам есть еще два маленьких вопроса по теме.
1. Возможно ли слова "Облако тегов" поменять на свои? - пробывал менять, то что возможно, не получилось.
2. Как убрать всплывающее окошко с количеством тегов?
Заранее благодарен.

Sander
PHP-developer

Sander - 6 мая 2013 18:46 -

Моя страница - это которая? Наибольшую нагрузку данный хак создает на мозг администратора в процессе установки. Все остальные торможения - это лишь остаточные колебания.
1. Откройте файл шаблона tagscloud.tpl и там меняйте. После изменений нужно очистить кеш.
2. в коде удалить
 title=\"".$lang['tags_count']." ".$value['count']."\"

SanDev.pro - мой блог.

Telegram: @sandev
Skype: Sander8804

Gopr
Юзер

Gopr - 8 января 2014 22:32 -

Поправьте ответ!
В самом низу после Заменить на: пусто а должно быть:
$list = "";
        foreach($tags as $k=>$v){
            $list .= "\n<h3>{$k}</h3>\n\n".implode(", ", $v);
        }
        $tags = $list;
которое почему то выше..
Глюк, после обновления страницы все стало как надо (-_-')

psarovskiy
Юзер

psarovskiy - 21 января 2014 05:35 -

подскажите, почему {$k} на странице всех тегов выводится знаком вопроса в ромбе?

psarovskiy
Юзер

psarovskiy - 21 января 2014 07:11 -

вопрос решен

Dr.Parlament
Юзер

Dr.Parlament - 1 февраля 2014 10:56 -

Мне это тоже интересно. Как исправили?

psarovskiy
Юзер

psarovskiy - 1 февраля 2014 13:48 -

привет, мне такое решение помогло

$last_symb = strtoupper(mb_substr($value['tag'],0,1), "UTF-8");

Димка_87
Юзер

Димка_87 - 7 сентября 2015 19:22 -

отправьте пожалуйста готовый отредактированный файл tagscloud.php, сделал все по инструкции но работь отказывается

Димка_87
Юзер

Димка_87 - 7 сентября 2015 20:23 -

ссори все работает, хотя что то кодировка гонит но думаю разберусь

Neostaf
Юзер

Neostaf - 2 октября 2015 19:13 -

Все сделал по инструкции но теперь пропали теги и вместо них числа от 1 до 5000 тыщ в чем может быть проблема?

king
Юзер

king - 27 сентября 2016 09:54 -

Neostaf, у меня тоже самое.
Как решили проблему?

Puma08
Юзер

Puma08 - 5 марта 2016 09:35 -

Здравствуйте... При просмотре всех тегов работает а как сделать чтоб оно работало на главной странице сайта...

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

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

наверх