Open-source PHP CMS and Blog

Create and manage your website with MemHT in few and easy steps.

It's customizable, expandable and suitable for all your needs.

Download MemHT Last MemHT release Release date
MemHT is composed of various structural elements that allow a simplified management of content. They can all (and almost always do) interact between them to generate content and manage data according to our needs.

We could compare MemHT to a tree: the core framework would be the root, the plugins would be the trunk while blocks, templates and translations would be the branches.
  • Plugins
  • Blocks
  • Extensions
  • Templates
  • Translations
The plugin is the most important element in MemHT, it generates the main content that the website is supposed to serve. What manages the forums in MemHT for example, is a plugin.

It has a front-end and a back-end interface: the first one is what the visitors see and interact with while the back-end, accessible only by administrators, is used to manage the plugin's content and options.

It can be file (a phisical group of files in the plugins folder) or content (html code edited in the admin control panel) based.

Thanks to the MVC-like (Wikipedia) structure of MemHT, plugins can easily use specific template files with custom layout code.

Example of plugins are Articles, Blogs, Downloads, Forums and Gallery.
The block is a secondary content generator and it's usually an accessory part of plugins. It could be used as a launcher for the content of plugins: list of recent blog posts, random gallery images, user's session status etc.

The standard MemHT layout contains two + one block areas: navigator, extra and sticker. The first couple is identical (don't let the name navigator and extra mislead you) and there is no difference between them. The navigator and the extra areas can contain multiple blocks, ordered by their position, they can be enabled/disabled manually, by the engine according to a start and an end date or by the current opened plugin.

The sticker is a single block containing area, meant to be used to manage content in particular and isolated parts of the layout. An example could be an advertising block in the website's header.

All blocks can be file (a physical file in the blocks folder) or content (html code edited in the admin control panel) based.
The extension is a very useful customization element. It can be found almost everywhere: it's used to extend or replace part of the code in the core framework, in plugins and blocks.

It uses specific "hooks" and allows the webmaster to add new code or customize it without changing the standard package.

Example of extensions are reCaptcha and SyntaxHighlighter.
The template is the visual element of MemHT and it determines the layout and the style of the website and the content. It's based on static files containing html and specific syntax code, parsed by a dynamic engine (Smarty).
MemHT has a native i18n (internationalization) library that allows to all elements of the structure to display data in different languages, each of them using it's own specific settings. The main char set is UTF-8 and we strongly recommend not to try to mess with it because all files released by are UTF-8 encoded (at least they should be :).


c1 Plugin
c2 Blocks: Extra area
c3 Blocks: Navigator area
This documentation is not yet complete.
Copyright © 2005-2020 by Miltenovikj Manojlo - All rights reserved
Powered by MemHT
Powered by MemHT