There is no ideal interface , you can always think up a little better ... Let’s understand the CMS interface for ordinary people with the least programming knowledge (php), layout (html / css) and design (templates / image processing, etc.). For example, such a CMS will be made for a simple site with articles, news and a forum without user registration and one administrator.
Many people write CMS. Everyone has this process in its own way:
- I wrote a bunch of CMSoc! Everything - crap, I decided to use a third-party ...
- For the second year I’m writing one, not bad, but damp, everything changes too quickly, I don’t have time to attribute new bells and whistles :(
- We work in a team and together write excellent CMS. It is not better than those on the market, but this is our development and we are quite happy with it. Clients don't give a damn about it, so we also earn money on support!- Add your version, I really hope that I did not write it.
What you need to build an interface? The component of the future interface is all that the user will use (synonyms to taste).
The initial form of entry into the administration is omitted - there is little that can be offered, and minimalism often wins.
')
Next - the main administrator window with a bunch of functions to make life easier.
We need something clear and adequate.
Let's start with the presentation and location of information:
- list of sections, link to create a section
- link to exit from administration (needed if outsiders can sit at the computer)
- link to edit the main page of the site
- drop-down list of recently edited "articles" for quick access to them if necessary corrections
- drop-down list of fresh comments (if needed) for their quick read / reply / delete
- links to the opening of the site and statistics (just do not interfere)
Scatter the hodgepodge on the sheet:
Opening lists can be done both on Ajax and in a simple way - it all depends on your diligence, desire and knowledge.
It’s not a bad idea to add a built-in search on a site - if there are many pages, the needed ones will be easy to find, and the built-in search will be more to your liking than a third-party search. Well, then come the "buns": icons, some graphics, work on the style, constant adjustment, adding new features as they are written.
Lyrical digression
In my CMS, I abandoned many well-established concepts, but I do not actively advocate this (everyone has his own way when creating a CMS).
Examples:
- modularity (separate modules for each data type) is replaced with a monoblock section designer
- the usual patterns for the simplest - html + inserts ala bbcode [block name], oriented to the "parts of the world" (top, bottom, right, left) blocks (found in many CMS) are replaced with automatic, semi-automatic and html inserts with any name, that can be used everywhere: in design templates, in sections, on pages
- css and design templates (main page, sections and individual blocks) are edited online
- a lot of things are made in the background execution without user participation (caching, backup of the database, backing up pages before editing them for the possible cancellation of changes)
In fact, most of the data is of the same type, therefore, news and articles and even forum topics can be stored in one table and accessed separately with different settings by splitting the data type, rather than creating a module for each data type.
An example of a simple structure of a similar database table: id, type, catalog, title, open_text, main_text, counter, data, keywords, description, active.
id - record number (news, articles, topics, notes ...)
type - section id, corresponds to a table with the names and settings of different sections
catalog - id of the directory (or folder) of the section; if it is 0 - the root of the section, corresponds to a table with folder names.
title - title
open_text - foreword
main_text - content
counter - visit counter
data - date of creation
keywords - keywords, used to search by tags and meta keywords
description - description, used for meta description
active - active, 0 - disabled (draft), 1 - active (see everything), maybe other modes ...
That's what I got in the end (about 3 years of development):

MY OPTION IS NOT A PANAREA! It's just my movement towards the ideal. You will have a completely different, perhaps even more advanced / better / "correct" solution. I want to show the way to it, if you yourself have not thought of this or your creation does not suit you. If your CMS is all “tip-top”, you should be glad that this topic is not for you.
Well, a few more screenshots:

Explanations:
1. Top right - Notes - text drop-down window for “communication” of admins, for example: the developer can leave here help on those points that are not clear to the administrator user.
2. Three colored pencils - 2 different WYSIWYG editors and html mode for quickly changing settings / header or text (if the user has knowledge of HTML markup)

Explanations:
1. Shows the name of the commentator and the beginning of the comment. When you click on the beginning - opens the entire comment. The quick response feature is not yet implemented, but has already been scheduled.

Explanations:
1. You will not surprise anyone with an unlimited tree now. But here a more thoughtful tree, the presence of various sorting, possible actions on folders and pages quickly (js, not AYAX) are opened by clicking on them
2. Red RSS icons - means that the page is not displayed in the RSS feed.
3. two asterisks (**) - description and keywords are not entered, one - one thing is not entered.
4. Update the section - not a very necessary button and will soon die off as a rudiment (I didn’t wipe on the screenshots)

Explanations:
1. It is possible to select sections with different colors indicating the process over this section (no label, new, often, rarely or not used) - only the administrator needs this. Makovody will appreciate)))
So. If the user has seen at least one CMS - from mine immediately or after a short time they “piss” for joy. Explain especially nothing. I spend 10-15 minutes. If you are not familiar with editing systems at all - half an hour.
Agree with the above -
add , disagree - try not to write what I think is wrong with you - just
offer your creativity (no problem, if you don’t know how to draw, you can describe it) and everything will immediately become clear.
There are no analogs, your opinion is your opinion and it has its own for everyone, and it’s much easier to choose between different opinions if you don’t have one, if nobody “poured a barrel of tar” about them.
PS: I would really like to start an open testing, but I strongly doubt the safety of my CMS, so I’ll be happy if I’ll see testimonials from people who know CMS well in the comments (or in a personal). I am ready to offer them closed testing and a license to use the future paid version of the CMS DvizhOk (as well as all subsequent versions). We can say that I invite co-authors. Non-security tips are also accepted.