Что нового

Вывести значение доп поля на странице доп поля (1 Viewer)

  • Автор темы Oleksandr Miroshnichenko
  • Дата начала
Oleksandr Miroshnichenko

Oleksandr Miroshnichenko

Участник
Регистрация
30 Июл 2021
Сообщения
40
Реакции
59
Всем привет, мб кто-то уже решил данную проблему..

Нужно вывести значение доп поля в шаблон.
Пример: на киносайте есть доп поле "Режиссёр", выводится ссылка в полной новости на страницу со всеми фильмами с этим режиссёром, нужно на этой странице вывести <h1> тег "Смотреть онлайн все фильмы режиссёра {значение доп поля}".

В документации об этом ничего нет, решается только модулем DLE SEO от Lazy Dev, но не хотелось бы ставить такой большой модуль ради такого маленького решения, возможно уже есть хак для этого.
 
Последнее редактирование:
все есть в документации https://dle-news.ru/extras/online/index.html?all17.html

Код:
[xfgiven_x] [xfvalue_x] [/xfgiven_x]
Этот тег выводит значение доп поля (если оно заполнено) в короткой/полной новости.

Мне нужно вывести значение доп поля, на странице просмотра всех новостей с "n" значением доп поля (пример: example.com/xfsearch/director/Пётр+Иванов/), чтобы сделать <h1> тег, например: "Смотреть онлайн все фильмы режиссёра {n значение доп поля}".

UPD:
[available=xfsearch][xfgiven_director] [xfvalue_director] [/xfgiven_director][/available] в main.tpl не работает. (Возможно ты это имел ввиду)
 
Последнее редактирование:
Смотри в файле engine/engine.php, примерно 1162 строка +-
elseif ($do == 'xfsearch') $nam_e = $xf;
Делаешь проверки на совпадение доп поля с помощью if, $xfname == 'director' в твоём случае

Назначаешь что хочешь title, description, keywords, придумываешь тег для вывода в main.tpl
$nam_e = "Список всех фильмов " . $xf ;
$metatags['description'] = "На данной странице ....... " . $xf . ", который ......." ;
$metatags['keywords'] = "фильмы режиссёра ". $xf ;
 
Смотри в файле engine/engine.php, примерно 1162 строка +-

Делаешь проверки на совпадение доп поля с помощью if, $xfname == 'director' в твоём случае

Назначаешь что хочешь title, description, keywords, придумываешь тег для вывода в main.tpl
Спасибо огромное! Может кому-то тоже пригодится, прикрепил файл с модулем, нужно будет изменить поля на свои.
Но я не знаю как вывести тег со значением доп поля в main.tpl, в этом и есть суть топика.

Скриншот того, что сделал:
WoaepvH.png
 

Вложения

  • seo-dop-polej.zip
    775 байт · Просмотры: 25
Последнее редактирование:
Спасибо огромное! Может кому-то тоже пригодится, прикрепил файл с модулем, нужно будет изменить поля на свои.
Но я не знаю как вывести тег со значением доп поля в main.tpl, в этом и есть суть топика.

Скриншот того, что сделал:
WoaepvH.png
Я основную мысль передал же, просто создаёшь переменную и в main.php приписываешь переменную к этому тегу.
Реализация вот:
Если у каждого доп поля уникальный h1 - В свой if ($xfname == 'actor'){
Если у всех доп полей одинаковый h1 - В elseif ($do == 'xfsearch'){
Добавляешь переменную
$h1Xfname = "Заголовок для" .$xf;
Для вывода в main.tpl, открываешь /engine/modules/main.php,
После
$tpl->set ( '{speedbar}', $tpl->result['speedbar'] );
Добавляешь
$tpl->set ( '{xfnme}', $h1Xfname );
Название тегу и для переменной придумываешь какое душе угодно.
В main.tpl вставляешь где хочешь {xfnme}
 
Я основную мысль передал же, просто создаёшь переменную и в main.php приписываешь переменную к этому тегу.
Реализация вот:
Если у каждого доп поля уникальный h1 - В свой if ($xfname == 'actor'){
Если у всех доп полей одинаковый h1 - В elseif ($do == 'xfsearch'){
Добавляешь переменную

Для вывода в main.tpl, открываешь /engine/modules/main.php,
После

Добавляешь

Название тегу и для переменной придумываешь какое душе угодно.
В main.tpl вставляешь где хочешь {xfnme}
Лучший, спасибо! :love:
 

Пользователи, просматривающие данную тему

Верх