Задаем CSS классы ссылкам выводимые тегами DLE


Стилизуем ссылки выводимые тегами типа {pm} ; {news} ; {comments} и т д DLE
В этой статейке я покажу и расскажу как легко и можно стилизовать ссылки на странице профиля, в облаке тегов, теги в краткой и полной новости и так далее..
Как правило эти ссылки не прописываются в .tpl файле и генерируются движком а в самих tpl файлах выводятся тегами, как показано выше.

Давайте разберем несколько ссылок и попробуем их приукрасить.
Например тег {pm} который отвечает за вывод ссылки "Написать ПС" на странице пользователя.
Открываем файл engine/modules/profile.php и ищем строку:

$tpl->set( '{pm}', "<a href=\"$PHP_SELF?do=pm&doaction=newpm&username=" . urlencode($row['name']) . "\">" . $lang['
И просто добавляем к ссылке свой css класс. К примеру  class="badge-light"  
В php это делается через символ "\" должно получится следующее:
$tpl->set( '{pm}', "<a  class=\"badge-light\" href=\"$PHP_SELF?do=pm&doaction=newpm&username=" . urlencode($row['name']) . "\">" . $lang['
Сам текст ссылки "Написать ПС" можно изменить в файле /language/Russian/website.lng


Так же делаем и с остальными ссылками.

{news} - Тег отвечающий за вывод ссылки "Просмотреть все публикации" на странице профиля.
Ищем в файле profile.php строку:
$tpl->set( '{news}', "<a href=\"" . $config['http_home_url'] . "user/" . urlencode( $row['name'] ) . "/news/" . "\">"
Добавляем свой css класс и получаем:
$tpl->set( '{news}', "<a class=\"badge-light\" href=\"" . $config['http_home_url'] . "user/" . urlencode( $row['name'] ) . "/news/" . "\">"

{comments} - Тег отвечающий за вывод ссылки "Последние комментарии" на странице профиля.
Ищем так же в файле profile.php:
$tpl->set( '{comments}', "<a href=\"$PHP_SELF?do=lastcomments&userid=" . $row['user_id'] . "\">"
Добавляем свой класс и получаем:
$tpl->set( '{comments}', "<a class=\"badge-light\" href=\"$PHP_SELF?do=lastcomments&userid=" . $row['user_id'] . "\">"
Ну и так далее..

Теперь давайте попробуем изменить класс тегам в новостях и в самом облаке тегов.
Для этого нам понадобится файл engine/modules/show.short.php ; show.full.php ; show.custom.php открываем все три файла и ищем:
if( $config['allow_alt_url'] ) $tags[] = "<a href=\"" . $config['http_home_url'] . "tags/" . urlencode( $value ) . "/\">" . $value . "</a>";
                else $tags[] = "<a href=\"$PHP_SELF?do=tags&tag=" . urlencode( $value ) . "\">" . $value . "</a>";
Так же приписываем к ссылкам свой css класс и сохраняем все три файла.

Для того чтобы задать классы в самом облаке тегов, откройте файл engine/modules/tagscloud.php и так же задайте ссылкам свой класс.

Красивые кнопки можно взять к примеру с вот ЭТОЙ статьи.

Ну вот и всё.. smile Если вдруг найду ещё что нибудь подобное, обязательно поделюсь с тобой, Гость!скачать dle 11.1смотреть фильмы бесплатно


dle css style tags классы css3 хак
Комментариев 4
  1. AleZ
    laughing Обращение в конце статьи немного пугает )
    Не сразу понимаешь, что подставляется для каждого свое )
    1. Stanislavskiy11 Админ Ответ
      Ну а вдруг laughing Двери перед сном не забывайте проверять joy 
  2. WYLEK
    Долго не мог понять (пол часа), почему не получается сделать такой эффект. Посмотрел кишки этого сайта, оказалось, что файл bootstrap.css моего шаблона FlatyG не имеет класса badge-light. Скачал бета4 - поплыл шаблон, скачал отсюда - то же самое. Добавил в свой кусок кода - все заработало. Прикольно - для каждого шаблона правка файла bootstrap.css  stuck_out_tongue_winking_eye 
    1. Stanislavskiy11 Админ Ответ
      В шаблоне FlatyG 3 версия bootstrap.
      В примере данной статьи указаны элементы из 4 версии.
      Читайте документацию на http://getbootstrap.com/
Информация