MySQL
Hier laten we zien, hoe je met een MySQL query een samenvatting maakt van je Joomla Weblinks component. Tot de Joomla versie 3.4 hoorde deze component bij de standaard installatie. Een nadeel was, dat de rapportage mogelijkheden beperkt waren. Tegenwoordig moet de Weblinks component apart geinstalleerd worden. De basis van de component is en blijft robuust. Onderstaand een idee hoe je de gegevens kunt samenvatten en rangschikken. Eerst het resultaat:Dit is de gebruikte query:
SELECT |
jos_categories.path AS Omschrijving, |
COUNT(jos_categories.title) AS Aantal |
FROM jos_weblinks LEFT JOIN |
jos_categories ON jos_weblinks.catid = jos_categories.id LEFT JOIN |
jos_categories jos_categories1 ON jos_categories.parent_id = |
jos_categories1.id |
WHERE jos_weblinks.state = 1 and jos_weblinks.access = 1 |
GROUP BY jos_categories.path |
UNION |
SELECT |
'Aantal weblinks' AS Omschrijving, |
COUNT(jos_categories.title) AS Aantal |
FROM jos_weblinks LEFT JOIN |
jos_categories ON jos_weblinks.catid = jos_categories.id LEFT JOIN |
jos_categories jos_categories1 ON jos_categories.parent_id = |
jos_categories1.id |
WHERE jos_weblinks.state = 1 and jos_weblinks.access = 1 |
UNION |
SELECT |
'Aantal categorien' AS Omschrijving, |
COUNT(DISTINCT jos_categories.path) AS Aantal |
FROM jos_weblinks LEFT JOIN |
jos_categories ON jos_weblinks.catid = jos_categories.id LEFT JOIN |
jos_categories jos_categories1 ON jos_categories.parent_id = |
jos_categories1.id |
WHERE jos_weblinks.state = 1 and jos_weblinks.access = 1 |
De bovenstaande query kan gedraaid worden in phpMyAdmin of met een Windows client voor MySQL zoals bijvoorbeeld HeidiSQL.
Plotalot
In Plotalot kan de query uitgevoerd worden zonder een vaste prefix. Vervang in de query de prefix jos_ door #__ (met een dubbele underscore).
PLOTALOT QUERY JOOMLA WEBLINKS AANTAL |
SELECT |
CONCAT('',#__categories.path,'') AS Omschrijving, |
COUNT(#__categories.title) AS Aantal |
FROM #__weblinks LEFT JOIN |
#__categories ON #__weblinks.catid = #__categories.id LEFT JOIN |
#__categories #__categories1 ON #__categories.parent_id = |
#__categories1.id |
GROUP BY #__categories.path |
UNION |
SELECT |
'Aantal weblinks' AS Omschrijving, |
COUNT(#__categories.title) AS Aantal |
FROM #__weblinks LEFT JOIN |
#__categories ON #__weblinks.catid = #__categories.id LEFT JOIN |
#__categories #__categories1 ON #__categories.parent_id = |
#__categories1.id |
WHERE #__weblinks.state = 1 and #__weblinks.access = 1 |
UNION |
SELECT |
'Aantal categorien' AS Omschrijving, |
COUNT(DISTINCT #__categories.path) AS Aantal |
FROM #__weblinks LEFT JOIN |
#__categories ON #__weblinks.catid = #__categories.id LEFT JOIN |
#__categories #__categories1 ON #__categories.parent_id = |
#__categories1.id |
WHERE #__weblinks.state = 1 and #__weblinks.access = 1 |
Een prettige eigenschap van Plotalot is, dat je een hyperlink kunt verweven in de query. De onderliggende hyperlink in #__categories.path is %%J_ROOT_URI%%/index.php?option=com_weblinks&view=category&id=',#__categories.id,' . Via de verwijzing %%J_ROOT_URI%% wordt naar de root van de Joomla installatie gestuurd.