Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Шаблоны (TPL) » Как добавить в fullstory источник на новость обрезав полную ссылку?

Как добавить в fullstory источник на новость обрезав полную ссылку?


     25.07.2016    Все вопросы » Шаблоны (TPL)    3009

вопрос
Добрый день!

Добавил дополнительное поле "source" через админпанель, вставил в fullstory.tpl вот такой код:


<br><br><div align="right"><div class="news">
[xfgiven_source]<font color="red"><b>Источник: </font><font color="blue">[xfvalue_source]</font></b></font>[/xfgiven_source]</div></div>

Вопрос:

При добавлении источника на новость хотелось бы, что бы ссылка обрезалась до вида:
[color=#FF0000]Источник:[/color] [leech=http://domain.com/main/132-silka-na-novost]domain.com[/leech]
или просто скрывалась словом
[leech=http://domain.com/main/132-silka-na-novost]Источник[/leech]


а не имела полную ссылку на новость:
[color=#FF0000]Источник:[/color] [leech=http://domain.com/main/132-silka-na-novost]http://domain.com/main/132-silka-na-novost[/leech] 


дело в том, что в некоторых случаях ссылки бывают очень длинные, не умещаются в строчку, и с другой стороны выглядит это как-то не красиво.

Ребят помогите плиз с кодом.

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


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

SWM
Юзер

SWM - 25 июля 2016 12:58 -

<br><br><div align="right"><div class="news">
[xfgiven_source]<a href="[xfvalue_source]"><font color="red"><b>Источник</b></font></a>[/xfgiven_source]</div></div>

попробуйте так

freezmix
Юзер

freezmix - 25 июля 2016 13:30 -


Нет не то. Вот что получается

Adrian
Юзер

Adrian - 25 июля 2016 13:20 -

Есть много способов! На пример сервис https://goo.gl/ или можно через CSS настроить. Могу помочь!

freezmix
Юзер

freezmix - 25 июля 2016 13:33 -

Про этот сервис я знаю. А что можно настроить через CSS? Можете написать тут?

SWM
Юзер

SWM - 25 июля 2016 13:36 -

я исправил код, не верно в начале написал

freezmix
Юзер

freezmix - 25 июля 2016 13:48 -


Пробовал Ваш код выше, тоже самое получается, что на рисунке в моем комментарии который выше.

Вы же меня поняли, что я хочу вот так? И что бы автоматом было подставлялось. Смотрите еще один скрин прикрепленный, вот как я хочу, но это после редактирования в ручную ссылки в доп.поле топике в админке

dle-faq.ru

irrwisch
Юзер

irrwisch - 25 июля 2016 13:56 -

Ох как я люблю людей из серии "хочу как на скриншоте". настройки своего поля "source" в студию, и как туда ссылку вставляете?

freezmix
Юзер

freezmix - 25 июля 2016 14:06 -


Ну так все просто в админке в дополнительные поля:

1.Название поля: source
2.Описание поля: Источник
3.Категория: Все
4.Тип поля: Одна строка
5.Значение по умолчанию: пустое
Скриншот смотрите

При добавлении новости ../addnews.html в поле "Источник" вписываю

http://dle-faq.ru/faq/tpl/20046-kak-dobavit-v-fullstory-istochnik-na-novost-obrezav-polnuyu-ssylku.html

irrwisch
Юзер

irrwisch - 25 июля 2016 14:14 -

тогда код, который в первом посте, должен работать
<br><br><div align="right"><div class="news">
[xfgiven_source]<a href="[xfvalue_source]"><font color="red"><b>Источник</b></font></a>[/xfgiven_source]</div></div>

просто он не через leech, что бы вставлялось через leech, нужен тип поля несколько строк с подключенным редактором и через редактор вставлять

SWM
Юзер

SWM - 25 июля 2016 14:21 -

можно просто прописать ссылку
http://dle-faq.ru/engine/go.php?url= сюда добавить код зашифрованной ссылки 
http://prntscr.com/bx83ey

irrwisch
Юзер

irrwisch - 25 июля 2016 14:27 -

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

SWM
Юзер

SWM - 25 июля 2016 14:13 -

Должно получиться как на срине , именно так как вы хотите
<br><br><div align="right"><div class="news">
[xfgiven_source]<font color="red"><b>Источник: </b></font><a href="[xfvalue_source]"><font color="blue">[xfvalue_source]</font></a>[/xfgiven_source]</div></div>


Проверял у себя работает нормально
http://prntscr.com/bx7ztq

irrwisch
Юзер

irrwisch - 25 июля 2016 14:19 -

не, вы его не поняли, он хочет что бы ссылка была заменена словом источник, но при этом срабатывал тег leech, что бы ссылка была зашифрована и казалась поисковикам внутренней.

SWM
Юзер

SWM - 25 июля 2016 14:25 -

Тога первый пост то что ему надо. и коментарий пусть смотрит под номером #57321

freezmix
Юзер

freezmix - 25 июля 2016 14:40 -

Да мне не нужно скрывать ссылку от поисковиков, мне нужно что бы автоматом ссылка сокращалась к примеру до домена.

Пример: вписал в поле "Источник"
http://dle-faq.ru/faq/tpl/20046-kak-dobavit-v-fullstory-istochnik-na-novost-obrezav-polnuyu-ssylku.html


В топике что бы отобразилось так: dle-faq.ru или просто "Источник", но что бы при нажатии на эту ссылку или слово "Источник" переходило по ссылке:

http://dle-faq.ru/faq/tpl/20046-kak-dobavit-v-fullstory-istochnik-na-novost-obrezav-polnuyu-ssylku.html


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

В HTML выглядит это так:

[url=http://dle-faq.ru/faq/tpl/20046-kak-dobavit-v-fullstory-istochnik-na-novost-obrezav-polnuyu-ssylku.html]dle-faq.ru[/url]

или так
[url=http://dle-faq.ru/faq/tpl/20046-kak-dobavit-v-fullstory-istochnik-na-novost-obrezav-polnuyu-ssylku.html]Источник[/url]


Но я не знаю как вставить это с переменными в fullstory и что бы все это автоматом было

irrwisch
Юзер

irrwisch - 25 июля 2016 14:52 -

В html это выглядит так
<a href="http://site.com" title="Источник">Источник</a>

сам линк заменяем на ваше поле, получаем
[xfgiven_source]<a href="[xfvalue_source]" title="Источник">Источник</a>[/xfgiven_source]
теперь сюда добавим ещё 2 ваших div'a
<br><br><div align="right"><div class="news">[xfgiven_source]<a href="[xfvalue_source]" title="Источник">Источник</a>[/xfgiven_source]</div></div>
и получаем нужный вам результат

freezmix
Юзер

freezmix - 25 июля 2016 15:09 -


Сорри два сообщения ниже ошибочно Вам отослал.

С вашим кодом:

<br><br><div align="right"><div class="news">[xfgiven_source]<a href="[xfvalue_source]" title="Источник">Источник</a>[/xfgiven_source]</div></div> 


вот что получается

freezmix
Юзер

freezmix - 25 июля 2016 14:28 -

Так у меня тоже самое получает, что у Вас на скриншоте, только по моему коду который в топике выше. С вашим у меня вот так только что пробовал. Ссылка на скриншот Мне нужно при вставки ссылки полной:
http://dle-faq.ru/faq/tpl/20046-kak-dobavit-v-fullstory-istochnik-na-novost-obrezav-polnuyu-ssylku.html

А мне нужно что бы эта ссылка скрывалась за словом "Источник" тем самым что бы слово было кликабельное и при клике на него переходило на полную ссылку которая выше, ну или же ссылка что бы резалась до имени домена: dle-faq.ru то есть и при нажатии на него тоже самое происходило с переходом на полную ссылку.

SWM
Юзер

SWM - 25 июля 2016 14:54 -

Я так понял вам надо сделать так надпись Источник и при нажатие переходило на сайт оригинал текста ? при этом сделать чтоб через админку добавлять url сайта ?

freezmix
Юзер

freezmix - 25 июля 2016 15:05 -


Сорри два сообщения ниже ошибочно Вам отослал.

С вашим кодом:

<br><br><div align="right"><div class="news">[xfgiven_source]<a href="[xfvalue_source]" title="Источник">Источник</a>[/xfgiven_source]</div></div> 


вот что получается

freezmix
Юзер

freezmix - 25 июля 2016 15:06 -

...

freezmix
Юзер

freezmix - 25 июля 2016 15:07 -

Ну если правильно Вас понял, то именно так :)

SWM
Юзер

SWM - 25 июля 2016 15:12 -

так че вы нам еб....е мозг ?
в файле fullstory.tpl где надо прописываете
<br><br><div align="right"><div class="news">[xfgiven_source]<a href="[xfvalue_source]" title="Источник">Источник</a>[/xfgiven_source]</div></div>

Что тут сложного ????????????????????? и вот получается результат http://prntscr.com/bx8qeo

freezmix
Юзер

freezmix - 25 июля 2016 15:15 -


Но это ручками вписывать будет нужно каждый раз. Просто модераторы не имеют доступ в админку. Нужно что бы все автоматом происходило

SWM
Юзер

SWM - 25 июля 2016 15:18 -

Да не может быть такого, тогда пробуйте так http://prntscr.com/bx8smh

freezmix
Юзер

freezmix - 25 июля 2016 15:23 -

Через редактор все получается без проблем. Но хотелось что бы отдельным дополнительным полем ИСТОЧНИК вставляли модераторы и что бы это поле было обязательное. то есть вставил модератор в конце статьи в обязательное поле "Источник"
http://dle-faq.ru/faq/tpl/20046-kak-dobavit-v-fullstory-istochnik-na-novost-obrezav-polnuyu-ssylku.html
сохранил статью, снизу под статьей появилось поле "Источник" и нажав на это поле человек перешел по ссылке
http://dle-faq.ru/faq/tpl/20046-kak-dobavit-v-fullstory-istochnik-na-novost-obrezav-polnuyu-ssylku.html

SWM
Юзер

SWM - 25 июля 2016 15:26 -

Вы видимо тупой человек.Извините не здержался..
Откройте файл шаблона fullstory.tpl
после найдите
{full-story}

сразу после добавте этот код
<br><br><div align="right"><div class="news">[xfgiven_source]<a href="[xfvalue_source]" title="Источник">Источник</a>[/xfgiven_source]</div></div>

Все после того как вы это сделаете при добавление ссылки в доп поле у вас будет так
http://prntscr.com/bx8qeo

freezmix
Юзер

freezmix - 25 июля 2016 15:46 -


Ну не совсем тупой раз знаю, что такое шаблон новостей fullstory.tpl ))

Вот смотрите еще раз уже с моим fullstory и с низу на скриншоте страница новости

irrwisch
Юзер

irrwisch - 25 июля 2016 15:20 -

Ты .... или из Америки приехал??? (c) Задорнов


Вам же сказали,копируете этот код в fullstory.tpl, а при добавление в админке просто добавляете ссылку

ps: После смены кода, не забываем чистить кеш cms

freezmix
Юзер

freezmix - 25 июля 2016 15:30 -


Вставляю в fullstory.tpl Ваш код:
<br><br><div align="right"><div class="news">[xfgiven_source]<a href="[xfvalue_source]" title="Источник">Источник</a>[/xfgiven_source]</div></div>

в админке при создании новости в поле "Источник" вставляю
http://dle-faq.ru/faq/tpl/20046-kak-dobavit-v-fullstory-istochnik-na-novost-obrezav-polnuyu-ssylku.html

Чищу кеш в ../engine/cache
получаю то что видите на скриншоте

SWM
Юзер

SWM - 25 июля 2016 15:33 -

Покажите код файла fullstory

freezmix
Юзер

freezmix - 25 июля 2016 15:47 -

Окей, держите:


ravchik
Юзер

ravchik - 26 июля 2016 15:25 -

Посмотрите свой код еще раз, почему там списки <li> чередуются с ячейками <td>? Проверьте закрытость всех тегов, уберите тег <head> перед <script ...> и </head> после </script> и т.д. В общем приведите этот код в порядок.

код
<br><br><div align="right"><div class="news">[xfgiven_source]<a href="[xfvalue_source]" title="Источник">Источник</a>[/xfgiven_source]</div></div>
должен выполнять именно то, что вы хотите... Ошибка не в нем.

freezmix
Юзер

freezmix - 28 июля 2016 12:03 -


Доброго времени суток!
Проверил весь fullstroy на закрытие тегов, убрал теги <head> и </head> вставил после {full-story}
<br><br><div align="right"><div class="news">[xfgiven_source]<a href="[xfvalue_source]" title="Источник">Источник</a>[/xfgiven_source]</div></div>

И все равно вот что получаю на странице. Подключил на всякий случай другой шаблон paradox у него по дефу именно такой код стоит уже после {full-story}. Скриншот двух шаблонов приложил. А не может это как то связано с глобальными настройками движка?

ravchik
Юзер

ravchik - 28 июля 2016 12:10 -

дайте адрес сайта

freezmix
Юзер

freezmix - 28 июля 2016 12:45 -

Сайт пока наполняю контентом и он стоит на localhost, поднимал на денвере (PHP 5.3.13, MySQL 5.1,) модули вроде все что нужно включены, последняя с офф сайта. Могу конечно пробросить порты в интернет, если это конечно нужно? или может какие файлы Вам нужно посмотреть, могу скинуть?

ravchik
Юзер

ravchik - 28 июля 2016 13:28 -

Возможно у вас не в fullstory, а глобально в шаблоне есть косяк.

freezmix
Юзер

freezmix - 28 июля 2016 16:53 -

Спасибо за помощь - разобрался ))))
Во всех манах в сети по добавлению доп.поля source ничего не сказано про безопасный режим поля и его нужно в нашем случаи обязательно отключить, то бишь поддержку BB тегов и HTML

Создавать так:
1. Название поля - source
2. Описание поля - Источник информации
3. Категория - Все
4. Тип поля - одна строка
5. Значение по умолчанию - ничего тут не пишем
6. Использовать при желании (можно оставить поле пуcтым, но в моем случаи оно обязательное)
7. Безопасный режим поля - ставим галочку и тем самым отключаем поддержку BB тегов и HTML в моем случаи помогло это)))

Тем самым у меня когда я добавлял ссылку на первоисточник в addnews ссылка помещалась автоматом в тег BB-Code [url] такого вида
[url=http://dle-faq.ru/faq/tpl/20046-kak-dobavit-v-fullstory-istochnik-na-novost-obrezav-polnuyu-ssylku.html]http://dle-faq.ru/faq/tpl/20046-kak-dobavit-v-fullstory-istochnik-na-novost-obrezav-polnuyu-ssylku.html[/url]

мешая тем самым правильно создать HTML
<br><br><div align="right"><div class="news">[xfgiven_source]<a href="[xfvalue_source]" title="Источник">Источник</a>[/xfgiven_source]</div></div>
и этот тег был виден в том случаи когда я заходил в добавленную новость для редактирования.

Вот так вот пользоваться мануалами которые скопипастины друг у друга по сети интернет и даже не проверенные на рабочие состояние. Вот пример и ничего про это не сказано. И еще раз всем спасибо огромное за помощь!!!

BAHO
Юзер

BAHO - 25 июля 2016 16:49 -

Доброго дня!
Может я конечно пропустил...
А кто мешает сделать 2 доп поля

Например:
1 - Полная ссылка - в вашем случае source
2 - Только домен - source2
Естественно в ручную будете вставлять второе поле просто удалять лишнее из URLа

В шаблон вставляете таким образом
[xfgiven_source2]<br><br><div align="right"><div class="news">Источник: <a href="[xfvalue_source]" title="Источник [xfvalue_source2]">[xfvalue_source2]</a></div></div>[/xfgiven_source2]
В таком случае у вас будет выводиться данный блок при заполненном поле source2, если вы допустим вбили только source и забыли сократить ссылку и вписать в поле source2, то ссылка на источник выводиться не будет. Что бы не портить вид контента :)

Если надо что бы отбортовывало типа leech то

Это
[xfvalue_source]
Меняйте на это
engine/go.php?url=<?php echo base64_encode("[xfvalue_source]") ?>

Но надо поставить Хак который для распознавания PHP кода в tpl файле

Adrian
Юзер

Adrian - 25 июля 2016 20:11 -

Ок, приведу пример)
Да пустим у нас код:

<div class"lorem-ipsum">
       <a href="#">Длинная ссылка очень lorem ipsim sit amet</a>
</div>

Для дива lorem-ipsum в ксс зададим ширину примерно 20пх и поставим overflow: hidden; . Потом для тега a в ксс вставляем данный код

.lorem-ipsum a {
    color: #323232;
    display: -webkit-box;
    position: relative;
    -moz-line-clamp: 1;
    -moz-box-orient: vertical;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    -o-line-clamp: 1;
    -o-box-orient: vertical;
    text-overflow: ellipsis;
}

freezmix
Юзер

freezmix - 28 июля 2016 17:08 -

Это все что нужно вставить в style.css

.lorem-ipsum a {
    color: #323232;
    display: -webkit-box;
    position: relative;
    -moz-line-clamp: 1;
    -moz-box-orient: vertical;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    -o-line-clamp: 1;
    -o-box-orient: vertical;
    text-overflow: ellipsis;
}

?????
lorem-ipsum в ксс зададим ширину примерно 20пх и поставим overflow: hidden;

Это я так понимаю в этот же файл, а как кодом полностью это должно выглядеть?

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

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

наверх