CHAPTER IV

Creating the news component

This new component will be built on the framework's basic structure, which already includes login, messaging (alertify), media management (JS and CSS), form helpers, menu management and so on. It will allow news articles to be added, edited and deleted in the system.

Read more

On-demand caching

A cache must always have a limit, both for resource usage and for performance. As already discussed, many systems use time-based on-demand caching. This means the system remains alert and periodically collects expired cache entries at a predefined interval. This is one of the most widely used approaches.

Read more

The application’s foundations

The application’s foundations
As noted earlier, I will begin with Jaisiel Delance’s PHP implementation of the MVC pattern, whose structure is summarised in the following diagram:

Read more

WYSIWYG

Combining the power of major CMS platforms with that of major HTML editors is certainly a considerable challenge. WYSIWYG, short for 'what you see is what you get', is more than an acronym: it represents an important goal for the user experience. It enables users to become familiar with the system intuitively and confidently.

Read more

Front end

The CMS comes with news, sections, pages, default, login and configuration components installed in the back end.

Read more

Front-end implementation

Unlike the back end, the front end will use modules rather than components.

Read more

Managing components in the back end

Components can be added or disabled as required. A disabled component will not be loaded into the system.
This also makes it possible to implement user access control lists (ACLs) and configure access by component. An administrator, for example, would have access to all components, while a journalist would only have access to news and sections.

Read more

Cache system

When considering a suitable caching system, I wanted it to be simple and fast, without compromising information integrity by displaying outdated website content.

Read more
Standardisation

The system can be deployed on Unix, MacOS and Windows servers. It can run on Apache, IIS and any other web server capable of interpreting PHP.

Read more
The back end and its components

The back end will be the more substantial part of the system. It does not matter if it loads many libraries or files: content changes far less often than it is accessed. See the appendix, “Putting dynamic content into perspective”.

Read more
The page concept

Most content management systems on the market use a system very similar to the one described, including modules, category management and organisation into components.

Read more
The module concept

Modules are the building blocks of our site. They encapsulate blocks of content that we embed at different positions on a page.

Read more
Types of modules

These modules are embedded in the application and are considered generic, commonly used elements. They consist of plain HTML, editable through a floating WYSIWYG editor in the page creation interface.

Read more
Two applications

As we know, CMSs are highly complex structures.

Read more
Direct access to a module

Pages work well up to this point, but some services offered by the website may not make sense as pages: a web service, for example, or a controller handling AJAX requests.

Read more
CMS UM header