Все для DataLife Engine / DLE хаки / Хак для DLE / Задать title, description и keywords в поиске по доп полям

Задать title, description и keywords в поиске по доп полям


Задаем массово title, description и keywords на страницах поиска по доп полям.
Оживлю и дополню старый хак, который еще на 10.x DLE выкладывал. С его помощью можно массово задать title, description и keywords на страницах поиска по доп полям. Есть несколько модулей, которые выполяют эту задачу, но когда в 1 доп поле тысячи значений настройка таких доп полей в модулях занимает пол жизни, тут и пригодится хак для DLE задать title, description и keywords в поиске по доп полям.

Разработчик: DomiTori
Версия DLE: 10.x - 11.x

Инструкция:
Правим всего 1 единственный файл.
Открываем /engine/engine.php и ищем в нем код
elseif ($do == 'xfsearch') $nam_e = $xf;

заменяем на код
elseif ($do == 'xfsearch' && $xfname == 'имя_доп_поля') {
$nam_e = "Тайтл к доп полю " . $xf . " текст меняем на свое";
$metatags['description'] = "Дискрипшн доп поля" . $xf . " который задаем" ;
$metatags['keywords'] = "первое ключевое слово " . $xf . ", второе ключевое слово " . $xf . ", третье ключевое слово " . $xf ;
}


имя_доп_поля - латинское название дополнительного поля, на котором мы задаем мета теги. Для подключения несколько раз вставьте приведенный выше код друг за другом, меняя имя_доп_поля и само описание мета тегов.

Добавлю пример для лучшего понимания. Вставив такой код
elseif ($do == 'xfsearch' && $xfname == 'actor') {
$nam_e = "Список всех фильмов с участием актера " . $xf ;
$metatags['description'] = "На данной странице представлен список всех фильмов с участием актера " . $xf . ", которые доступны к просмотру онлайн на нашем сайте" ;
$metatags['keywords'] = "фильмы с " . $xf . ", где снимался " . $xf . ", актер " . $xf ;
}
elseif ($do == 'xfsearch' && $xfname == 'genre') {
$nam_e = "Список всех фильмов в жанре " . $xf ;
$metatags['description'] = "На данной странице представлен список всех фильмов в жанре " . $xf . ", которые доступны к просмотру онлайн на нашем сайте" ;
$metatags['keywords'] = "фильмы в жанре " . $xf . ", жанр " . $xf . ", список " . $xf ;
}


---------------------------------------------------------------------------------

UPD. По просьбе человека добавил возможность использовать h1 на страницах поиска по доп полям.
Все в том же /engine/engine.php находим код
elseif ($do == 'xfsearch') $nam_e = $xf;

заменяем на код
elseif ($do == 'xfsearch' && $xfname == 'имя_доп_поля') {
$nam_e = "Тайтл к доп полю " . $xf . " текст меняем на свое";
$metatags['description'] = "Дискрипшн доп поля" . $xf . " который задаем" ;
$metatags['keywords'] = "первое ключевое слово " . $xf . ", второе ключевое слово " . $xf . ", третье ключевое слово " . $xf ;
$h_1 = "Сюда мы пишем ваш h1 текст, который относится к значению " . $xf . ", этот текст сможем использовать на страницах поиска по доп полям";
}

Далее ищем примерно такой код
if ( ( isset($_GET['cstart']) AND intval($_GET['cstart']) > 1 ) OR (isset($_GET['news_page']) AND intval($_GET['news_page']) > 1) ){

ВЫШЕ вставляем

    $tpl->load_template ( 'h1_xfield.tpl' );
    $tpl->set ( '{h1_xfield}', $h_1 );
    $tpl->compile ( 'h1_xfield' );
    $tpl->clear ();


Теперь открываем /engine/modules/main.php и ищем в нем код
$tpl->set ( '{speedbar}', $tpl->result['speedbar'] );

ниже вставляем
$tpl->set ( '{h1_xfield}', $tpl->result['h1_xfield'] );


В папке с вашим шаблоном создаем файл h1_xfield.tpl с таким содержимым
{h1_xfield}

или
{h1_xfield}

или
{h1_xfield}

оформляем по своему...

И наконец открываем main.tpl и в то место, где хотим выводить описание вставляем
[available=xfsearch]{h1_xfield}[/available]


На пиво, чипсы и прочую отраву:
R417794992142
Z244912848144
U357368699010
  • 100

Комментарии 2

Lexxs от 2 ноября 2022 15:26
На 15.2 попробовал, сайт становится не доступным.
Александр от 22 января 2018 14:47
available
в 10,5 надо
 aviable
Добавить комментарий

Оставить комментарий

    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent