Всем мира!
последняя версия движка, ребята подскажите вот эти моменты, если можно как то решить, если платно то в личку стоимость прошу озвучить, спасибо!
есть тип контента Страницы, там поле content, у этого поля включена настройка — «Участвует в полнотекстовом поиске»
при поиске :
1. как ограничить поиск что бы не искал если просто в поиске ввести html теги ?, например вписываю в поиске <div> и выдаёт некоторые страницы, да понимаю что в этом поле я делал разметку и там есть этот <div>, как то можно ограничить что бы не искал если ввести html теги ?
2. как можно сделать — вписал в поиске слово, поиск его нашёл и дал ссылку на эту страницу, при переходе по этой ссылке что бы прокручивал к этому слову, такое как то вообще можно сделать ?
Поиск html теги и переход к результату
1. А это зачем? Зачем решать проблему, которую сами себе создаете. Обычный пользователь, которых 99%, не будет заниматься этим...
ну да по первому пункту, это я заморочися, просто в поиске ввел div и поиск выдал мне
а как Вы думаете по второму пункту ?
а как Вы думаете по второму пункту ?
тут надо менять ссылку на результаты поиска, добавляя в нее фрагмент
#:~:text=искомый_текст
Теория на эту тему mgearon.com/html/text-fragments/
Откройте файл templates/ваш_шаблон/controllers/search/index.tpl.php
и ПОСЛЕ
<?php foreach($search_data['items'] as $item){
добавьте строку
и будет вам прокрутка
Но все не работает, если запрос пользователя более менее сложный, или задан с ошибкой, например тут
По итогу, видимо, полностью рабочее решение выглядит как js скрипт, который пробежится по результатам, и слово, выделенное курсивом и красным прибавит подобным образом к ссылке.
Но и это решение не будет работать всегда. Потому что в результатах поиска вообще может и не быть совпадения, вот, например
Zau4man, Большое спасибо, работает
но что бы прокручивало не только к одному слову но и фразе целиком я сделал так
$zapross = str_replace("+", " ", urlencode($query));
$item['url'] = $item['url']. '#:~:text='. $zapross;