Requirements
- Omeka S 3.x or 4.x
- PHP 8.1 or later
- MySQL or MariaDB (any version supported by Omeka S)
The module has no external PHP dependencies. Optional companions:
- A configured mail transport in Omeka S (
config/local.config.php) if you want moderation emails. - The OgImages module, which adds Open Graph share images to blog post pages.
- The API Browser module, which picks up the blog's API resources and their parameter descriptions.
Installing
- Copy the
Blogfolder into your Omeka Smodules/directory so thatmodules/Blog/Module.phpexists. - Log in to the admin panel as a Global Administrator.
- Go to Admin > Modules and click Install next to Blog.
Installation creates six tables: blog_post, blog_category, blog_tag, blog_post_tag, blog_post_site and blog_comment.
If a Global Administrator account exists, the module also seeds demo content attributed to that user: two categories (Announcements, Tutorials), two tags (omeka, getting-started), two published posts and one draft. The demo posts are not assigned to any site, so they do not appear publicly until you edit them and tick a site under Visible on sites (see Multi-Site Visibility). You can edit or delete the demo content at any time.
After installing, a Blog entry appears in the admin sidebar with four pages: Posts, Categories, Comments and Settings. The public blog for a site lives at /s/{site-slug}/blog. To put it in the site menu, see Displaying the Blog.
Upgrading
- Copy the new version over the existing
modules/Blogfolder. - Go to Admin > Modules. If the module shows Upgrade available, click Upgrade.
The upgrade step adds the featured_image_asset_id column and the blog_post_site table when they are missing (installations older than 1.1.0). No other schema changes are made.
Uninstalling
Uninstalling drops all six tables. This permanently deletes every post, category, tag, comment and site assignment. Export anything you want to keep first, for example through the REST API.
The following global settings are removed: blog_posts_per_page, blog_comments_enabled, blog_rss_enabled and blog_primary_color (plus the legacy blog_title and blog_comments_moderation_email keys).
Not removed:
- the
blog_moderation_user_idssetting (moderation recipients), - the Blog Profile values stored in each user's settings (
blog_bio,blog_profile_image_id), - assets used as featured images or profile images, which stay in Admin > Assets,
- cached share images in
modules/Blog/data/og-cache/.
If the module cannot be uninstalled from the admin panel, drop the tables manually and remove the module directory:
SET FOREIGN_KEY_CHECKS = 0;
DROP TABLE IF EXISTS blog_post_site;
DROP TABLE IF EXISTS blog_comment;
DROP TABLE IF EXISTS blog_post_tag;
DROP TABLE IF EXISTS blog_post;
DROP TABLE IF EXISTS blog_tag;
DROP TABLE IF EXISTS blog_category;
SET FOREIGN_KEY_CHECKS = 1;