This guide covers how to create, edit, and manage content using the EmDash admin dashboard.
Accessing the Admin
Open your browser to /_emdash/admin on your site. Log in with the credentials you created during setup.
The dashboard displays:
- Sidebar - Navigation to collections, media, and settings
- Content list - Entries in the selected collection
- Quick actions - Create new content, bulk operations
Creating Content
-
Click a collection name in the sidebar (e.g., Posts)
-
Click New Post (or the equivalent for your collection)
-
Fill in the required fields:
- Title - The content’s display name
- Slug - URL identifier (auto-generated from title, editable)
-
Add content using the rich text editor
-
Set metadata in the sidebar:
- Status - Draft, Published, or Archived
- Publication date - When to publish
- Categories and tags - Taxonomy assignments
-
Click Save
Content Statuses
Every entry has one of three statuses:
| Status | Visibility | Use case |
|---|---|---|
| Draft | Admin only | Work in progress |
| Published | Public | Live content |
| Archived | Admin only | Retired content |
Change status using the dropdown in the editor sidebar.
The Rich Text Editor
EmDash’s editor supports:
- Headings - H2 through H6
- Formatting - Bold, italic, underline, strikethrough
- Lists - Ordered and unordered
- Links - Internal and external
- Images - Insert from media library
- Code blocks - With syntax highlighting
- Embeds - YouTube, Vimeo, Twitter
- Sections - Reusable content blocks via
/sectioncommand
Slash Commands
Type / to access quick insert commands:
| Command | Action |
|---|---|
/section | Insert a reusable section |
/image | Insert an image from media library |
/code | Insert a code block |
Keyboard Shortcuts
| Action | Shortcut |
|---|---|
| Bold | Ctrl/Cmd + B |
| Italic | Ctrl/Cmd + I |
| Link | Ctrl/Cmd + K |
| Undo | Ctrl/Cmd + Z |
| Redo | Ctrl/Cmd + Shift + Z |
| Save | Ctrl/Cmd + S |
Inserting Images
-
Click the image button in the toolbar
-
Select an existing image from the media library, or upload a new one
-
Add alt text (required for accessibility)
-
Adjust alignment and size options
-
Click Insert
Editing Content
-
Navigate to the collection containing the content
-
Click on the entry you want to edit
-
Make your changes
-
Click Save
Changes to published content appear immediately on your site. No rebuild required.
Revision History
EmDash tracks changes to content. Access revision history from the editor sidebar:
-
Click Revisions in the editor sidebar
-
View the list of previous versions with timestamps
-
Click a revision to preview it
-
Click Restore to revert to that version
Bulk Operations
Perform actions on multiple entries at once:
-
Use the checkboxes to select entries in the content list
-
Click the Bulk Actions dropdown
-
Select an action:
- Publish - Set all selected to published
- Archive - Set all selected to archived
- Delete - Permanently remove selected
-
Confirm the action
Searching and Filtering
Search
Use the search box to find content by title or content. Search is case-insensitive and matches partial words.
Filters
Filter the content list by:
- Status - Draft, Published, Archived
- Date range - Created or modified dates
- Author - Who created the content
- Taxonomy - Category or tag assignments
Click Clear Filters to reset.
Scheduling Content
Schedule content to publish at a future date:
-
Create or edit content
-
Set status to Draft
-
Set the Publication date to a future date and time
-
Click Save
When the publication date arrives, the content automatically becomes published.
Deleting Content
Delete content from the edit screen or content list:
From the Editor
-
Open the content you want to delete
-
Click Delete in the toolbar
-
Confirm the deletion
From the List
-
Select entries using checkboxes
-
Click Bulk Actions > Delete
-
Confirm the deletion
Content API
For programmatic access, use the EmDash admin API:
Create Content
POST /_emdash/api/content/posts
Content-Type: application/json
Authorization: Bearer YOUR_API_TOKEN
{
"title": "My New Post",
"slug": "my-new-post",
"content": "<p>Post content here</p>",
"status": "draft"
}
Update Content
PUT /_emdash/api/content/posts/my-new-post
Content-Type: application/json
Authorization: Bearer YOUR_API_TOKEN
{
"title": "Updated Title",
"status": "published"
}
Delete Content
DELETE /_emdash/api/content/posts/my-new-post
Authorization: Bearer YOUR_API_TOKEN
Translating Content
When i18n is enabled, you can create translations of any content entry.
Creating a translation
-
Open the content entry you want to translate
-
In the editor sidebar, find the Translations panel
-
Click Translate next to the target locale
-
Edit the pre-filled content — adjust the title, slug, and body for the new language
-
Click Save
The new translation is linked to the original entry and starts as a draft. Publish it independently when the translation is ready.
Switching between translations
The Translations panel shows all configured locales. Click Edit next to any existing translation to navigate to it directly. The current locale is marked with a checkmark.
Locale filter
In the content list, use the locale dropdown in the toolbar to filter entries by language. Each entry shows its locale in a dedicated column.
See the Internationalization guide for full details on configuration, querying, and the language switcher.
Next Steps
- Querying Content - Retrieve content in your templates
- Media Library - Upload and manage files
- Taxonomies - Organize content with categories and tags
- Internationalization - Multilingual content and translations