This is the first article of the series in which we will cover the introduction to PHP-Nuke.
PHP-Nuke is a free tool to manage the content of dynamic websites. To be more specific, PHP-Nuke is an open-source content management system. In fact, you could say it is ‘the’ open-source content management system. Since it is vastly popular, a number of other similar systems have sprung from it, and even similar systems based around very different technologies that owe nothing to it in terms of code have added ‘Nuke’ to their name as homage.
Although the first paragraph conveys something of the history and grandeur of PHP-Nuke, it doesn’t answer the basic question of what it can actually do for you.
PHP-Nuke allows you to create a dynamic, community-driven website with minimum effort and programming knowledge. To get the most out of PHP-Nuke, a knowledge of web development will prove to be useful, but even then, PHP-Nuke is written in the PHP scripting language (as can be deduced from the name), which is probably the most popular and straightforward language for creating websites and web applications.
The first PHP-Nuke release in June 2000 was created by a developer named Francisco Burzi to power his site, Linux Preview. Since then, PHP-Nuke has evolved under his guidance to the system it is today.
PHP-Nuke is truly one of the Internet’s legendary applications. In this article, we will take our first look at PHP-Nuke, understand what it can do, find out where to go for further resources, and briefly discuss the site we will create in this article series.
What PHP-Nuke Can Do for You
PHP-Nuke is ideal for creating community-driven websites.
The ‘community’ part of ‘community-driven’ means that the site is geared towards a particular group of people with similar interests. Maybe this community is concerned with wine making, flowers, programming, zombie films, or even dinosaurs. Maybe the community is actually a group of customers of a particular product. Of course, we are talking about an online community here.
Whatever the community is into, the site can be structured to hold information relevant to the members; maybe it will be news stories about a forthcoming zombie film, links to other zombie sites, reviews, or synopses of other zombie films.
The ‘driven’ part of ‘community-driven’ suggests that the information available on this site can be extended or enhanced by the members of the community. Members of the community may be able to shape what is on the site by posting comments, contributing or rating stories, and participating in discussions. After all, communities are made up of people, and people have views and opinions, and often like to express them!
This is exactly what PHP-Nuke enables. More than being just a website, a PHP-Nuke site provides a rich and interactive environment for its visitors.
The best bit is, you don’t have to be an expert programmer to achieve all this. With only rudimentary knowledge of HTML, you can engineer a unique-looking PHP-Nuke website.
The Visitor Experience
The standard installation of PHP-Nuke provides many features for its visitors. Some of them are:
- Searchable news articles, organized into topics
- Ability of visitors to create an account on the site, and log in to their own personal area
- Ability of visitors to rate articles, and create discussions about them
- Straw polls and surveys
- Ability of visitors to submit their own stories to be published on the site
- An encyclopedia, in other words, a collection of entries organized alphabetically
- A catalog of web links or downloadable files
- Discussion forums
- Ability of visitors to select their own look for the site from a list of different ‘themes’
- RSS syndication of your articles to share your content with other sites
This is not a complete list either. And these are only some of the features that come with the standard installation. PHP-Nuke is a modular system; it can be customized and extended, and there is a huge range of third-party customizations and extensions to be found on the Internet. Any of these can add to the range of features your site provides.
The Management Experience
As a potential ‘manager’ of a PHP-Nuke site, as you read through the list of features above you may think they sound rather attractive, but you might also wonder how you will handle all of that.
PHP-Nuke provides a web-based management interface. You, as the manager of the site, visit the site and log in with a special super user, or site administrator, account. After this, from the comfort of your web browser, you run the show:
- You can add new information, and edit, delete, or move existing pieces of information.
- You can approve articles submitted by the user to be shown on the site.
- You can decide the features of the site.
- You can control what is displayed on the pages.
- You can control who is able to see what.
What Exactly is PHP-Nuke?
PHP-Nuke is a collection of PHP scripts that run on a web server, connect to a database, and display the retrieved data in a systematic way. In other words, PHP-Nuke is a data-driven PHP web application.
PHP-Nuke can be downloaded for free, and then installed to your local machine for testing and development. The files and the database can be uploaded to a web hosting service, so that your site will be available to anyone on the Internet. There are even web hosting services that offer PHP-Nuke installation at the click of a button.
PHP-Nuke is built around a ‘core’ set of functions, which perform mundane tasks such as selecting what part of the application the user should be shown, checking who the user is, and what they can do on the site. The thing that makes PHP-Nuke exciting to the world is the set of modules that comes with it. These modules provide the real functionality of the site, and include ones for news and article management, downloads, and forums, among others. The modules can be switched on and off with ease, and other modules can be added to the system.
There is no shortage of third-party modules on the Internet, and you can find a PHP-Nuke module for almost any imaginable purpose.
The look of a PHP-Nuke site is controlled by a theme. This is a collection of images, colors, and other resources, and instructions that determine the layout of the page. A new theme can be selected, and your site will be transformed immediately. Visitors with a user account on the site are able to select their own personal theme.
PHP-Nuke comes with many language files. These contain translations of standard elements on the site interface. The availability of these translations reflects the international nature of the PHP-Nuke community.
PHP-Nuke as an Open-Source Content Management System
We used the expression ‘open-source content management system’ earlier in the article to describe PHP-Nuke. Let’s take a closer a look at this term.