ma-s

Как самому задавать произвольный URL страницы детального просмотра?

Recommended Posts

Создал инфоблок новости и шаблон к этой странице.

Создал компонент (есть и сам компонент и шаблон компонента внутри)

У каждой новости есть картинка анонса, это здорово, но при клике на нее открывается страница детального просмотра.

Как сделать так, чтобы при клике на картинку анонса открывалась страница которую я могу сам задать в админке?

Поясняю более развернуто: cейчас при клике на картинку анонса открывается страница детального просмотра, а нужно чтобы открывалась произвольная ссылка, допустим на сторонний сайт! Что где дописать?!

Share this post


Link to post
Share on other sites

Нужно будет изменить ссылку в шаблоне списка новостей. Укажите какой компонент используете? ;)

Share this post


Link to post
Share on other sites

Тоже столкнулся с такой задачей.

Нужно, чтобы сылка вела на произвольную страницу моего сайта. Соответственно, её надо вносить при добавлении элемента.

Я использую компонент новости.

Пробовал вводить ссылку в поле Символный код.

И вставить #ELEMENT_CODE# в поле URL страницы детального просмотра

Но система заменяет слеш на %2 и ссылка не работает.

Создал специальное свойство в инфоблоке - Что нужно написать в поле URL страницы детального просмотр чтобы вывести свойство элемента?

Share this post


Link to post
Share on other sites

Тоже столкнулся с такой задачей.

Нужно, чтобы сылка вела на произвольную страницу моего сайта. Соответственно, её надо вносить при добавлении элемента.

Я использую компонент новости.

Пробовал вводить ссылку в поле Символный код.

И вставить #ELEMENT_CODE# в поле URL страницы детального просмотра

Но система заменяет слеш на %2 и ссылка не работает.

Создал специальное свойство в инфоблоке - Что нужно написать в поле URL страницы детального просмотр чтобы вывести свойство элемента?

Я придумал способ - но он уж очень корявый.

В символьный код надо вставить сокращенную ссылку на страницу. Там не будет слеша. Но это неудобно и некрасиво. Наверняка есть и более правильное решение. Но где его искать - Пока изучение битркска и php с самого начала только в планах.

Share this post


Link to post
Share on other sites
Тоже столкнулся с такой задачей.

Нужно, чтобы сылка вела на произвольную страницу моего сайта. Соответственно, её надо вносить при добавлении элемента.

Её не нужно вносить при добавлении элемента. Чтобы ссылка вела на произвольную страницу, необходимо кастомизировать шаблон вывода новостей.

Edited by Bryant-24

Share this post


Link to post
Share on other sites

@Bryant-24, спасибо за комментарий, но я видимо не очень точно выразился. У каждой новости ведь своя ссылка. Так что мне не понятно, как это может быть:

Её не нужно вносить при добавлении элемента.

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

Share this post


Link to post
Share on other sites

доставать id новости и сравнивать с имеющимся, если условие совпадает, то подставлять определенный адрес...

это костыль конечно, но по другому наверное никак.

Share this post


Link to post
Share on other sites

доставать id новости и сравнивать с имеющимся, если условие совпадает, то подставлять определенный адрес...

это костыль конечно, но по другому наверное никак.

А где будет хранится ссылка? Не совсем пониаю. Я то надеялся, что можно сделать специальное поле и вводить адрес при добавлении элемента (то есть новости).

И каким-то образом указать в шаблоне, что надо выводить в ссылке. Но я пока явно не силён в php

вывоидть то у меня получиось - см. выше - но вот там ошибки с удалением некоторых знаков в адресе

Edited by Petr001

Share this post


Link to post
Share on other sites

я просто не понимаю что нужно в итоге, может поподробнее опишите?

типа: новость первая

адрес: mysite.ru/news/drugoi-adres/

или: новость вторая

адрес: drugoi-site.ru/news/drugoi-adres/

если ссылка на сторонний ресурс, то:

а) ресурс (сайт) один и тот же, или может быть и другой?

б) ссылки ввобще могут быть абсолютно произвольными и вести как на сторонний(ие) ресурсы, так и на свой сайт?

изначально, этот компонент не заточен под такие требования, так что вам скорее всего придется в ручную выводить, т.е. создать файл со списком новостей и просто его инклудить такой вот конструкцией:


<?$APPLICATION->IncludeComponent("bitrix:main.include", "", array("AREA_FILE_SHOW" => "file", "PATH" => SITE_DIR."include/news.php"), false);?>

соответственно в папке include создаете файл news.php и в нем уже простой версткой выводите ссылки и краткий текст.

Share this post


Link to post
Share on other sites

Идея заключалась в следующем. На главной странице установить блок с новостями о событиях на сайте.

Пример новости - "на сайте мы опубликовали статью о...", "В блоге новая записть про..." или "смотрите фотоотчет о событии ..."

Стандартный вариант поведения блока новости - при нажатии на её заголовок - открывается страница "новость детально". И там легко вставить ссылку на нужную страницу сайта, но это не нужный для пользователя шаг. Надо чтобы при нажатии на загаловок анонса сразу открывалась та страница, про которую новость.

Соответственно ссылку нужно добавлять в процессе добавления самой новости в какое-то поле. Выше я уже писал, что пробовал вставлять адрес страницы в поле Символьный код. И вставить #ELEMENT_CODE# в поле URL страницы детального просмотра

Но слеш в адресе не хочет выводится напрямую. Работает только адрес, если он без единого слеша. (например, укороченная ссылка)

Edited by Petr001

Share this post


Link to post
Share on other sites

Ребят, помогите пожалуйста. Переношу новости, не могу настроить чпу отображения новостей. Показывает код 404
Необходим вывод новостей типа " #SITE_DIR#/news/#SECTION_CODE#/#ELEMENT_CODE#.php "
Создал страницу " #SITE_DIR#/news/newsdetail.php "
Добавил в нее компонент " bitrix:news.detail " и настроил ID новости " ={$_REQUEST["ELEMENT_ID"]} "
В правилах обработки адресов указал
Условие " #^/news/([a-zA-Z0-9]+$)/([a-zA-Z0-9]+$)/# "
Компонент " bitrix:news.detail "
Файл " /news/newsdetail.php "
Правило " ELEMENT_CODE=$2 "

При переходе по ссылке "новость детально" открывается 404.

Подскажите, пожалуйста, на каком этапе совершил ошибку. Спасибо.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Member Statistics

    46,441
    Total Members
    3,128
    Most Online
    Talomir
    Newest Member
    Talomir
    Joined
  • Recently Browsing   0 members

    No registered users viewing this page.