Вывести количество записей

InstantCMS 2.X

Вывести количество записей в виджете список категорий

#1 2 сентября 2020 в 11:09
Доброго дня
Можно ли вывести количество записей в виджете список категорий?
Нужно дополнительно в коде запрос создать или еще еще варианты?
Может кто делал, подскажите как?
#2 2 сентября 2020 в 12:43
Ai, давал ответ тут /forum/thread31439-1.html#308444

Вот если бы записи были привязаны только к одной категории, и не было бы прав доступа к записи (потому что запись вам может быть видна, и тогда у вас записей 88, а мне не видна, и для меня записей 87), тогда да, это было бы просто — обновить запрос в базе.
#3 2 сентября 2020 в 13:06


Ai, давал ответ тут /forum/thread31439-1.html#308444

Вот если бы записи были привязаны только к одной категории, и не было бы прав доступа к записи (потому что запись вам может быть видна, и тогда у вас записей 88, а мне не видна, и для меня записей 87), тогда да, это было бы просто — обновить запрос в базе.

Zau4man

Можно этот простой вариант сделать игнорируя эти условия? Просто вывести все что есть в категории, все опубликованне записи.
#4 2 сентября 2020 в 22:13

Можно этот простой вариант сделать игнорируя эти условия? Просто вывести все что есть в категории, все опубликованне записи.

Ai
Можно. Будет так



Правке подверглись 2 файла
system/controllers/content/widgets/categories/widget.php
templates/default/controllers/content/widgets/categories/categories.tpl.php

Правки отмечены комментариями

  1.  
  2. /* получим количество */
  3. тут правки
  4. /* получим количество */
  5.  
Сделайте бакап перечисленных выше файлов.
Архив из сообщения распакуйте в корень сайта, согласившись на замену
Прикрепленный файл
categories100_p436r.zip 4 Кб
#5 17 октября 2020 в 15:48
Если запись может быть в нескольких категориях, то в запросе использовать лучше таблицу _cats_bind
/* получим количество */
$counts = $model->selectList([
'COUNT(i.item_id)' => 'count',
'category_id' => 'category_id'
],true)
->groupBy('category_id')
->get('con_ваш-тип-контента_cats_bind',false,'category_id');
/* получим количество */

И… спасибо за помощь!
#6 17 октября 2020 в 18:02
/forum/thread20918-4.html
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.