Jump to content
  • 0

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


ma-s
 Share

Question

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

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

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

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

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

Link to comment
Share on other sites

11 answers to this question

Recommended Posts

  • 0

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

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

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

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

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

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

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

Link to comment
Share on other sites

  • 0

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

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

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

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

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

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

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

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

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

Link to comment
Share on other sites

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

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

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

Edited by Bryant-24
Link to comment
Share on other sites

  • 0

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

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

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

Link to comment
Share on other sites

  • 0

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

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

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

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

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

Edited by Petr001
Link to comment
Share on other sites

  • 0

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

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

адрес: 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 и в нем уже простой версткой выводите ссылки и краткий текст.

Link to comment
Share on other sites

  • 0

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

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

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

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

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

Edited by Petr001
Link to comment
Share on other sites

  • 0

Ребят, помогите пожалуйста. Переношу новости, не могу настроить чпу отображения новостей. Показывает код 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.

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

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy