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

InstantCMS 2.X
#1 2 февраля 2022 в 22:55

2.13.1 Над списком контента категории, нужно вывести количество записей в них, на форуме нашел решение :

<a href="<?php $cat_count = cmsCore::getModel('content')->join('con_'.$ctype['name'].'_cats', 'ac', 'i.category_id = ac.id')->filterEqual('category_id', $c['id'])->filterOr('ac.parent_id = i.category_id')->getCount('con_'.$ctype['name'].'', 'id'); echo href_to($base_url. (($dataset && $is_ds_view && !$is_ds_hide)? '-'.$dataset: ''), $c['slug']); ?>"><?php echo $c['title'].' ('.$cat_count.')'; ?></a>

Выводится только в последнем уровне категорий (подкатегориях) prnt.sc/26nk0bw, а в категориях показывает нули prnt.sc/26nk04m

#2 3 февраля 2022 в 00:25

Расстрелять за такой подход и код :) А потом на форуме темы «Почему тормозит InstantCMS?».

По существу:

Необходимо делать подсчёт не в шаблоне. Необходимо количество кэшировать, обновляя при добавлении/удалении записей. Необходимо либо что-то подобное вносить в релиз, либо сделать дополнением по человечески, а в шаблоне лишь выводить готовое значение, например <?php echo $c['items_count']; ?>.

#3 3 февраля 2022 в 08:24

 Fuze, а как уже сделан подсчёт всех записей, когда страница переполняется? Ну то есть внизу списка показывается… Ну в доках bootstrap-а это называется «нумерация страниц», и там написано «показано от столько-то до столько-то из много-много».

#4 3 февраля 2022 в 09:42

Расстрелять за такой подход и код :)

Fuze

Даже знаю, кто это писал. Но стреляться не стану. 🙂

А подход был — решить задачу правкой одного файла.

Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.