Поиск объявлений с файлами, картинки и др

Задача найти объявления у которых загружен файл № 0 (первый), более конкретнее на сайте виртуальные туры 3D была поставлена задача искать виртуальные туры у которых загружен 3d флеш тур. 3D тур этот файл идет под номером 0 самым первым то есть.
Для начала нам надо модернизировать виджет поиска который идет в комплекте с плагином открываем файл ads_widgets.php, здесь мы ничего менять не будем просто копируем код виджета и вставляем этот код в ads_config.php, меняем Ads_Search_Form на свое название например Ads_3d_Search сохраняем код. Открываем админку WP у нас должен появится новый виджет Ads_3d_Search, добавляем этот виджет в сайд бар, теперь можно спокойно работать с новым виджетом дабы не трогать оригинальные файлы плагина. В новом виджете я немного изменил порядок полей поиска и добавил новый чекбокс только 3d:
окончательный код виджета:

Пол дела уже сделано, теперь надо научить WP обрабатывать переменную only_3d, для этого нам придется копнуть поглубже и воcпользоваться api WordPRess.
Мы подключим свой фильтр который будет изменять основной SQL запрос к БД. Фильтр этот называться posts_request.
НЕ буду утомлять сложностями SQL приведу готовый код который надо также воткнуть в файл ads_config.php:

Вот теперь у нас будут файлы у которых загружен файл с номером 0 порядковым (первый) и у тип (mime type) файлов должен быть image пример только 3D туры.

Если нам надо искать записи у которых загружен не первый файл, а второй то меняем AND image.menu_order = 1.
Если тип файла не картинка, а что-то другое скажем там видео файл меняем AND image.post_mime_type like ‘video%’, если проверка типа файла не нужна то просто удалить условие AND image.post_mime_type like ‘image%’

SQL код который мы получаем на выходе фильтра:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url=""> [php]…[/php] [html]…[/html] [css]…[/css] [text]…[/text] [code]…[/code]

  • sdfsdfsdf
  • sdfsdfsdfsdf
  • sdfsdfsdfs
  • sdfsdfsdf
  • sdfsdfsdfsdfs
  • sdfsdfsdfs
  • sdfsdfsdf
  • sdfsdfsdfsdfs