0 Пользователей и 1 Гость просматривают эту тему.
  • 2 Ответов
  • 354 Просмотров
*

PRammer

  • Захожу иногда
  • 119
  • 0 / 0
Доброго времени суток!

Есть сайт фото галереи, где нужно внедрить поиск, который будет искать только по заголовку новости и выводить вводную часть, где отображается собственно заголовок и картинка - preview.
Стандартный поиск Joomla 2.5 + расширенный не справляются с данной задачей и выводят ненужную белиберду из основной части контента материала... да еще и в кодовом виде... <img src="blablabla.jpg" style="...">...
Подскажите, как можно модифицировать стандартный поиск (какие переменные и где менять?)
Если же проще донести, чего мне надо - поиск как на DLE, только урезанный.

P.S. Проанализировал и перепробовал большинство модулей и плагинов как с сайта http://extensions.joomla.org/ так и от поисковиков (Яндекс в отличии от Google не активно индексирует все картинки)
*

OmniWizard

  • Захожу иногда
  • 51
  • 3 / 0
Re: Поиск в фотогалереи Joomla 2.5
« Ответ #1 : 10.12.2013, 12:32:41 »
Проще сделать свой модуль с таки поиском!
Ух, я тебе сейчас насоветую)).. у меня уже 3 дня опыта в php

Как это пример сделать: качашь пустой модуль: Внутри находишь папку tmpl-> в default.php (это как раз и есть основное тело модуля которое он отображает)

в нем создаешь форму запроса->
<form action="index.php" method="post" enctype="multipart/form-data" >
<input type="text" name="search" то что будет отсылаться постом, например то что ты хочешь найти в базе данных />
<button type="submit">Поиск</button></div>
</form>
Дальше нам надо выловить Post который послали кнопочкой Поиск ->

$search = JRequest::getVar('search' тут также можно определить тип данных которые ты вылавливаешь);
и так после посыла мы в переменную $search поймали строку

Дальше определяем наш запрос в базу данных в форме отдельной функции->

function getBase($search){
$db =& JFactory::getDBO();- иницилизируем БД
$stroka_zaprosa ='';- создаем строку запроса
if ($search!= ''''){
    $stroka_zaprosa =  "WHERE `тут название поля заголовка новостей`='".$search."'.
}
$query = "SELECT * FROM news".$stroka_zaprosa; <- тут делаем поиск заголовка   
$db -> setQuery($query);
$records = $db->loadObjectList();
return $records;  <- тут он возвращает все объекты с таким названием, возможно применять LIKE в поиске по MySQL в таких вопросах тут уже Google поможет
}

далее осталось дело за малым заполучить наш запрос и разобрать ))

$records = getBase($search);
foreach($records as $record)
{
echo $record->Title;

..... а вот тут по идеи надо вывести твои картинку, значит набираешь как в PHP забрать часть текста, в питоне это функция re. И вот после того как ты найдешь как выбрать картинку ты ее тут выведешь.
}

Проще некуда)))
Чтобы что-то делать хорошо, сначала нужно научиться это делать плохо !
*

PRammer

  • Захожу иногда
  • 119
  • 0 / 0
Re: Поиск в фотогалереи Joomla 2.5
« Ответ #2 : 10.12.2013, 18:36:37 »
Проще сделать свой модуль с таки поиском!
Ух, я тебе сейчас насоветую)).. у меня уже 3 дня опыта в php

Как это пример сделать: качашь пустой модуль: Внутри находишь папку tmpl-> в default.php (это как раз и есть основное тело модуля которое он отображает)

в нем создаешь форму запроса->
<form action="index.php" method="post" enctype="multipart/form-data" >
<input type="text" name="search" то что будет отсылаться постом, например то что ты хочешь найти в базе данных />
<button type="submit">Поиск</button></div>
</form>
Дальше нам надо выловить Post который послали кнопочкой Поиск ->

$search = JRequest::getVar('search' тут также можно определить тип данных которые ты вылавливаешь);
и так после посыла мы в переменную $search поймали строку

Дальше определяем наш запрос в базу данных в форме отдельной функции->

function getBase($search){
$db =& JFactory::getDBO();- иницилизируем БД
$stroka_zaprosa ='';- создаем строку запроса
if ($search!= ''''){
    $stroka_zaprosa =  "WHERE `тут название поля заголовка новостей`='".$search."'.
}
$query = "SELECT * FROM news".$stroka_zaprosa; <- тут делаем поиск заголовка   
$db -> setQuery($query);
$records = $db->loadObjectList();
return $records;  <- тут он возвращает все объекты с таким названием, возможно применять LIKE в поиске по MySQL в таких вопросах тут уже Google поможет
}

далее осталось дело за малым заполучить наш запрос и разобрать ))

$records = getBase($search);
foreach($records as $record)
{
echo $record->Title;

..... а вот тут по идеи надо вывести твои картинку, значит набираешь как в PHP забрать часть текста, в питоне это функция re. И вот после того как ты найдешь как выбрать картинку ты ее тут выведешь.
}

Проще некуда)))


Ого! Во выдал :), а может можно как-то модифицировать стандартный поиск?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Откат версии Joomla

Автор kozhenevsky

Ответов: 11
Просмотров: 10426
Последний ответ 31.03.2018, 22:22:23
от effrit
Карта сайта для Joomla! 2.5.11

Автор Anna

Ответов: 1
Просмотров: 434
Последний ответ 24.02.2018, 22:37:17
от SeBun
Периодически пропадает модуль "HTML-код" с главной страницы (Joomla! 2.5.24)

Автор fave

Ответов: 1
Просмотров: 248
Последний ответ 19.02.2018, 17:32:31
от arma
#current и.active не дописываются к активному пункту меню в Joomla 2.5

Автор den_caruk

Ответов: 18
Просмотров: 6010
Последний ответ 15.02.2018, 00:26:15
от tigra-uki
Не получается изменить динамическую шапку сайта на Joomla 2.5

Автор lel

Ответов: 14
Просмотров: 651
Последний ответ 06.02.2018, 10:40:18
от SeBun