Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Шаблоны (TPL) » Сделать тег {favorites} не кнопкой, а ссылкой?

Сделать тег {favorites} не кнопкой, а ссылкой?


     29.08.2013    favorites    Все вопросы » Шаблоны (TPL)    4776

вопрос
Сделать тег {favorites} не кнопкой, а ссылкой? т.е. хочу заменить кнопку с каринкой на просто надпись ссылкой "Добавить в закладки", "Удалить из закладок".
Пробовал в файлах пхп заменять в выводе кусок кода с имг на текст, не получается. Заранее спасибо за ответ.

Ответа пока нет


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

Апельсин
Юзер

Апельсин - 29 августа 2013 03:25 -

И что тебе мешает? Открой файлик стилей, он можент быть таким style.tpl и там найди стили этой кнопки. Ищи по названию картинки (plus.gif и minus.gif) ну и собственно удали картнку. Дальше сам напиши, что тебе нужно видеть.

Gopr
Юзер

Gopr - 29 августа 2013 12:56 -

Понадобятся файлы: search.php, show.custom.php, show.full.php, show.short.php
В каждом из них ищем код ,как уже было сказано по картинкам minus_fav.gif и plus_fav.gif
Разберем show.short.php - закладки в коротких новостях.
Строка которая добавляет в закладки
if( ! in_array( $row['id'], $fav_arr ) or $config['allow_cache'] == "yes" ) $tpl->set( '{favorites}', "<a id=\"fav-id-" . $row['id'] . "\" href=\"$PHP_SELF?do=favorites&doaction=add&id=" . $row['id'] . "\"><img src=\"" . $config['http_home_url'] . "templates/{$config['skin']}/dleimages/plus_fav.gif\" onclick=\"doFavorites('" . $row['id'] . "', 'plus'); return false;\" title=\"" . $lang['news_addfav'] . "\" style=\"vertical-align: middle;border: none;\" alt=\"\" /></a>" );

Строка которая удаляет из закладок
else $tpl->set( '{favorites}', "<a id=\"fav-id-" . $row['id'] . "\" href=\"$PHP_SELF?do=favorites&doaction=del&id=" . $row['id'] . "\"><img src=\"" . $config['http_home_url'] . "templates/{$config['skin']}/dleimages/minus_fav.gif\" onclick=\"doFavorites('" . $row['id'] . "', 'minus'); return false;\" title=\"" . $lang['news_minfav'] . "\" style=\"vertical-align: middle;border: none;\" alt=\"\" /></a>" );

Заменяем на следующий код строку добавления в закладки
if( ! in_array( $row['id'], $fav_arr ) or $config['allow_cache'] == "yes" ) $tpl->set( '{favorites}', "<a id=\"fav-id-" . $row['id'] . "\" href=\"$PHP_SELF?do=favorites&doaction=add&id=" . $row['id'] . "\"><span onclick=\"doFavorites('" . $row['id'] . "', 'plus');return false\">Добавить в закладки</span></a>" );

Теперь строка удаления из закладок
else $tpl->set( '{favorites}', "<a id=\"fav-id-" . $row['id'] . "\" href=\"$PHP_SELF?do=favorites&doaction=del&id=" . $row['id'] . "\"><span onclick=\"doFavorites('" . $row['id'] . "', 'minus');return false\">Удалить из закладок</span></a>" );

Остальные файлы изменяйте по аналогии.

shamanim
Юзер

shamanim - 29 августа 2013 18:04 -

2Gopr, ты сам то пробовал свой способ? у меня ничего не получилось в свое время, пришлось делать по старинке:

https://dle-faq.ru/faq/phpquest/5166-dobavlenie-ssylki-s-tekstom-k-ikonke-dobavit-v-izbrannoe.html

Gopr
Юзер

Gopr - 2 сентября 2013 23:45 -

Этот способ стоит у меня на сайте и все работает, единственное НО это версия движка (9.7) может как то влиять. Хотя врятли...
Вот уже обработанный html код движком:
<a id="fav-id-395" href="http://ваш_сайт/index.php?do=favorites&doaction=add&id=Тут номер новости"><span onclick="doFavorites('Тут номер новости', 'plus');return false">Добавить в закладки</span></a>

shamanim
Юзер

shamanim - 2 сентября 2013 20:37 -


Exile
Гости

Exile - 2 сентября 2013 21:37 -

Мой хак кому-то все-таки пригодился :)

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

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

 07.07.2011 Mexalim  Шаблоны (TPL)
наверх