Форум русской поддержки Joomla!® CMS
16.08.2017, 21:40:31 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Основной курс по Joomla
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Плагин Smart Search для своего компонента

 (Прочитано 682 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ftp27
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 3


« : 12.11.2013, 11:08:16 »

Доброго времени суток.
Столкнулся с такой проблемой. Написал свой компонент для каталога радиотокомпонентов и собственно плагин к нему. Вроде как индексируется и во время ввода слов в поисковое поле появляются какие подсказки, но при поиске результатов никаких. Даже добавил еще один столбец `published` со значением по умолчанию 1. Что я сделал не так?

Код:
<?php

defined('JPATH_BASE') or die;

require_once JPATH_ADMINISTRATOR.'/components/com_finder/helpers/indexer/adapter.php';

class PlgFinderRadioitem extends FinderIndexerAdapter
{
protected $context = 'Radioitem';
protected $extension = 'com_radiocatalog';
protected $layout = 'item';
protected $type_title = 'item';
protected $table = '#__radiocatalog_item';
protected $state_field = 'published';
protected $autoloadLanguage = true;

  protected function setup()
        {
           return true;
        }


   public function onFinderDelete($context, $table)
   {
      if ($context == 'com_radiocatalog.item')
      {
         $id = $table->id;
      }
      elseif ($context == 'com_finder.index')
      {
         $id = $table->id;
      }
      else
      {
         return true;
      }

      return $this->remove($id);
   }

   public function onFinderChangeState($context, $pks, $value)
   {
      if ($context == 'com_radiocatalog.item')
      {
         $this->itemStateChange($pks, $value);
      }

      if ($context == 'com_plugins.plugin' && $value === 0)
      {
         $this->pluginDisable($pks);
      }
   }

   protected function index(FinderIndexerResult $item, $format = 'html')
   {
      if (JComponentHelper::isEnabled($this->extension) == false)
      {
         return;
      }

      $item->url = $this->getURL($item->id, 'com_radiocatalog&layout=item', $this->layout);
      $item->route = 'index.php?option=com_radiocatalog&view=item&layout=item&id='.$item->id;
      $item->addTaxonomy('Type', 'Radioitems');
      $item->addTaxonomy('Language', $item->language);
      $this->indexer->index($item);     
   }

   protected function getListQuery($sql = null)
   {
      $db = JFactory::getDbo();
      $sql = $sql instanceof JDatabaseQuery ? $sql : $db->getQuery(true);
      $sql->select('a.id as id, a.name as title, a.description as description, a.published as published');
      $sql->from('#__radiocatalog_item AS a');

      return $sql;
   }

   protected function getStateQuery()
   {
      $sql = $this->db->getQuery(true);
      $sql->select($this->db->quoteName('a.id'));
      $sql->select($this->db->quoteName('a.name').' as title');
      $sql->select($this->db->quoteName('a.published').' as published');
      $sql->from($this->db->quoteName('#__radiocatalog_item'). ' AS a');
      return $sql;
   }

}
?>
Записан
newvideo
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Пол: Мужской
Сообщений: 192


« Ответ #1 : 07.01.2017, 20:44:04 »

У меня плагин Smart Search Zoo не работает. Создаю модуль "умный поиск". А он выводит результаты даже с выключенным плагином. А с включенным - никаких изменений. шаблон Smart Search не выводится.
Простой поиск выводит шаблон Search Zoo, но без картинок.
Почему так?
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet