Сортировка в pdoResources
Есть ли возможность в pdoResources сортировать ресурсы по дефолтным значениям tv параметров?
Комментарии: 12
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Только это не так, к сожалению. Если у ТВ ресурса выставлено дефолтное значением — в БД пусто. Проверь на досуге.
В таблице site_tmplvars есть столбец default_text.
Вот с учетом этого столбца нельзя сортировать все ресурсы? А то получается что те ресурсы у которых есть какое-то значение тв сортируются нормально, а те у которых только значение по умолчанию есть выводятся после всех отсортированных ресурсов не зависимо от дефолтного значения.
Поделись, пожалуйста.
Значит придется делать через плагин. При создании ресурса создавать тв параметр с определенным значением по умолчанию. Спасибо за подсказку.
Сначала выбирать и таблицы параметров группируя по contentid и join-ом подтягивать ресурсы
А в плагине можно управиться строчек за 15 с необходимой задачей.
Если честно, я не до конца понял, какая сортировка вам нужна? Ведь site_tmplvars — это таблица самих ТВ, а значения хранятся в site_tmplvar_contentvalues.
А имел я ввиду вот что. К примеру я записываю рейтинг страницы в тв параметр. Рейтинг может быть положительным, отрицательным и нулевым. Нулевой — это если за страницу никто не проголосовал, а значит тв для этой страницы не создан.
Вот и получается, что страницы с отрицательным и положительным рейтингом сортируются, а с нулевым — нет, т.к. для них тв создан не был. В итоге если сортировка идет на уменьшение, то сначала идут положительные, потом отрицательные, а уже потом нулевые.
Хотя, я бы сделал отдельную таблицу с рейтингом и для value задал тип «int».
В TV поле value (mediumtext), выборка будет дольше.
И на плагин повесил событие при создании документа писать значение в таблицу рейтинга.