Jump to content


Photo
- - - - -

Теги - фильтрация

теги

Best Answer SmetDenis , 29 June 2016 - 08:25

Лимит можно насильно ограничить в контроллере search
jbuniversal\framework\controllers\search.php

Например, так
0kgt_200x0.png

Код для создании ссылки я бы упросил. Например, так
Так ссылка сформируется валидной и легко понять что в ней будет.

<?php

$urlParams = [
    'e'          => [
        '_itemtag'    => $valtag,
        '_itemauthor' => $authorid,
    ],
    'order'      => [
        'field'   => 'corepublish_up',
        'reverse' => '1',
        'mode'    => 's'
    ],
    'logic'      => 'and',
    'exact'      => '1',
    'controller' => 'searchjbuniversal',
    'task'       => 'filter',
    'type'       => 'news',
    'app_id'     => '1',
];

$url = $this->app->jbrouter->addParamsToUrl('/', $urlParams);
echo $valtags[] = "<li><a href=\"{$url}\">{$valtag}</a></li>";

Go to the full post


  • This topic is locked This topic is locked
5 replies to this topic

#1 CB9TOIIIA

CB9TOIIIA
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 23 June 2016 - 13:34

Вопрос такой) есть тэги zoo, я смог получить кол-во и какие теги у автора были в статье. Но вопрос такой: нет никакой возможность отфильтровать по тегу и автору и отобразить статьи. Т.е.  автор Петя у него 10 статей про кулинарию, и 20 тегов. Теги имеют ссылку - /tag/молоко.html  - фильтр только по тегам. А вот еще и по автору - такое нельзя сделать?


  • 0

#2 isay777

isay777
  • JBZoo User (rus)
  • User rate: 113.4
  • posts: 1878
  • topics: 232

Posted 23 June 2016 - 14:11

Вопрос такой) есть тэги zoo, я смог получить кол-во и какие теги у автора были в статье. Но вопрос такой: нет никакой возможность отфильтровать по тегу и автору и отобразить статьи. Т.е. автор Петя у него 10 статей про кулинарию, и 20 тегов. Теги имеют ссылку - /tag/молоко.html - фильтр только по тегам. А вот еще и по автору - такое нельзя сделать?

Автор отдельный тип?
  • 1
ХОСТИНГ для сайтов jbzoo (все попугаи)

#3 CB9TOIIIA

CB9TOIIIA
  • Topic Starter
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 23 June 2016 - 14:16

Автор... и отдельный акк и отдельная страница в zoo и отдельный тип - угу.

Но все в пределах одного appid


  • 0

#4 CB9TOIIIA

CB9TOIIIA
  • Topic Starter
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 24 June 2016 - 14:08

Собственно и вопрос: 

 

0_a59f8_60fe353b_orig.png

 

Теги автора получил - но как по клику отправить на страницу  тегов только этого автора?

 

Вывести на данной странице статьи с его тегами - не проблема - а вот по клику в куда-нибудь... как?


  • 0

#5 CB9TOIIIA

CB9TOIIIA
  • Topic Starter
  • Administrators
  • User rate: 230.6
  • posts: 3680
  • topics: 235

Posted 27 June 2016 - 08:12

Сделал - псевдо search:

echo  $valtags[] = '<li><a href="/?e[_itemtag]='.$valtag.'&amp;e[_itemauthor]='.$authorid.'&amp;order[field]=corepublish_up&amp;order[reverse]=1&order[mode]=s&logic=and&amp;send-form=Искать&amp;exact=1&amp;controller=searchjbuniversal&amp;task=filter&amp;type=news&amp;app_id=1">'.$valtag. '</a>  '. $value.'</li>';

Но есть limit - можно ли как-то насильно его задать? (не через get, т.к. пользователь может просто поменять цифры). т.к. есть и выборки по 1000 и 3000 - высоконагруженно будет, т.е. limit=20 стоит и вроде по умолчанию. Можно ли как-то сделать ограничение? например на 100 максимум. Если >100 - не выполнять запрос - писать отказ.


Edited by CB9TOIIIA, 27 June 2016 - 08:19.

  • 0

#6 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 29 June 2016 - 08:25   Best Answer

Лимит можно насильно ограничить в контроллере search
jbuniversal\framework\controllers\search.php

Например, так
0kgt_200x0.png

Код для создании ссылки я бы упросил. Например, так
Так ссылка сформируется валидной и легко понять что в ней будет.
<?php

$urlParams = [
    'e'          => [
        '_itemtag'    => $valtag,
        '_itemauthor' => $authorid,
    ],
    'order'      => [
        'field'   => 'corepublish_up',
        'reverse' => '1',
        'mode'    => 's'
    ],
    'logic'      => 'and',
    'exact'      => '1',
    'controller' => 'searchjbuniversal',
    'task'       => 'filter',
    'type'       => 'news',
    'app_id'     => '1',
];

$url = $this->app->jbrouter->addParamsToUrl('/', $urlParams);
echo $valtags[] = "<li><a href=\"{$url}\">{$valtag}</a></li>";


  • 1
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.






Click to return to top of page in style!