# Documentation

**URL:** https://meta.discourse.org/c/documentation/10.md?page=4

[Latest](https://meta.discourse.org/latest.md) · [Categories](https://meta.discourse.org/categories.md) · [Tags](https://meta.discourse.org/tags.md)

**Page:** 5

---

## [Insert text or images anywhere on your site using CSS pseudo-elements](https://meta.discourse.org/t/insert-text-or-images-anywhere-on-your-site-using-css-pseudo-elements/99200)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [October 11, 2018, 11:12am UTC](https://meta.discourse.org/t/insert-text-or-images-anywhere-on-your-site-using-css-pseudo-elements/99200 "2018-10-11T11:12:34Z")

</div>

So, you want to insert some text or image in your Discourse site. Regarding the text in most cases it is sufficient to modify it from /admin/customize/site\_texts. Sometimes, however, it is our desire to add a sentence …

---

## [Set up Slack notifications using the discourse-chat-integration plugin](https://meta.discourse.org/t/set-up-slack-notifications-using-the-discourse-chat-integration-plugin/66730)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 106\
**Last updated:** [June 1, 2026, 1:26pm UTC](https://meta.discourse.org/t/set-up-slack-notifications-using-the-discourse-chat-integration-plugin/66730 "2026-06-01T13:26:59Z")

</div>

This howto describes how to setup the Slack provider included in discourse-chat-integration. It allows posting notifications to Slack, managing rules using Slash Commands, and posting transcripts back to Discourse. Slas…

---

## [Create, download, and restore a backup of your Discourse database](https://meta.discourse.org/t/create-download-and-restore-a-backup-of-your-discourse-database/122710)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 25\
**Last updated:** [May 29, 2026, 8:31pm UTC](https://meta.discourse.org/t/create-download-and-restore-a-backup-of-your-discourse-database/122710 "2026-05-29T20:31:09Z")

</div>

:bookmark: This guide provides step-by-step instructions for creating, downloading, and restoring a backup of your Discourse database. :person\_raising\_hand: Required user level: Administrator Discourse allows site ad…

---

## [Theme Developer Tutorial: 2. Creating a remote theme](https://meta.discourse.org/t/theme-developer-tutorial-2-creating-a-remote-theme/357797)

<div class="topic-metadata">

**Author:** [@system](https://meta.discourse.org/u/system)\
**Replies:** 0\
**Last updated:** [March 18, 2025, 3:59pm UTC](https://meta.discourse.org/t/theme-developer-tutorial-2-creating-a-remote-theme/357797 "2025-03-18T15:59:09Z")

</div>

In the last chapter, we created a basic theme via the Discourse admin interface. This works well enough for very simple themes. But as soon as you want to do something more complex, or share a theme more widely, you’ll n…

---

## [Set up a multisite development environment](https://meta.discourse.org/t/set-up-a-multisite-development-environment/229310)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [June 7, 2022, 4:01pm UTC](https://meta.discourse.org/t/set-up-a-multisite-development-environment/229310 "2022-06-07T16:01:37Z")

</div>

It’s possible to run discourse in multisite mode in development. A multisite server uses a different DB and hostname for each site that it serves. This is useful if you are developing a feature or a plugin that should be…

---

## [Install plugins in your non-Docker development environment](https://meta.discourse.org/t/install-plugins-in-your-non-docker-development-environment/205337)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [October 6, 2021, 9:47am UTC](https://meta.discourse.org/t/install-plugins-in-your-non-docker-development-environment/205337 "2021-10-06T09:47:24Z")

</div>

(This guide only covers non-docker dev install. For Docker dev :whale: see Install Discourse for development using Docker) If you’ve followed the instructions to set up your local discourse, you can install a plugin loc…

---

## [Install Discourse for development using Docker](https://meta.discourse.org/t/install-discourse-for-development-using-docker/102009)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 226\
**Last updated:** [May 22, 2026, 5:35am UTC](https://meta.discourse.org/t/install-discourse-for-development-using-docker/102009 "2026-05-22T05:35:27Z")

</div>

Developing using Docker Since Discourse runs in Docker, you should be able to run Discourse directly from your source directory using a Discourse development container. :white\_check\_mark: Pros: No need to install any …

---

## [Developing Discourse on GitHub Codespaces](https://meta.discourse.org/t/developing-discourse-on-github-codespaces/336131)

<div class="topic-metadata">

**Author:** [@system](https://meta.discourse.org/u/system)\
**Replies:** 14\
**Last updated:** [September 9, 2025, 1:50pm UTC](https://meta.discourse.org/t/developing-discourse-on-github-codespaces/336131 "2025-09-09T13:50:26Z")

</div>

GitHub Codespaces is a very fast way to get started with Discourse development. Their free tier is good for 30 hours per month of a 4-core machine. Getting Started Navigate to the github repository Press the , (com…

---

## [Developing Discourse using a Dev Container](https://meta.discourse.org/t/developing-discourse-using-a-dev-container/336366)

<div class="topic-metadata">

**Author:** [@system](https://meta.discourse.org/u/system)\
**Replies:** 13\
**Last updated:** [May 28, 2026, 6:59pm UTC](https://meta.discourse.org/t/developing-discourse-using-a-dev-container/336366 "2026-05-28T18:59:23Z")

</div>

Dev Containers is an open standard for configuring a development environment inside a container. This almost entirely eliminates the need to install/configure Discourse-specific tools/dependencies on your local machine, …

---

## [Creating and managing events](https://meta.discourse.org/t/creating-and-managing-events/149964)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 4\
**Last updated:** [February 12, 2026, 9:02pm UTC](https://meta.discourse.org/t/creating-and-managing-events/149964 "2026-02-12T21:02:17Z")

</div>

:bookmark: This guide explains how to create and manage events using the Calendar and Event plugin in Discourse. It covers how to create events, set event options, interact with events, and view the upcoming events cale…

---

## [Setup DiscourseConnect - Official Single-Sign-On for Discourse (sso)](https://meta.discourse.org/t/setup-discourseconnect-official-single-sign-on-for-discourse-sso/13045)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 46\
**Last updated:** [May 27, 2026, 3:47am UTC](https://meta.discourse.org/t/setup-discourseconnect-official-single-sign-on-for-discourse-sso/13045 "2026-05-27T03:47:22Z")

</div>

DiscourseConnect is a core Discourse feature that allows you to configure “Single Sign-On (SSO)” to completely outsource all user registration and login from Discourse to another site. Offered to our pro, business and en…

---

## [Troubleshooting Outgoing Email](https://meta.discourse.org/t/troubleshooting-outgoing-email/271484)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 4\
**Last updated:** [February 27, 2024, 9:20pm UTC](https://meta.discourse.org/t/troubleshooting-outgoing-email/271484 "2024-02-27T21:20:04Z")

</div>

:bookmark: This is an explanation guide discussing how admins can troubleshoot outgoing email from a Discourse site. :person\_raising\_hand: Required user level: Administrator Discourse relies heavily on email for user…

---

## [Configure automatic backups for Discourse](https://meta.discourse.org/t/configure-automatic-backups-for-discourse/14855)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 44\
**Last updated:** [May 19, 2026, 5:18pm UTC](https://meta.discourse.org/t/configure-automatic-backups-for-discourse/14855 "2026-05-19T17:18:12Z")

</div>

:bookmark: This guide explains how to configure automatic backups for Discourse, including storage options on local servers and S3-compatible storage. Learn how to set up automatic backups for your Discourse platform. …

---

## [How to set the same sidebar categories for all the users](https://meta.discourse.org/t/how-to-set-the-same-sidebar-categories-for-all-the-users/402479)

<div class="topic-metadata">

**Author:** [@fzngagan](https://meta.discourse.org/u/fzngagan)\
**Replies:** 3\
**Last updated:** [May 14, 2026, 10:56pm UTC](https://meta.discourse.org/t/how-to-set-the-same-sidebar-categories-for-all-the-users/402479 "2026-05-14T22:56:55Z")

</div>

Sometimes, site admins need to make sure that all users see the same set of categories in their sidebar. Here’s how to do that: Remove all the categories from default navigation menu categories and save. Make sure to a…

---

## [Watched Words Reference Guide](https://meta.discourse.org/t/watched-words-reference-guide/241735)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 16\
**Last updated:** [February 16, 2026, 2:30pm UTC](https://meta.discourse.org/t/watched-words-reference-guide/241735 "2026-02-16T14:30:34Z")

</div>

:bookmark: This is a reference guide for describing how the Watched Words page functions and the different types of action types you can use to block specific words on a Discourse site. :person\_raising\_hand: Required u…

---

## [Configuring Default Notification Settings for Users](https://meta.discourse.org/t/configuring-default-notification-settings-for-users/285619)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 11\
**Last updated:** [February 20, 2026, 2:57pm UTC](https://meta.discourse.org/t/configuring-default-notification-settings-for-users/285619 "2026-02-20T14:57:20Z")

</div>

:bookmark: This is an explanation guide intended to help understand the process of configuring default notification settings for users on a Discourse site. :person\_raising\_hand: Required user level: Administrator As …

---

## [Integrate Google Tag Manager with Google Analytics](https://meta.discourse.org/t/integrate-google-tag-manager-with-google-analytics/47335)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 4\
**Last updated:** [January 26, 2025, 5:47pm UTC](https://meta.discourse.org/t/integrate-google-tag-manager-with-google-analytics/47335 "2025-01-26T17:47:40Z")

</div>

:bookmark: This guide will help you set up Google Tag Manager and use it with Google Analytics on your Discourse site. Additionally, it covers configuring variables, triggers, and tags in Google Tag Manager to track pag…

---

## [Get started with Theme Creator and the Theme CLI](https://meta.discourse.org/t/get-started-with-theme-creator-and-the-theme-cli/108444)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 8\
**Last updated:** [May 7, 2026, 2:04pm UTC](https://meta.discourse.org/t/get-started-with-theme-creator-and-the-theme-cli/108444 "2026-05-07T14:04:22Z")

</div>

This topic will walk you through how to use the Theme CLI with our Theme Creator site to develop a theme and preview your changes on a live Discourse site. Sign up for an account here on Meta if you haven’t already …

---

## [Understanding pageviews and the site traffic report](https://meta.discourse.org/t/understanding-pageviews-and-the-site-traffic-report/324062)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 1\
**Last updated:** [May 5, 2026, 11:27pm UTC](https://meta.discourse.org/t/understanding-pageviews-and-the-site-traffic-report/324062 "2026-05-05T23:27:54Z")

</div>

:bookmark: This is an explanation about how Discourse handles pageviews and how to interpret the “Site traffic” report. :person\_raising\_hand: Required user level: Administrator What are pageviews in Discourse? Pagev…

---

## [Developing Discourse Plugins - Part 2 - Connect to a plugin outlet](https://meta.discourse.org/t/developing-discourse-plugins-part-2-connect-to-a-plugin-outlet/31001)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 38\
**Last updated:** [November 23, 2025, 9:35am UTC](https://meta.discourse.org/t/developing-discourse-plugins-part-2-connect-to-a-plugin-outlet/31001 "2025-11-23T09:35:13Z")

</div>

Previous tutorial: Developing Discourse Plugins - Part 1 - Create a basic plugin Getting Started: Templates Discourse’s client application is written using the Ember.js Javascript framework. Ember uses Templates to gen…

---

## [Add custom content that only appears on your homepage](https://meta.discourse.org/t/add-custom-content-that-only-appears-on-your-homepage/131415)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 10\
**Last updated:** [February 29, 2024, 3:04pm UTC](https://meta.discourse.org/t/add-custom-content-that-only-appears-on-your-homepage/131415 "2024-02-29T15:04:44Z")

</div>

A very common situation you’ll find yourself in as a theme developer is the need to create content that only shows on the homepage of your community. You might add some HTML to the “After Header” section of your theme, …

---

## [Add localizable strings to themes and theme components](https://meta.discourse.org/t/add-localizable-strings-to-themes-and-theme-components/109867)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 22\
**Last updated:** [August 9, 2024, 7:58pm UTC](https://meta.discourse.org/t/add-localizable-strings-to-themes-and-theme-components/109867 "2024-08-09T19:58:55Z")

</div>

For those looking to add custom languages and translations to a Discourse theme or theme component, they can now include localised strings, which are made available for use in UI components. Translations are stored in th…

---

## [Structure of themes and theme components](https://meta.discourse.org/t/structure-of-themes-and-theme-components/60848)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [April 12, 2017, 3:41pm UTC](https://meta.discourse.org/t/structure-of-themes-and-theme-components/60848 "2017-04-12T15:41:30Z")

</div>

Discourse supports native themes that can be sourced from a .tar.gz archive or from a remote git repository including private repositories. An example theme is at: GitHub - discourse/discourse-simple-theme: Sam's sim…

---

## [Customizing specific system email templates](https://meta.discourse.org/t/customizing-specific-system-email-templates/88323)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 8\
**Last updated:** [November 3, 2025, 8:19am UTC](https://meta.discourse.org/t/customizing-specific-system-email-templates/88323 "2025-11-03T08:19:11Z")

</div>

Customizing specific system email templates :bookmark: This guide explains how to customize the individual email templates that Discourse uses for account notifications, invitations, admin alerts, and other system emai…

---

## [Read Only Modes in Discourse](https://meta.discourse.org/t/read-only-modes-in-discourse/296976)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 11\
**Last updated:** [May 1, 2026, 2:43pm UTC](https://meta.discourse.org/t/read-only-modes-in-discourse/296976 "2026-05-01T14:43:09Z")

</div>

:bookmark: This guide explains the various read-only modes available in Discourse, how to enable and disable them, and the scenarios in which you might want to use each mode. :person\_raising\_hand: Required user level: …

---

## [Tag topics using AI](https://meta.discourse.org/t/tag-topics-using-ai/401178)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [April 21, 2026, 11:15pm UTC](https://meta.discourse.org/t/tag-topics-using-ai/401178 "2026-04-21T23:15:00Z")

</div>

:bookmark: This guide explains how to automatically tag topics using the AI triage feature in the Discourse AI plugin combined with Discourse Automation. :person\_raising\_hand: Required user level: Administrator Tag t…

---

## [Auto-categorize topics using AI](https://meta.discourse.org/t/auto-categorize-topics-using-ai/401827)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [May 1, 2026, 1:04am UTC](https://meta.discourse.org/t/auto-categorize-topics-using-ai/401827 "2026-05-01T01:04:07Z")

</div>

:bookmark: This guide explains how to automatically categorize topics using the AI triage feature in the Discourse AI plugin combined with Discourse Automation. :person\_raising\_hand: Required user level: Administrator …

---

## [Moving posts to a new or existing topic](https://meta.discourse.org/t/moving-posts-to-a-new-or-existing-topic/136733)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [December 20, 2019, 7:40pm UTC](https://meta.discourse.org/t/moving-posts-to-a-new-or-existing-topic/136733 "2019-12-20T19:40:25Z")

</div>

:bookmark: This guide explains how to move posts to a new or existing topic, or to a new or existing personal message in Discourse. This feature helps keep discussions on topic and allows for moving public discussions t…

---

## [Enable setting to allow admins to permanently delete data](https://meta.discourse.org/t/enable-setting-to-allow-admins-to-permanently-delete-data/206678)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 3\
**Last updated:** [April 30, 2026, 9:38am UTC](https://meta.discourse.org/t/enable-setting-to-allow-admins-to-permanently-delete-data/206678 "2026-04-30T09:38:49Z")

</div>

:bookmark: This is a guide on how to enable the setting for administrators to permanently delete data on a Discourse instance. :person\_raising\_hand: Required user level: Admin As of v2026.4.0 Changelog | Discourse Re…

---

## [Bulk delete all topics in a category](https://meta.discourse.org/t/bulk-delete-all-topics-in-a-category/97904)

<div class="topic-metadata">

**Author:** [@Discourse](https://meta.discourse.org/u/Discourse)\
**Replies:** 0\
**Last updated:** [September 23, 2018, 10:43pm UTC](https://meta.discourse.org/t/bulk-delete-all-topics-in-a-category/97904 "2018-09-23T22:43:29Z")

</div>

:bookmark: This guide provides instructions on how to bulk delete all topics within a category on a self-hosted Discourse instance. :person\_raising\_hand: Required user level: System Administrator :warning: SSH acces…

[Previous page](https://meta.discourse.org/c/documentation/10.md?page=3)

[Next page](https://meta.discourse.org/c/documentation/10.md?page=5)
