Topic: Creation of the CMS - the next bicycle? Or a step to career?
Each person should construct the house, grow up the son, plant a tree. The web programmer - should create the CMS.
I do not speak, on what it will form (PHP, ASP...), it has no any value.
I do not speak, whether it is necessary to do it generally, after all much is already created earlier moreover and spread free of charge.
I do not concern authentification, authorization, registration and other - everything that is connected to the rights and possibilities of the user. As it is all it will be implemented - a separate subject (for example - by means of tags). For simplicity of understanding - ONLY the user with possibility of change of structure of a site and notices to it further will be considered. For remaining such possibility is closed.
Therefore, at once to an essence (a variant of the project own CMS).
1. The site is under construction on the basis of a certain structure ( SUDDENLY !), group of the pages organized in the form of a tree.
But, the total of such pages does not mean that only they and will be. structure - only the base.
2. the notice - the smallest particle of the information for site creation. Sheet for a tree
Coming on a site without notices, it will be possible to be moved between pages (all navigation is under construction automatically on the basis of structure, but it NOT the UNIQUE method of the organization of navigation about what it will be told hardly more low), and - as though and all.
3. ANY the page is under construction on the basis of a template.
The Template - normal HTML-page with layout in necessary places of special labels (an editing field).
Label presence means that in this place the output of individual notices OR group of the notices which have been selected by any criterion (for example, the last ten news of a site) will be organized.
Besides, there are templates for an output of the separate notice, simply group of notices, or groups of the notices organized on the filter or other principle (more low).
At an output something (pages of structure, the notice and other) the appropriate template is selected and already ready page is formed.
4. ANY the notice can have tag or some tags which virtually "group" notices.
The same notice can enter into different groups, for example "Russia" "News" "Sports" "Olympic Games".
When, during what moment of time the page for an output of such groups will be formed? After all in structure of it is not present?
HERE. And this the most interesting. Besides, more low.
Opening page of structure at the very beginning of editing we see empty page with possibility of adding of the notice (or groups of notices).
On one page there can be some editing fields - Title, the Cellar, the Main data entry field, the Left part, the Right part, SOMETHING ELSE.
The page title in title already is, as well as the page address - all it was set during structure creation/change.
Besides, there are the general menu for navigation between structure pages (above), menus of child pages (hardly more low) well and the menu of group of pages (for example, at the left or on the right) to which the page belongs.
Well and the one-line menu - shows page layout in a root.
All menus are under construction automatically I (will repeat) on the basis of site structure.
Let's admit, it is necessary to import any text, for example "Hello, World!" In the main field of editing.
And here it appears what to import the plain text it is impossible .
But it is possible to add the notice with any title (the title output is adjusted - it is necessary or not, date/time - it is similar, and other) and actually with the text "Hello, World!" With the necessary formatting and pictures to it.
We save the notice - and it already appears on the page.
Why so it is difficult? it was possible to implement all and without these notices?
Such method only seems difficult. And further there is a heap of advantages:
Any notice can be used repeatedly. The notice - a part of the general fund.
Notices can be added on page in the form of a tape of notices - selected on the filter (on a tag/tags to a rule and-or on time).
The added notices/tapes of notices can be deduced with the given order - new on top or on the contrary (appropriate adjustment).
If in the field of editing it is a lot of notices - navigation to the SAME page of structure of the project (but with other parameters in an address line) for display of the following list of notices/groups of notices (adjustment on the maximum quantity on page) automatically is under construction.
The notice can be deduced in full or in part (cliques on "Further" leads to discovery of the full version of the notice), and page discovery in the new/same window - already with navigation on the group of notices (for example on "News") - besides with adjustment.
The notice can have one/some tags. Their display is adjusted. Cliques on a tag conducts to discovery of the notice or all notices on the selected tag (the type of discovery and the maximum quantity on page is adjusted) with navigation.
As tags ALSO CAN be grouped in the form of trees - one of trees of tags can be displayed (is adjusted). Cliques on any branch of a tree of tags (adjustment) on group of tags - besides with all accompanying navigation leads at once to selection/display.
The notice as well as the structure page, can have the special template (adjustment).
The similar is already implemented (and REPEATEDLY. Funny, yes? it they bicycles create Che, and? ).
Sample system - somehow it is not professional (fairly, I saw also such argument).
The implementation of the rights on editing - and problems with administration.
Automatic formation of the menu (at me with it problems special, by the way, did not arise).
Simplicity of creation of templates - on the basis of offered including it is free or created personally. It is enough to allocate in proper places labels with editing fields. Besides is raises the general safety (probability of breaking less, as in other places, except as in templates, layout of fields of editing to what does not conduct).
The implementation of the rights on editing.
Complete control over the project - I see from time to time appearance of messages on the next breaking / to a critical error various CMS. And this with the fact that many projects are spread free of charge and in the open code.
Anyway - creation of the - excellent practice.
Than not personal Drupal, Joomla! Or Wordpress?
I urge all not to use the given subject for advertizing of the professional qualities or to a beating the air (there is here a certain subject where percent of 75 messages - arguing something, absolutely not not connected to a subject. Well or REPEATED attempts to convince someone with a different level of sharpness)!
Do not shoot at guitarist , he plays as is able