Content Management System
Overview
In general, websites make a series of contents available to users. These content resources can vary widely, from news to film texts, depending on the nature of the website. E-commerces must also provide their users with content, and this content must be suitable for the purpose of these commerces, which is to display and describe a series of items so that users can understand their features and buy them. They must also show further information about aspects of the commerce, such as the conditions of sale and shipping policies, or any events that might be of interest.
The system as a whole is headless, but this does not mean that the Commerce can do without its content. While most Commerces in fact have a web presentation layer and their resources are displayed in a standard web context, the content ―or at least part of it― is not about the website, but the information. This is the information that shows the user the features of a product, instructions for use or how to return it. This information, which must be useful and practical for the Commerce to work well, must be displayed correctly. The content of a Commerce will therefore be the different information it provides for its users.
Types of Content
The content of an e-commerce must have two functions if it is to achieve the ultimate purpose of the commerce, which is to sell its products. On the one hand, the content must include explanations of all kinds: about the catalog, the services or anything else that needs to be made clear. On the other, bearing in mind that most Commerces have a web presentation layer, the content must help the Commerce to position itself in web search engines or, in other words, it must help with SEO strategies. This means there are two kinds of content, depending on its purpose, though in the end all the elements have to work together: all the Commerce's resources serve to communicate information to the user and all of them serve to help position the Commerce.
Nevertheless, content can be divided into:
-
Catalog
-
Static content
-
Dynamic content
It is important to stress that a Commerce can be multilingual and, for the Commerce to be effectively multilingual, text for the content must be entered in each of the languages linked. Each content element must have a version for each language. The system provides tools for bulk entry of content to make this simple and convenient. However, the most usual way is to do it from the BackOffice, where each content element has its section, in which all its features are edited, including those related to the language.
Catalog
The Catalog is the set of information directly concerning the products sold by the Commerce. This content is organized in a specific, hierarchical way. The purpose of this hierarchy is to classify the products into families, sections or categories, and so make it easier for the user to browse (e.g. if they are looking for mobile phones, they will go naturally to the mobile phone section), and support catalog management (if a discount is to be applied to some trousers, it is better for them to be together in a category of trousers than scattered about).
There are four entities or elements in this hierarchy:
Areas
The areas are the highest-level grouping. Their purpose is to put categories in groups, classifying them according to their purpose. For example, the default system needs to know which categories are for navigation. To do this, it uses an area that is marked in a special way (and said to have a category role).
The system returns the categories in the area marked with the category role as the ones a user can browse naturally. For example, a Commerce has 3 categories, C1, C2 and C3, which are the ones that classify in a general way the products sold and are the root through which a user can start browsing to look for products. For the system to return these browsing categories, in the area with the category role the Commerce manager must create the categories C1, C2 and C3.
A Commerce might wish to group categories for other reasons. For example, it might need to display the top-selling products, new items and a selection of offers on its home page. To do this, the Commerce manager must create an area, which could be called "Home Page", for example. In this area, 3 categories must be created: one called e.g. "Top sellers", another called e.g. "New" and another called e.g. "Offers". When the Commerce has to display the home page, the system will return this area, which will contain the above-mentioned categories so that they can be viewed as required.
Areas can have filters applied to them for users, groups of users, countries and areas. This makes the visibility of the categories depend on the visibility of the areas that contain them.
Areas can also contain images and information in text form. This text can serve to give descriptions of the area or any other message needed, such as descriptions including words to support a SEO strategy.
Categories
Categories group products together and represent the different families or sections into which the products sold by the Commerce can be classified. Unlike areas, categories can have other categories (subcategories) within them, so that the categories are organized in tree form from a primary node located at the first level, from which they divide and subdivide in successive branches (if necessary) at deeper and deeper levels.
Categories can have filters applied to them for users, groups of users, countries and areas. This means that the visibility of products depends on the visibility of the categories that contain them. For example, if a particular category is filtered for a "VIP" group of users, only users who belong to this group can see the products included in the category.
Products can belong to more than one category, so each product must be marked with its main category, which is generally the category considered to best classify the product. If the product is included in several categories, this does not mean there is more than one copy of it, but that there is a symbolic link to the original product (similar to the shortcuts to applications or documents on computers). In short, only one actual product exists; the rest are shortcuts created in other categories. It should be borne in mind that if a product is included in two categories and one of them has a filter applied to it but the other does not, the user will be able to view the product only if the principal category is the visible one. If the filter hides the main category, the product will not be displayed.
Categories can also contain images and information in text form. This text can serve to give descriptions of the category or any other message needed, such as descriptions including words to support a SEO strategy.
Apart from the above features, categories have other functions. Briefly, these are the following:
-
Labels can be associated with categories. Labels are elements symbolizing any additional features the category may have. For example, the category label "clothes" could be used to mark all those containing garments.
-
Categories can have elements related to them. These are often products or categories in the Commerce's catalog, news, banners, posts or categories related to the content. When a user accesses a category, the system can return the related elements (of any of the kinds listed) of this category. For example, a category of kitchenware might be related to blog posts explaining recipes. This improves contents and positioning.
-
Different features are defined at category level. As the category is the element that groups products together, its configuration will affect all the products it contains:
-
It can be linked to third-party marketplace types (e.g. Google Shopping).
-
It can have a pricing policy set by percentages. This feature is part of the pricing system and its purpose is to apply price increases or reductions to categories so that they only affect certain categories or families of products.
-
Range of units can be defined for them to calculate shipping costs by units.
-
Brands
These entities reflect the list of brands of the products that the Commerce sells. Because many products may be of the same brand, instead of repeatedly registering your brand for each product, they are managed separately for easy maintenance. The system uses the brands created in the area identified with the brand role as the collection of possible brands that can be linked to a product. For example, if the Commerce sells 3 brands, A, B and C, one of these can be linked to each of the products it sells. To do this, in the brand area, the Commerce manager creates 3 brands, A, B and C. Then, in the product datafile, they will see a link can be made to either A, B or C.
Brands can also contain images and information in text form. This text can serve to give descriptions of the brand or any other message needed, such as descriptions including words to support a SEO strategy.
Product
Products are the items sold in the Commerce. They play a leading role and therefore have many functions, some of which are listed below:
-
They can have several image files to display the products in different sizes or positions in order to enhance the presentation.
-
They can include information in text form. It is especially important that product descriptions provide as much information as possible to avoid leaving users in doubt and undermining their confidence.
-
They can have different pricing policies and lists.
-
They can have the appropriate tax rate for each of the taxes defined.
-
They can have purchase multiples, minimum purchase quantities and maximum purchase quantities.
-
Some of their features can be customized. With these customizations, which are based on user filters, user groups, countries or areas, for example, different minimum purchase quantities can be set for, say, a group of users called "VIP".
-
Labels can be linked to them to symbolize additional features.
-
Elements can be related to them, working in the same way as category-related elements.
-
They can be linked to a third-party marketplace type.
-
Ranges of units can be defined for them to calculate shipping costs by units.
-
They can have options, which are the variations in the product (size, color, finish, etc.). Each option has its own values (size: S, M and L; color: white, blue and black, etc.). An amount can be associated with these option values to represent an increase in the price of the product.
-
As products can have more than one option, combinations can be set; these are the specific variants of the product with its combined options. For example, a T-shirt might be available in different sizes and colors. But there is only one combination of e.g. size S and color Black. This specific variant of a black T-shirt in size S is an item sold like this, in this size and this color.
-
Stock management can be enabled, so this stock must be reported for each combination. Sale by reservation can also be allowed.
Static Content
The Commerce's static content is that which does not change or rarely changes with minor corrections or additions. This type of content is handled in elements called "pages".
Pages
Pages contain additional information that must be provided by the Commerce, such as terms of use, legal texts, return policies, contact details, shipping information, warranties, purchase guides, size guides, or any other type of text that needs to be included in the Commerce.
Although generally these are texts that do not change much, it does not mean that they cannot be modified as needed and as frequently as required. However, pages are usually reserved for more static content. Pages can contain images and text information, which can also include keywords to support some SEO strategies.
Pages are grouped into elements called Page Groups, which are to pages what categories are to products. The difference is that page groups only serve the purpose of gathering pages under the same grouping, making it easier to display blocks of information in the Commerce's presentation layer. An example of a page group could be the menu that is typically shown at the footer of the web presentation layer. In that group ‘Footer’, a set of pages would be created that the web presentation layer will eventually display as a menu where the links (which would be the page names in the different Commerce languages) to the various informational pages provided by the Commerce for its users will be shown. When interacting with each of these links, the web presentation layer would display the text and images entered as content in the corresponding page.
Pages can have filters applied to users, user groups, countries, and areas. Additionally, pages can have tags and related elements in a similar manner to categories. A unique feature of pages is that they can be marked in a specific way (by setting a type) to achieve very useful behaviors in the web presentation layer. Page types are categorized into two groups:
-
The page acts as a link to specific elements: this type of page is used to create symbolic links to other elements of the web presentation layer (home, user panel, etc.). The existence of this type of page is due to the need to create links to other parts of the web presentation layer in a simple manner, which are also accessible in any page menu as needed. For example, if it is necessary for the footer menu of the web presentation layer to have a link that shows the text ‘Your user panel’ (in the various Commerce languages) and redirects to the user data panel upon interaction, a page with the name ‘Your user panel’ (in the various Commerce languages) should be created within the footer page group with a ‘User’ type. This causes the system to automatically return links to the referenced elements (in this case, the user panel) for these pages instead of returning a standard informational page link. Since they act as symbolic links, these pages do not require content, but in some cases, they do require the specific element to be linked.
-
The page behaves in a special way when displaying its content: this type of page is used to indicate to the presentation layer that, in addition to displaying the standard content configured in the page, additional elements should be shown depending on the type of the page. It should be noted that the action of displaying these additional elements will entirely depend on the presentation layer’s implementation. The system returns these pages marked with the specified type so that the presentation layer can execute (or not) the additional actions required to retrieve and display these extra elements. For example, the footer menu of the web presentation layer might need a link to a page titled ‘Receive our weekly offers’ which, when interacted with, displays information on how to sign up for a newsletter and also shows the subscription form. To achieve this, a page titled ‘Receive our weekly offers’ should be created within the footer group, marked with a ‘Newsletter’ type, whose content would be the Commerce’s newsletter information. This causes the system to return, along with the content, the type indicating to the web presentation layer to display that content and additionally render the appropriate form for users to join the Commerce’s newsletter. A second example: it might be necessary to show a link to the ‘Privacy Policy’ in the footer menu of the web presentation layer. By creating a page titled ‘Privacy Policy’ within the footer group with the ‘Privacy Policy’ type, the system will notify this type to the presentation layer, which will, in turn, invoke the Commerce’s legal texts for display.
Specifically, the following page types exist:
-
Normal: this would be the type to link to a page that shows standard informational texts, such as the ‘About Us’ page or a page with instructions on how to make a return.
-
Home: behaves like a link. When a page of the ‘Home’ type is created, it generates a link to the homepage. This way, when a user clicks, for example, on this type of link in the web presentation layer, they are redirected to the homepage.
-
User: behaves like a link. Generates a link to the user panel, so when a user clicks, for example, they are redirected to the user panel.
-
Basket: behaves like a link. Generates a link to the basket, so when a user clicks, for example, they are redirected to the basket content.
-
Contact: behaves in a special way. Indicates to the presentation layer that the Commerce’s contact form should also be displayed.
-
Newsletter: behaves in a special way. Indicates to the presentation layer that the subscription form for the Commerce’s newsletter should also be displayed.
-
Subpages: behaves in a special way. Indicates to the presentation layer that a tree with the child pages of the selected page should also be displayed.
-
Site Map: behaves in a special way. Indicates to the presentation layer that a category tree should also be displayed as a navigation map or site map.
-
Category: behaves like a link. Generates a link to the configured category, so when a user clicks, for example, they are redirected to that category.
-
News: behaves like a link. Generates a link to the news section, so when a user clicks, for example, they are redirected to the news section homepage.
-
Offers: behaves like a link. Generates a link to the offers section, so when a user clicks, for example, they are redirected to a special section displaying products marked as on offer.
-
Featured products: behaves like a link. Generates a link to the highlights section, so when a user clicks, for example, they are redirected to a special section displaying featured products.
-
Privacy Policy: behaves in a special way. The privacy policy is part of the legal texts, which may depend on the billing headquarters (see the ‘Multi-site and multi-currency’ section). Its content is not defined in any page but rather within each billing headquarters. This type is used to display this kind of special information in a page menu.
-
Terms of Use: behaves in a special way and is treated similarly to the previous case as it is also part of the legal texts.
-
Blog Homepage: behaves like a link. Generates a link to the blog, so when a user clicks, for example, they are redirected to the blog homepage.
-
Blog Category: behaves like a link. Generates a link to the configured blog category, so when a user clicks, for example, they are redirected to that blog category.
-
Discounts: behaves like a link. Generates a link to the promotions section, so when a user clicks, for example, they are redirected to a special section displaying discounts and promotions.
-
Custom: behaves in a special way. This type additionally requires a linked identifier (which can be reused in more custom pages) and is due to the need to generalize behaviors for any purpose that the presentation layer may require. When the presentation layer receives this custom type, it executes the actions defined for the linked identifier. It could be said that the other types with special behavior are particular cases of this type: a ‘Contact’ type page could also be defined as a custom type with the identifier ‘contact’, for example. The existence of these particular cases is due to the fact that the presentation layer’s implementation is generally simpler if the type already implies the purpose, leaving customizations for cases that require more complexity.
-
Module: behaves in a special way. This type is identical to the previous one but with a certain technical nuance due to the architecture that might be used in the presentation layer’s implementation. If a modular architecture is used to manage views or add and remove functionalities from the Commerce more easily, it may be helpful to know if the customization of a particular page is due to the use of a specific module. In that case, defining the page with the ‘Module’ type and the module identifier allows the presentation layer to execute more specific actions for that module.
Dynamic Content
The Commerce's dynamic content is that which changes often, i.e. information is added or updated regularly. The following elements handle content of this kind:
Banners
A banner is a type of advertising that consists of adding ads to the Commerce's web presentation layer. These ads are generally images or pieces of graphic content. Ads are usually for the Commerce itself and are used to highlight discount campaigns, categories, events or anything else the Commerce requires.
As banners are generally subject to temporary events or campaigns, they can also have specific active periods, so that once the active period ends, the banner is automatically disabled. Moreover, filters can be applied to them for users, groups of users, countries and areas.
These banners can be simple images or contain links to some other resource inside or outside the Commerce. The Commerce might need to know how many times a user has clicked on a banner, for example to gather data on the results of the campaign. Banners can activate a counter of this type that, when enabled, a message triggers the increase of the click counter on the banner. This counter can also automatically hide the banner when a certain number of clicks is reached.
News
News items are elements that serve to announce any events, reviews or information the Commerce might generate. As the purpose of news items is to announce news, their content is current and new information can also be added. These elements are designed to be displayed in news summary mode so that the user can then expand any news item they want. News items obviously contain text, but they can also contain images. Another interesting detail is that news items have a publication date, so they can easily be sorted by date.
News items can have filters applied to them for users, groups of users, countries and areas.
Blog
Unlike the other elements described above, the blog is an entity in itself within the Commerce and is handled in a special way, i.e. it is a complete tool to complement the Commerce.
Adding a blog to the Commerce provides a two-way channel for communication with users. As pointed out above, creating quality content is the key to achieving good search engine optimization. Therefore, generating content in a blog, which is highly dynamic by its nature, enhances SEO and creates a good reputation. There is also the option of relating blog posts to the products the Commerce sells and, as products can be related to posts, this helps users to reach the content of the Commerce and end up buying something; this is an indirect way of helping to increase sales.
The blog adheres to the usual layout of these tools, so it includes a space where users can leave comments. These comments are supervised, so only those that have been reviewed and accepted are displayed. This avoids the spam that sometimes attacks blogs.
Blog categories can have filters applied to them for users, groups of users, countries and areas. As usual, this means that the visibility of posts depends on the visibility of the categories that contain them. For example, if a particular category is filtered for a "VIP" group of users, only users who belong to this group can see the posts included in the category.
As posts can belong to more than one category, there is a main category, which is the one that contains the "original" post. If the post is included in several categories, this does not mean there is more than one copy of it, but that there is a symbolic link to the original post (similar to the shortcuts to applications or documents on computers). In short, only one actual post exists, and it is in its main category; the rest are shortcuts created in other categories. Bear in mind that if a post is included in two categories and one of them has a filter applied to it but the other does not, the user will be able to view the post only if the principal category is the visible one. If the filter hides the main category, the post will not be displayed.