Тип контента — ссылка

Здравствуйте!
Прошу помочь с реализацией собственного типа контента «Ссылка». Суть в том, что при клике по заголовку материала или «Читать дальше» идёт автоматическое перенаправление на страницу, указанную в поле «источник материала». Как такое реализовать?

Похожие статьи

  • Смена урл с редиректом
    Сейчас на сайте вид ссылок https://site.ru/sample-topic.html хочу сделать https://site.ru/blog-name/123.html При изменении ссылок, все внешние ссылки отваливаются с ошибкой 404. Как правильно сделать редирект,...
  • Про секретную админку, поддомены и прочие тонкости маршрутизации в Alto CMS
    Довольно часто встречаются такие вопросы: А как сделать, чтобы админка работала не по адресу site.com/admin, а по секретному адресу, который знаю только я? Или вопрос из этой же серии: как сделать, чтоб блоги...
  • Дублирование страниц
    Добрый день! Сегодня обнаружил в метрике, что она и та же страница отображается по разным ссылкам: http://site.ru/blog/category/1.html и http://site.ru/ru/blog/category/1.html Причем в коде и у той и у той...
  • Загрузка картинок на другой сервер и хитрый редирект
    Приветствую! Ребята, подскажет, как сделать, чтоб изображение загружались на другой сервер? Пример: имеем site.ru, а все картинки лежать и загружаются на другой сервер img.site.ru. Так же интересует, возможно ли...

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

0
Я бы делал так: в том месте, где стоит ссылка «Читать дальше» пишем:

{if $oContentType}
    {foreach from=$oContentType->getFields() item=oField}
        {if $oField->getFieldId() == id} //Здесь id - это id поля типа "Ссылка", которое нужно создать топику в админке
            {if $oField}
                {$sVal = $oTopic->getField($oField->getFieldId())}
                {if $sVal}
                    <a href="{$sVal->getValue()}" target="_blank" rel="nofollow">Читать дальше...</a>
                {/if}
            {/if}
        {/if}
    {/foreach}
{/if}


Тоже самое для заголовка проделываем, если хотим.
0
Хорошо, а какое ID у поля «источник топика» (которое включается/выключается в параметрах типа контента)?
+1
Прошу прощения, все проще. Я говорил про кастомное поле ссылка, но если пользоваться встроенным полем Ссылка-источник, то просто вот так бес всяких наворотов:

<a href="{$oTopic->getSourceLink()}" target="_blank" rel="nofollow">Читать дальше...</a>
0
Хорошо, проблема решена в пределах лент активности. А как вызвать редирект при переходе непосредственно к топику-ссылке, например, с rss-лент?
0
CMS держу на сервере с Nginx, может быть его можно как-то задействовать в редиректах на основе наличия ссылки в поле «источник материала»?
+1
Не совсем понимаю, можете подробнее объяснить?
+1
Вам наверно проще будет в коде поменять чтобы в rss сразу ставилась ссылка из статьи. Т.е. в /common/classes/actions/ActionRss.class.php во всех местах где заполняется $item['link'], например в 77 строке вместо
$item['link'] = $oTopic->getUrl();
указать
$item['link'] = $oTopic->getSourceLink()?$oTopic->getSourceLink():$oTopic->getUrl();
Автор статьи запретил добавлять комментарии