Drupal 7 审计 SQL 查询

在 Drupal 站点上进行站点审核时,了解可用的内容类型、用户和分类术语始终是一个好主意。以下是我在开始进行 Drupal 审计时倾向于使用的一些 SQL 查询。

用户/角色细分

SELECTrole.nameas Role, COUNT(role.name) as Count
FROM role AS role
INNER JOIN users_roles AS users_roles ONrole.rid= users_roles.rid
GROUP BY role.name
ORDER BY Count DESC;

这会产生类似于以下内容的输出。

角色数数
Commenter20
Moderator9
Writer4
Editor2

这会产生类似于以下内容的输出。

内容类型细分

SELECT node_type.name AS Name, node_type.type AS 'Machine Name', count(node_type.type) AS Count
FROM node AS node
INNER JOIN node_type AS node_type onnode.type= node_type.type
GROUP BY node_type.type
ORDER BY Count DESC;

名称机器名称数数
Blog entry博客100
论坛主题论坛14
6
轮询轮询7
网络表格网络表格1

词汇分解

SELECTvocabulary.nameAS Name, COUNT(vocabulary.name) AS Count
FROM taxonomy_vocabulary AS vocabulary
INNER JOIN taxonomy_term_data AS term_data ON term_data.vid = vocabulary.vid
GROUP BY vocabulary.name
ORDER BY Count DESC 
LIMIT 0 , 30;

这会产生类似于以下内容的输出。

名称数数
标签100
Categories30
Forums13

这只能让您快速初步了解 Drupal 设置中可用的软件。如需更复杂的分析,请查看 Site Audit Drush 模块。该模块将提供所有这些信息的完整分类,以及需要警惕的问题的迹象。