Nucleus CMS

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Nucleus CMS
Developer(s) The Nucleus Group
Stable release 3.64 / March 14, 2011 (2011-03-14)
Platform PHP
Type Blog
License GNU General Public License
Website nucleuscms.org

Nucleus CMS is an open-source blog management software package written in PHP,[1] with a MySQL backend, primarily written and maintained by Wouter Demuynck.[2] It is used to manage frequently-updated Web content. With a little tweaking (mainly to skins), it might be considered[3] a lightweight content management system.[4]

Nucleus makes use of a callback function which has led to a plugin system that has inspired over 300 distinct plugins in multiple languages.[5][6] 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.

Nucleus is available through a number of "easy install" services such as Fantastico, Installatron,[7] and Simple Scripts.

Features[edit]

Nucleus CMS features a range of features[8] which can be extended further by plugins some of which sip as standard.[9] Some new skinvars were recently added.

  • Multiple Blogs[10]
  • Multiple Authors
  • Categories[11]
  • Commenting system: Nucleus provides a built-in Commenting System. This can be extended with tools such as ModComments[12] or ReCaptcha.
  • Custom URLs: This is supported to a limited degree out of the box but many plugins exist to take things further.
  • Plugins: Additional features can be programmed in plugins and be installed on Nucleus.
  • Nucleus also features highlighting search terms, both in articles, and in comments!
  • RSS and Atom Syndication which can be edited
  • XML-RPC interface: Blogger, metaWeblog and MovableType APIs: Nucleus provides implementations of the Blogger, metaWeblog and MovableType APIs allowing Nucleus CMS can be used with tools like w.Bloggar, Ecto, Zempt, ...
  • File and Image Upload: Nucleus CMS features a system for uploading and embedding images into blog posts. Media files can be kept private (for the user only) or (with a tiny tweak) made available for use by all users.
  • IP-banlist: The banning of IP addresses or blocks can be made on a per blog basis.
  • Backup & Restore: The contents of the database can be exported and (optionally) later restored from within the control panel.
  • NP_Text is a plugin that ships with Nucleus CMS it eases the translation of Skins
  • NP_SecurityEnforcer is a plugin that ships with Nucleus CMS it improves the security of the core.

History[edit]

Nucleus was written mostly by Demuynck while he was studying for a master in computer science.[citation needed] In January 2000, Wouter started a web blog using Blogger. After a while, he wanted a commenting feature, and wrote, for the first time, a PHP script for this purpose.[citation needed] Later, he started to use tricks to have multiple Blogger blogs on the same page (using JavaScript). In his words:[citation needed]

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 could not find a 'decent' one: I tried GreyMatter, but it did not 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.

Development Community[edit]

Nucleus is developed and supported actively across five languages (English,[13] German,[14][15] Polish,[16][17] Czech,[18] Japanese[19]) as well as having more than fifty user contributed translations available.[20]

Demonstration installations of Nucleus CMS are hosted both by The Nucleus Group [21] and by Open Source CMS.[22]

The English language forum[23] has over five thousand registered users[24] and the Japanese Forum has over six thousand registered users.[25]

Methodologies[edit]

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).

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.

API[edit]

Nucleus CMS supports a number of common blog oriented API through the use of an XML-RPC library.[26]

External sources[edit]

Very little of Nucleus CMS is sourced from additional parties. There are a few documented exceptions, however.

See also[edit]

References[edit]

External links[edit]