Автор |
Сообщение |
|
|
Администратор |
 |
Стаж: 8 лет 1 день Сообщения: 1219 Откуда: здешние мы
Стиль: subsilver2
Репутация: 11
перейти на сайт пользователя
Найти темы пользователя
|
Форма поиска от ЯндексаФорма поиска может как и заменить ваш Поиск, так и работать как добавочная функция на сайте. В этом есть свои плюсы и минусы: плюс в том, что система поиска и обработки запроса находится не на вашем сайте и, соответственно, снижает нагрузку на хост. Минус в том, что раз эта система внешняя, то и неполадки в ней приведут к неработоспособности поиска и у вас. (хотя, судя по отзывам, система Яндекса работает стабильно). На сайте Яндекса будет фиксироваться статистика пользования поиском - всегда можно посмотреть, что тоже плюс.//на этом сайте тоже реализована эта система в виде варианта 1 - нажмите кнопку Поиск чтобы посмотреть. Итак, если заинтересовало, ставим: Путь первыйЗаходим на сайт http://site.yandex.ru/, регистрируемся (если у вас нет регистрации на Яндексе) и нажимаем на стрелку " Установить поиск". Пройдя несколько шагов, в которых можно настроить внешний вид строки, сайт или сайты в поиске и т.д., мы в итоге получим html - код, который необходимо вставить в шаблон сайта. После этого размещаем строку поиска где удобно. В стиле prosilver по умолчанию есть строка поиска - можно заменить её на форму от Яндекса. Заменить код Код: Выделить всё <div id="search-box"> <form action="{U_SEARCH}" method="get" id="search"> <fieldset> <input name="keywords" id="keywords" type="text" maxlength="128" title="{L_SEARCH_KEYWORDS}" class="inputbox search" value="<!-- IF SEARCH_WORDS-->{SEARCH_WORDS}<!-- ELSE -->{L_SEARCH_MINI}<!-- ENDIF -->" onclick="if(this.value=='{LA_SEARCH_MINI}')this.value='';" onblur="if(this.value=='')this.value='{LA_SEARCH_MINI}';" /> <input class="button2" value="{L_SEARCH}" type="submit" /><br /> <a href="{U_SEARCH}" title="{L_SEARCH_ADV_EXPLAIN}">{L_SEARCH_ADV}</a> {S_SEARCH_HIDDEN_FIELDS} </fieldset> </form> </div> на тот, что вы получите на Яндексе. Путь второйПереводит кнопку Поиск в режим формы поиск от Яндекса. Открыть search.phpНайти Код: Выделить всё $sort_days = request_var('st', 0); $sort_key = request_var('sk', 't'); $sort_dir = request_var('sd', 'd'); $return_chars = request_var('ch', ($topic_id) ? -1 : 300); $search_forum = request_var('fid', array(0)); Вставить после найденного Код: Выделить всё // begin yandex search $board_url = urlencode(generate_board_url()); redirect("http://yandex.ru/yandsearch?text=$keywords&site=$board_url", false, true); // end yandex search Эта система выводит результаты поиска на сайте Яндекса. Внимание! Система поиска от Яндекса может выводить только проиндексированные Яндексом страницы!//но штука удобная. факт.
|
|
трёхголовый белк семейства рептилоидов: "три головы - хорошо, на как же трудно придти к согласию..."
|
|
поиск,яндекс,yandex,search,phpbb3
|
 |
|
|
Стаж: 6 лет 8 месяцев 8 дней Сообщения: 731
Стиль: prosilver
Репутация: 15
перейти на сайт пользователя
Найти темы пользователя
|
Пожалуй поставлю данный мод. Стандартный поиск на форуме phpbb3 ни куда не годный. Спасибо! Добавлено спустя 7 часов 48 минут 8 секунд:Попытался поставить - не получилось Получил код формы поиска Код: Выделить всё <div class="ya-site-form ya-site-form_inited_no" data-bem="{"action":"https://crimea-your.ru/forum/search.php","arrow":false,"bg":"transparent","fontsize":12,"fg":"#000000","language":"ru","logo":"rb","publicname":"Поиск по crimea-your.ru/forum/","suggest":true,"target":"_self","tld":"ru","type":3,"usebigdictionary":true,"searchid":2355759,"input_fg":"#000000","input_bg":"#ffffff","input_fontStyle":"normal","input_fontWeight":"normal","input_placeholder":"Поиск по сайту","input_placeholderColor":"#000000","input_borderColor":"#7f9db9"}"><form action="https://yandex.ru/search/site/" method="get" target="_self" accept-charset="utf-8"><input type="hidden" name="searchid" value="2355759"/><input type="hidden" name="l10n" value="ru"/><input type="hidden" name="reqenc" value=""/><input type="search" name="text" value=""/><input type="submit" value="Найти"/></form></div><style type="text/css">.ya-page_js_yes .ya-site-form_inited_no { display: none; }</style><script type="text/javascript">(function(w,d,c){var s=d.createElement('script'),h=d.getElementsByTagName('script')[0],e=d.documentElement;if((' '+e.className+' ').indexOf(' ya-page_js_yes ')===-1){e.className+=' ya-page_js_yes';}s.type='text/javascript';s.async=true;s.charset='utf-8';s.src=(d.location.protocol==='https:'?'https:':'http:')+'//site.yandex.net/v2.0/js/all.js';h.parentNode.insertBefore(s,h);(w[c]||(w[c]=[])).push(function(){Ya.Site.Form.init()})})(window,document,'yandex_site_callbacks');</script>
Код результатов поиска Разместите этот код на странице https://crimea-your.ru/forum/search.phpКод: Выделить всё <div id="ya-site-results" data-bem="{"tld": "ru","language": "ru","encoding": "","htmlcss": "1.x","updatehash": true}"></div><script type="text/javascript">(function(w,d,c){var s=d.createElement('script'),h=d.getElementsByTagName('script')[0];s.type='text/javascript';s.async=true;s.charset='utf-8';s.src=(d.location.protocol==='https:'?'https:':'http:')+'//site.yandex.net/v2.0/js/all.js';h.parentNode.insertBefore(s,h);(w[c]||(w[c]=[])).push(function(){Ya.Site.Results.init();})})(window,document,'yandex_site_callbacks');</script>
Запихал это все в файл search.php получил ошибку 500 Добавлено спустя 48 минут 25 секунд:Андрей, я нашел способ который убирает это ограничение! https://crimea-your.ru/forum/viewtopic. ... 265#p74265Для этого надо снизить порог и обновить БД поиска Добавлено спустя 58 секунд:Теперь поиск работает как надо Я вот только не пойму как пользоваться этими + и -
 Вы можете использовать +, чтобы определить слова, которые должны быть в результатах, и - для слов, которых в результатах быть не должно. Вы можете разделить слова символом | для поиска любого слова из списка.
|
|
|
|
|
 |
|
|
Администратор |
 |
Стаж: 8 лет 1 день Сообщения: 1219 Откуда: здешние мы
Стиль: subsilver2
Репутация: 11
перейти на сайт пользователя
Найти темы пользователя
|
а где написано, что надо html-код прописывать в php-файле? всё надо приписывать в шаблонах... search_body.htmlнайти вставить после найденного Код: Выделить всё <div class="panel"> <div class="inner"><span class="corners-top"><span></span></span> <div class="ya-site-form ya-site-form_inited_no" data-bem="{"action":"https://crimea-your.ru/forum/search.php","arrow":false,"bg":"transparent","fontsize":12,"fg":"#000000","language":"ru","logo":"rb","publicname":"Поиск по crimea-your.ru/forum/","suggest":true,"target":"_self","tld":"ru","type":3,"usebigdictionary":true,"searchid":2355759,"input_fg":"#000000","input_bg":"#ffffff","input_fontStyle":"normal","input_fontWeight":"normal","input_placeholder":"Поиск по сайту","input_placeholderColor":"#000000","input_borderColor":"#7f9db9"}"><form action="https://yandex.ru/search/site/" method="get" target="_self" accept-charset="utf-8"><input type="hidden" name="searchid" value="2355759"/><input type="hidden" name="l10n" value="ru"/><input type="hidden" name="reqenc" value=""/><input type="search" name="text" value=""/><input type="submit" value="Найти"/></form></div><style type="text/css">.ya-page_js_yes .ya-site-form_inited_no { display: none; }</style><script type="text/javascript">(function(w,d,c){var s=d.createElement('script'),h=d.getElementsByTagName('script')[0],e=d.documentElement;if((' '+e.className+' ').indexOf(' ya-page_js_yes ')===-1){e.className+=' ya-page_js_yes';}s.type='text/javascript';s.async=true;s.charset='utf-8';s.src=(d.location.protocol==='https:'?'https:':'http:')+'//site.yandex.net/v2.0/js/all.js';h.parentNode.insertBefore(s,h);(w[c]||(w[c]=[])).push(function(){Ya.Site.Form.init()})})(window,document,'yandex_site_callbacks');</script> <span class="corners-bottom"><span></span></span></div> </div>
как-то так. насчёт стандартного поиска. спасибо. буду знать. насчёт + и - никогда не проверял... 
|
|
трёхголовый белк семейства рептилоидов: "три головы - хорошо, на как же трудно придти к согласию..."
|
|
|
 |
|
|
Стаж: 6 лет 8 месяцев 8 дней Сообщения: 731
Стиль: prosilver
Репутация: 15
перейти на сайт пользователя
Найти темы пользователя
|
 всё надо приписывать в шаблонах...
Спасибо, Андрей
 насчёт + и - никогда не проверял...
А я проверял, нифига не работает Интересно что имели в виду разработчики, когда добавляли эту функцию 
|
|
|
|
|
 |
|
|
Администратор |
 |
Стаж: 8 лет 1 день Сообщения: 1219 Откуда: здешние мы
Стиль: subsilver2
Репутация: 11
перейти на сайт пользователя
Найти темы пользователя
|
 У Вас вывод результатов отображается на яндексе, а не на форуме
ну да. ведь он ищет У СЕБЯ по проиндексированным страницам... гугла так же делает. // поэтому у меня и стоят все возможные. 
|
|
трёхголовый белк семейства рептилоидов: "три головы - хорошо, на как же трудно придти к согласию..."
|
|
|
 |
|
|
Стаж: 6 лет 8 месяцев 8 дней Сообщения: 731
Стиль: prosilver
Репутация: 15
перейти на сайт пользователя
Найти темы пользователя
|
Ввел в строчке Минимум символов для индексации: 2. Затем обновил БД. По запросу Ай-Петри:
 Подходящих сообщений не найдено, поскольку слово ай-георгий нигде не встречается.
Если перевожу маркер на Искать любое слово/поиск с языком запросов то получаю вывод сообщений с разделенными словами ай|петри Тестирую дальше, поставлю Минимум символов для индексации: 1. Добавлено спустя 20 минут 32 секунды:Сделал 1. Нифига не ищет ((( Как бы убрать из поиска этот - Кто его только придумал в поиске? Это же просто бред!
|
|
|
|
|
 |
|
|
Администратор |
 |
Стаж: 8 лет 1 день Сообщения: 1219 Откуда: здешние мы
Стиль: subsilver2
Репутация: 11
перейти на сайт пользователя
Найти темы пользователя
|
я БД не обновлял. изменил только 2 эти параметра, что написал выше. только что попробовал поискать новое слово здесь "ай-георгий" всё прекрасно ищет. проверяйте настройки Поиска....   кстати, там в поиске ещё и кэш есть...
|
|
трёхголовый белк семейства рептилоидов: "три головы - хорошо, на как же трудно придти к согласию..."
|
|
|
 |
|