Bericht über Themen und zugehörige Themenkomponenten

Diese Abfrage bietet eine umfassende Ansicht aller Themes in Ihrer Discourse-Instanz zusammen mit ihren installierten Komponenten und kann für Administratoren hilfreich sein, die mehrere Themes verwalten und schnell identifizieren müssen, welche Komponenten auf jedem Theme installiert sind.

-- [params]
-- null text :theme_name

-- Abfrage zum Auflisten aller Themes und ihrer zugehörigen installierten Komponenten
WITH parent_themes AS (
  SELECT id, name
  FROM themes
  WHERE component = false
    AND (:theme_name IS NULL OR name ILIKE '%' || :theme_name || '%')
)

SELECT
  pt.name AS theme_name,
  ct.name AS component_name,
  ct.enabled AS component_enabled
FROM parent_themes pt
LEFT JOIN child_themes child ON child.parent_theme_id = pt.id
LEFT JOIN themes ct ON ct.id = child.child_theme_id
ORDER BY pt.name, ct.name

Parameter

  • theme_name: (Optional) Filtern Sie die Ergebnisse, um nur Themes anzuzeigen, die diesen Text enthalten. Die Standardansicht zeigt alle Themes und ihre Komponenten.

Ergebnisse

  • theme_name: Der Name jedes Themes.
  • component_name: Der Name der auf dem Theme installierten Komponenten.
  • component_enabled: Ob die Komponente aktiviert (true) oder deaktiviert (false) ist.

Themes, die keine Komponenten haben, werden mit NULL-Werten für die Komponentenfelder angezeigt. Die Ergebnisse sind alphabetisch nach Theme-Namen und dann nach Komponenten-Namen sortiert.

Beispielergebnisse

theme_name component_name component_enabled
Default discourse-adplugin true
Default discourse-chat true
Default discourse-signatures false
Corporate discourse-header-search true
Corporate discourse-tooltips true
3 „Gefällt mir“