Overview
Ritus is an editorial content suite inside Magento 2. It connects shop data, editorial planning and publishing in one shared workflow. No additional external CMS is required for the functionality described in this manual.
Magento remains the source
Products, SKUs, Store Views, images and other approved product attributes provide the factual context.
Manual or AI assisted
All content can be written completely manually. AI is optional assistance, not a requirement.
Review, plan, publish
Blog and social media channels receive their own content, timing and status within one shared workflow.
Feature scope
- integrated Magento blog for Hyvä
- content planning with product assignment and campaigns
- fully manual content creation
- optional OpenAI assisted content creation
- human review and approval workflow
- editorial calendar
- Facebook, Instagram Feed, Instagram Stories and Telegram
- connection tests and publication checks
- version history and content templates
- compact media workspace for preparing images
- automatic UTM attribution and Magento based performance measurement
- Schema.org markup for the Ritus blog
Requirements
| Component | Requirement | Note |
|---|---|---|
| Magento | Magento 2 | Ritus works directly with Magento product data, Store Views, Cron and Admin. |
| Frontend | Hyvä Theme | The included blog is designed for Hyvä. |
| PHP | Compatible with the Magento version in use | The concrete PHP version follows the requirements of the existing Magento environment. |
| Cron | Working Magento Cron | Required for scheduled blog and social media publications. |
| Shell access | Recommended | Used for installation, compile, Static Content Deploy, cache operations and technical checks. |
| OpenAI | Optional | Only required when AI assisted content creation is used. |
| Social media access | Optional | Only required for external publishing channels that are actually used. |
Installation
Ritus is integrated into the existing Magento environment as a set of Magento modules. The visible product name is Vermontas Ritus. The technical modules use the Ritus naming as well.
Copy or extract the supplied modules to app/code/Vermonta/Ritus, app/code/Vermonta/RitusAi, app/code/Vermonta/RitusBlog, app/code/Vermonta/RitusPlanner and app/code/Vermonta/RitusSocial.
Enable the Ritus modules and then run the Magento setup upgrade.
Run Magento DI compile. On production systems this is part of the regular deployment process.
Explicitly run Magento Static Content Deploy. This step is part of the recommended Ritus installation and must not be skipped on production systems.
Flush the Magento cache after setup, compile and deploy have completed.
Make sure Magento Cron is running and that the Ritus sections are accessible in the Admin.
Complete installation sequence
php bin/magento module:enable Vermonta_Ritus Vermonta_RitusAi Vermonta_RitusBlog Vermonta_RitusPlanner Vermonta_RitusSocial
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy -f
php bin/magento cache:flush
php bin/magento setup:static-content:deploy -f should explicitly be run on production systems. Running only setup:upgrade and cache:flush is not the complete installation sequence.
Optional: deploy Static Content only for required locales
php bin/magento setup:static-content:deploy -f de_DE de_CH en_US fr_FR it_IT
Check module status
php bin/magento module:status Vermonta_Ritus
php bin/magento module:status Vermonta_RitusAi
php bin/magento module:status Vermonta_RitusBlog
php bin/magento module:status Vermonta_RitusPlanner
php bin/magento module:status Vermonta_RitusSocial
Setup and onboarding
After installation, Ritus guides the user through the most important steps up to the first production ready content item. External services that are not required can simply be skipped.
Verify the required Store View, blog presentation, categories and fundamental SEO settings.
Add your own OpenAI API access only if AI assisted content creation is intended.
Configure Facebook, Instagram and Telegram only for the channels you actually intend to publish to.
Use the integrated connection tests before scheduled publications depend on an external channel.
Create content manually or with AI assistance, assign products and move it through review and approval.
Creating content
Ritus deliberately separates editorial planning from actual publication. A planned content item may initially contain only a topic, products and notes and can later be developed into a complete article.
Typical content fields
| Field | Purpose |
|---|---|
| Topic | Editorial starting point for the content. |
| Store View | Language and shop context. |
| Campaign | Optional assignment to a wider campaign. |
| Products / SKUs | Magento products as factual context. The first assigned SKU is the main product; additional SKUs extend the content. |
| Expert notes | Optional editorial or specialist knowledge. |
| AI instructions | Optional additional instructions used only for AI creation. |
| Article | HTML content in code or visual editor. |
| SEO | Meta Title and Meta Description. |
| Social media | Channel specific copy, CTA and hashtags. |
| Image | Dedicated article image or suitable product image. |
Working completely manually
All editorial fields can be maintained without AI. Titles, teasers, article copy, Meta Title, Meta Description, social media copy, CTAs and hashtags can be written and edited directly by the editorial team.
Assigning products
Products are assigned through a Magento selection with search and grid. The first product provides the main context. Additional products extend that context. Ritus keeps product contexts separate so that characteristics from different SKUs are not mixed during AI generation.
AI features and models
The AI features use the shop owner's own OpenAI API account. Ritus sends the context intended for the current generation request and writes the resulting content back into the editorial fields.
Available models
| Model | Use | Note |
|---|---|---|
| GPT-5.6 Terra | Default model for normal editorial work | Ritus default with a balanced relationship between quality and API usage. |
| GPT-5.6 Sol | More demanding editorial tasks | For content where maximum quality is more important than API cost. |
| GPT-5.6 Luna | Fast and cost efficient generation | For higher volume or simpler editorial tasks. |
What Ritus can generate
- titles and teasers
- article content
- Meta Title and Meta Description
- Facebook copy
- Instagram copy
- Telegram copy
- call to action
- hashtags
Editorial guidance
Writing guidance and additional AI instructions can define how content should be written. Additional Magento product attributes can also be deliberately released as AI context.
Internal marking
Fields created by AI remain identifiable as AI generated in the Admin. Manual edits remain traceable as edited content. This marking is for editorial use and is not automatically published as a visible label in a blog or social media post.
Review and approval
Ritus deliberately separates creation from publication. An AI draft does not become published content merely because it has been generated.
Manual or AI assisted editing is possible.
The content exists but has not yet received editorial approval.
A responsible person has substantively reviewed the content and deliberately approved it.
After approval, content can be scheduled or published immediately. The blog and individual social media channels can have different publishing times.
EU AI Act and human review
Ritus supports a genuine human in the loop process. AI generated fields remain identifiable internally, are editorially reviewed and are published only after deliberate approval. After a completed human review and approval process, Ritus does not automatically add a visible label such as “AI generated” to blog or social media content.
Version history
Earlier versions of content remain traceable. Editors can compare changes and return to a previous state when required.
Campaigns and calendar
Campaigns group several content items under one editorial objective. Related blog posts and social media publications therefore remain visible in context.
Campaigns
- create and manage campaigns
- assign content to a campaign
- view related blog and social media publications together
- organize scheduled publishing in the campaign context
Editorial calendar
The calendar shows planned and published content. Blog and social media channels can have separate dates. A blog article can therefore be published first while accompanying social media posts follow later.
Blog, SEO and Schema markup
Ritus includes its own blog system for Magento 2 and Hyvä. Blog articles can originate from content planning or can be maintained directly by editors.
Blog features
- categories and posts
- responsive card overview
- article pages with readable URLs
- Store View assignment
- search and filters
- pagination
- featured image upload
- optional use of a product image
- related products
- Meta Title and Meta Description
- Canonical URL
- preview for unpublished posts
- scheduled publishing
- cache invalidation for relevant changes
Schema.org markup is included
Ritus outputs structured data for the blog, providing search engines with machine readable context for posts, overview pages and navigation.
| Schema type | Use |
|---|---|
BlogPosting | Individual blog article with editorial content and metadata. |
WebPage | General page context for a blog article. |
BreadcrumbList | Breadcrumb navigation and page hierarchy. |
CollectionPage | Blog overview or collection of posts. |
ItemList | Structured list of posts shown on an overview page. |
Indexing and preview
Public blog posts can be indexed. Blog search pages and unpublished previews are treated as noindex. Canonical information prevents unnecessary duplicate URLs.
Connections and publication check
Connection tests
Facebook, Instagram and Telegram can be checked directly in Ritus. The tests are intended to show whether the configured connection, destination and basic reachability work before scheduled publication depends on them.
Publication check
Before publication, Ritus checks the requirements relevant to the current content item. Depending on the target, this can include:
- content being present
- required image being available
- SEO fields for the blog
- connection status of an external channel
- approval status
- scheduled publication time
Media and templates
Media workspace
The integrated media workspace prepares images for blog, feed and story use. Images can be adapted to suitable formats and aspect ratios without leaving the Ritus workflow.
Content templates
Recurring editorial formats can be organized as templates. Typical examples include product presentation, guide, news, promotion or seasonal content.
A template can prepare recurring structures such as writing guidance, CTA logic or other editorial requirements. It does not replace the concrete review of an individual publication.
UTM attribution and performance
Ritus can automatically add unique source, medium, campaign and content information to published links. When a visitor enters the Magento shop through such a link, the entry can be attributed to the originating content and channel.
What is measured
Shop entry
The entry can be attributed to a Ritus content item, campaign and channel.
Cart and order
Subsequent shop interactions can be continued in the Magento context.
Revenue and conversion
Ritus focuses on measurable impact from published content inside the merchant's own shop.
Ritus does not read reach, likes, reactions, comments, impressions or other platform specific social media metrics from external services.
Status, retries and publication log
Blog and social media publications have individual statuses. This keeps it clear whether content is scheduled, published or has failed on an external channel.
Automatic retries
Temporary errors during external publication can be retried. A service being briefly unavailable therefore does not automatically have to result in a permanently lost publication.
Publishing overview
- status per channel
- scheduled or actual publication time
- visible error states
- log of publications already executed
Store Views and languages
Ritus works in a Store View aware manner. Content can therefore be maintained in the language and editorial context appropriate for each shop view.
| Locale | Language |
|---|---|
de_DE | German |
de_CH | German, Switzerland |
en_US | English |
fr_FR | French |
it_IT | Italian |
ß.
Updates and troubleshooting
Update sequence
Before an update, back up the existing Ritus module directories or use the established deployment process for your environment. After replacing the files, run the Magento setup again.
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy -f
php bin/magento cache:flush
Ritus sections are missing in the Admin
- check module status
- flush the Magento cache
- sign in to the Admin again if required
- check ACL permissions for the administrator role
php bin/magento module:status Vermonta_Ritus
php bin/magento module:status Vermonta_RitusAi
php bin/magento module:status Vermonta_RitusBlog
php bin/magento module:status Vermonta_RitusPlanner
php bin/magento module:status Vermonta_RitusSocial
php bin/magento cache:flush
Scheduled publications do not run
Check Magento Cron first. Then check the status of the affected content item and use the relevant connection test for external channels.
php bin/magento cron:run
Instagram publishing fails
- run the connection test
- check that a suitable image is available
- observe the JPEG requirement of the Feed workflow
- check publication status and log
Telegram does not publish
- check the bot permissions in the target chat or channel
- check the full numerical Chat or Channel ID
- do not remove a leading minus sign
- run the connection test
AI creation does not work
- check OpenAI API access
- check the selected model
- check server network access
- check Magento logs for a concrete error message
Support and customizations
Ritus is integrated to fit the existing Magento and Hyvä environment. The scope of setup, project specific adaptations, handover and subsequent support depends on the agreed project scope.
For technical questions, the Magento version, affected Store View, publishing channel, content status and a precise description of expected and actual behaviour are particularly useful.
Social media publishing
Ritus can send approved content directly to configured social media channels. Each channel has its own copy, publishing time and status.
Instagram images
Ritus prepares the required image data locally and checks the publication requirements. A suitable JPEG image is required for the Instagram feed workflow.
Telegram
The Telegram bot must have the required permission to send messages in the target chat or channel. Enter the complete numerical Chat or Channel ID. For groups and channels, the ID can contain a leading minus sign and must be entered in full.