It works just great. Now I can make all my statistical pages. I’ll post the result here as soon as I have made the styling.
$published='1'
$modx->getFullTableName('modx_site_content'), 'published > 0'<?php
$total = '0';
$parentId = !empty($parentId) ? $parentId : 0;
$childIds = $modx->getChildIds($parentId, 10); /* go 10 levels down in document tree */
if (!empty($childIds)) {
$query = "SELECT COUNT(id) FROM ".$modx->getFullTableName('site_content')." WHERE `published`=1 AND `id` IN (" . implode(',', $childIds) . ")";
if ($result = $modx->db->query($query)) {
$total = $modx->db->getValue($result);
}
}
return (string) $total;
?>$query = "SELECT COUNT(`value`) FROM " . $modx->getFullTableName('site_tmplvar_contentvalues') . " WHERE `tmplvarid` = {$tmplVarId} AND `value` = '{$value}' AND `contentid` IN (" . implode(',', $childIds) . ") AND $modx->getFullTableName('site_content')." WHERE `published`=1";<?php
$total = '0';
$parentId = !empty($parentId) ? $parentId : 0;
$childIds = $modx->getChildIds($parentId, 1);
if (!empty($value) && !empty($childIds)) {
$query = "SELECT COUNT(`value`) FROM " . $modx->getFullTableName('site_tmplvar_contentvalues') . " WHERE `tmplvarid` = {$tmplVarId} AND `value` = '{$value}' AND `contentid` IN ((SELECT id FROM ".$modx->getFullTableName('site_content')." WHERE id IN(" . implode(',', $childIds) . ") AND published=1 AND deleted=0))";
if ($result = $modx->db->query($query)) {
$total = $modx->db->getValue($result);
}
}
return (string) $total;
?>« MODx Parse Error »
MODx encountered the following error while attempting to parse the requested resource:
« Execution of a query to the database failed - Subquery returns more than 1 row »
SQL: SELECT COUNT(`value`) FROM `dbname`.`modx_site_tmplvar_contentvalues` WHERE `tmplvarid` = 25 AND `value` = 'Dining' AND `contentid` IN ((SELECT id FROM `dbname`.`modx_site_content` WHERE id IN(16,111,99,230,218,219,96,80,231,233,235,236,60,59,58,220,221,225,226,227,109,113,114,103,228,102,98,97,229,224,223,222,217,57,56,74,73,72,71,70,69,68,67,95,66,79,76,75,65,55,54,53,214,208,22,61,62,63,64,78,14,237,94,239,238,52,50,49,234,48,24,47,232,51) AND published=1 AND deleted=0))<?php
$total = '0';
$parentId = !empty($parentId) ? $parentId : 0;
$childIds = $modx->getChildIds($parentId, 1);
if (!empty($value) && !empty($childIds)) {
$query = "SELECT COUNT(`cv`.`value`) FROM " . $modx->getFullTableName('site_tmplvar_contentvalues') . " `cv` JOIN ".$modx->getFullTableName('site_content')." `sc` ON `cv`.`contentid` IN (" . implode(',', $childIds) . ") AND `cv`.`tmplvarid` = {$tmplVarId} AND `cv`.`value` = '{$value}' AND `sc`.`id` = `cv`.`contentid` AND `sc`.`published` = 1 AND `sc`.`deleted` = 0";
if ($result = $modx->db->query($query)) {
$total = $modx->db->getValue($result);
}
}
return (string) $total;
?>