Public blog and pricing page – behaviour and data
How the public blog, comment and package comparison endpoints work, what they check and which tables they read.
Overview
Storefront content pages from the system's own article and topic master data, plus a landing page comparing package families. All are public and check no function permission.
Endpoints
| Endpoint | Behaviour |
|---|---|
cms/blog | blog list: topic meta data, paged articles, excerpt, image, author filter, comment count, sorting by date or rating, canonical, prev and next links, topic list; parameters topic_id, author, sort, order, page |
cms/blog.info | article page; with comments switched on, the comment block is loaded from the framework's own comment controller |
cms/comment (list, reply, add, rate …) | a copy of the framework's comment controller; its links point to the framework's routes |
cms/pricing&family= | package comparison page; 404 for a missing or inactive family |
Comment rules
add: session token (comment_token), signed-in customer, existing article, author and text length, rate limit (config_comment_interval), captcha, anti-spam, approval (config_comment_approve).rate: token and sign-in; like or dislike, updating the article and comment rating.
Data model
Table names carry the installation's own prefix in the database.
- Blog:
article,topicand their link tables, filtered by store (_to_store). - Pricing page: the
package_family,subscription_plan,subscription_periodandfeaturetable families, filtered by store.cms/pricing::getPricing(code)only displays and decides nothing.