Ругается на поиск: Invalid argument supplied for foreach() fulltext_search.php on line 18 2.X

 
Посетитель
no avatar
МедальАвторитет форума
Сообщений: 2917
Подскажите в чем может быть дело: при попытке поиска чего-либо на сайте выдает?

Warning: Invalid argument supplied for foreach() in /system/controllers/groups/hooks/fulltext_search.php on line 18
Редактировалось: 1 раз (Последний: 6 октября 2019 в 17:31)
Посетитель
small user social cms
МедальПочетный донор проекта
Сообщений: 846
В 2.12.2
Код PHP:
  1. // по каким полям поиск
  2. $match_fields['groups'] = array();
  3. // какие поля получать
  4. $select_fields['groups'] = array('id', 'slug', 'date_pub');
  5. // из каких таблиц выборка
  6. $table_names['groups'] = 'groups';
  7.  
  8. $fields = $this->loadGroupsFields()->getGroupsFields();
  9.  
  10. foreach($fields as $field){[/b] // 18
  11.  
  12. // в настройках полей должно быть включено их участие в индексе
  13. $is_text = $field['handler']->getOption('in_fulltext_search');
  14.  
Редактировалось: 1 раз (Последний: 6 октября 2019 в 18:53)
Реклама
cms
Посетитель
no avatar
МедальАвторитет форума
Сообщений: 2917
@noname:

В 2.12.2
Код PHP:
  1. // по каким полям поиск
  2. $match_fields['groups'] = array();
  3. // какие поля получать
  4. $select_fields['groups'] = array('id', 'slug', 'date_pub');
  5. // из каких таблиц выборка
  6. $table_names['groups'] = 'groups';
  7.  
  8. $fields = $this->loadGroupsFields()->getGroupsFields();
  9.  
  10. foreach($fields as $field){[/b] // 18
  11.  
  12. // в настройках полей должно быть включено их участие в индексе
  13. $is_text = $field['handler']->getOption('in_fulltext_search');
  14.  

что теперь с этим делать?)
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4575
Def:
что теперь с этим делать?)
Так лишь бы ответить) Что не делают для набивки кол-ва сообщений.

Аналогичный код, что кэп выше привёл, замените на этот.
Код PHP:
  1. if($fields){
  2. foreach($fields as $field){
  3.  
  4. // в настройках полей должно быть включено их участие в индексе
  5. $is_text = $field['handler']->getOption('in_fulltext_search');
  6.  
  7. if ($is_text && (!$field['groups_read'] || $this->cms_user->isInGroups($field['groups_read']))){
  8.  
  9. $match_fields['groups'][] = $field['name'];
  10. $select_fields['groups'][] = $field['name'];
  11.  
  12. }
  13.  
  14. if ($field['name'] == 'logo' &&
  15. (!$field['groups_read'] || $this->cms_user->isInGroups($field['groups_read']))){
  16. $select_fields['groups']['image'] = $field['name'];
  17. }
  18.  
  19. }
  20. }
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Посетитель
no avatar
МедальАвторитет форума
Сообщений: 2917
Fuze:

Def:
что теперь с этим делать?)
Так лишь бы ответить) Что не делают для набивки кол-ва сообщений.

Аналогичный код, что кэп выше привёл, замените на этот.
Код PHP:
  1. if($fields){
  2. foreach($fields as $field){
  3.  
  4. // в настройках полей должно быть включено их участие в индексе
  5. $is_text = $field['handler']->getOption('in_fulltext_search');
  6.  
  7. if ($is_text && (!$field['groups_read'] || $this->cms_user->isInGroups($field['groups_read']))){
  8.  
  9. $match_fields['groups'][] = $field['name'];
  10. $select_fields['groups'][] = $field['name'];
  11.  
  12. }
  13.  
  14. if ($field['name'] == 'logo' &&
  15. (!$field['groups_read'] || $this->cms_user->isInGroups($field['groups_read']))){
  16. $select_fields['groups']['image'] = $field['name'];
  17. }
  18.  
  19. }
  20. }

Спасибо большое, сработало:)
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.