From Seo Wiki - Search Engine Optimization and Programming Languages
|This article may require copy-editing for grammar, style, cohesion, tone or spelling. You can assist by editing it. (August 2008)|
|This article includes a list of references, related reading or external links, but its sources remain unclear because it lacks inline citations. Please improve this article by introducing more precise citations where appropriate. (August 2008)|
|Developer(s)||The Nucleus Group|
|Stable release||3.33 / August 21, 2008|
|License||GNU General Public License|
Nucleus CMS is an open-source blog management software package written in PHP, with a MySQL backend, primarily written and maintained by Wouter Demuynck. It is used to manage frequently-updated Web content. With a little tweaking (mainly to skins) it might be considered a lightweight content management system, although there is no facility to upload file types other than graphic files to be displayed within the blog pages.
Nucleus makes use of a callback function which has led to a plugin system that has inspired somewhere in the order of 50 to 100 distinct plugins. The general drive within the development community is that functionality should exist as plugins as totally as possible. This philosophy has led to a relatively light and uncluttered base install.
Blog:CMS is a (currently less stable) fork of Nucleus CMS with several plugins pre-installed and a number of other projects added in. Thus NucleusCMS plugins (on the whole) will work on this fork[dubious ].
- But the Blogger service was getting less and less fun to use, because of the constant downtimes. I had to switch to a decentralized tool, but couldn't find a 'decent' one: I tried GreyMatter, but it didn't allow multiple weblogs. PHP-Nuke and alike tools did not offer enough flexibility with the layout, and were not exactly what I was looking for. Movable Type, pMachine, Pivot etc. did not exist yet, so I had to come up with something of my own.
- So I did. In the beginning of 2001, I wrote (starting from scratch) the basis of what would later turn out to become Nucleus: a set of PHP classes, reading data from XML files. No real admin-area yet, no multiple users. But multi-weblog from the start.
- It was in the summer of 2001 that I decided to move from XML files to MySQL and started building a good admin interface, so I could release the script and share it with other people. It got a little out of hand ;-)
NucleusCMS uses a database to store content which is manipulated by a number of classes. These classes fall into two groups, core and plugin. The core contains the basic functionality including a callback system which is used to trigger plugins. By default NucleusCMS comes with just one plugin as standard (two from version 3.3). This is in line with the general philosophy that the system should be as light as possible.
The output is rendered using a custom two layer substitution based template and skin system. Templates generally provide the form for iterated content (such as listings) whereas the structure is provided by what are called skins. Skins are divided up by type (index, item, archive, archives, user, error, search (and custom with 3.3)) and are specified separately to each other. Include files can be used to reduce repetition of common elements.
Nucleus CMS supports a number of common blog oriented API through the use of an XML-RPC library.
Very little of Nucleus CMS is sourced from additional parties. There are a few documented exceptions, however.
- The XML-RPC used is XML-RPC for PHP  implementation from Useful Inc .
- The backup/restore code is said to be largely inspired on the code used in phpBB.