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

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 2.5?

Автор vitosbbc

Ответов: 1
Просмотров: 249
Последний ответ 29.10.2018, 11:37:36
от vitosbbc
Как закрыть от посещения страницу регистрации Joomla?

Автор Csandr

Ответов: 6
Просмотров: 778
Последний ответ 19.10.2018, 08:44:28
от Csandr
[FAQ] Joomla 2.5 - проверка на главную страницу

Автор fedragon

Ответов: 68
Просмотров: 53430
Последний ответ 26.09.2018, 10:23:03
от intcorp
Недавно написала руководство по созданию сайтов на CMS Joomla

Автор MariannaFrance

Ответов: 44
Просмотров: 8332
Последний ответ 12.09.2018, 00:38:21
от Pasha1992
Не удается авторизоваться в админке Joomla 2.5.4

Автор olgash

Ответов: 4
Просмотров: 601
Последний ответ 08.08.2018, 15:14:25
от Shomas