Magma CMS
Encyclopedia
Magma CMS is an open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

 content management system
Content management system
A content management system is a system providing a collection of procedures used to manage work flow in a collaborative environment. These procedures can be manual or computer-based...

 (CMS) and content management framework
Content management framework
A content management framework is an application programming interface for creating a customized content management system . The relationship between a CMF and a CMS can be illustrated by the following analogy:...

 (CMF) for publishing content on the World Wide Web
World Wide Web
The World Wide Web is a system of interlinked hypertext documents accessed via the Internet...

, intranet
Intranet
An intranet is a computer network that uses Internet Protocol technology to securely share any part of an organization's information or network operating system within that organization. The term is used in contrast to internet, a network between organizations, and instead refers to a network...

s and extranet
Extranet
An extranet is a computer network that allows controlled access from the outside, for specific business or educational purposes. An extranet can be viewed as an extension of a company's intranet that is extended to users outside the company, usually partners, vendors, and suppliers...

s.

Magma CMS is written in PHP
PHP
PHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...

, uses object-oriented programming
Object-oriented programming
Object-oriented programming is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their interactions – to design applications and computer programs. Programming techniques may include features such as data abstraction,...

 (OOP) techniques and software design patterns. Magma CMS runs on any computing platform that supports both a web server capable of running PHP (including Apache
Apache HTTP Server
The Apache HTTP Server, commonly referred to as Apache , is web server software notable for playing a key role in the initial growth of the World Wide Web. In 2009 it became the first web server software to surpass the 100 million website milestone...

, IIS
Internet Information Services
Internet Information Services – formerly called Internet Information Server – is a web server application and set of feature extension modules created by Microsoft for use with Microsoft Windows. It is the most used web server after Apache HTTP Server. IIS 7.5 supports HTTP, HTTPS,...

, Lighttpd
Lighttpd
lighttpd is an open-source web server more optimized for speed-critical environments than common products while remaining standards-compliant, secure and flexible...

, or nginx
Nginx
nginx is a Web server and a reverse proxy server for HTTP, SMTP, POP3 and IMAP protocols, with a strong focus on high concurrency, performance and low memory usage. It is licensed under a BSD-like license and it runs on Unix, Linux, BSD variants, Mac OS X, Solaris, and Microsoft Windows.- Overview...

) and a MySQL
MySQL
MySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...

 database. Although it primarly uses MySQL to store data, due to the builtin database abstraction layer
Database abstraction layer
A database abstraction layer is an application programming interface which unifies the communication between a computer application and databases such as SQL Server, DB2, MySQL, PostgreSQL, Oracle or SQLite...

 other relational database systems can also be used. Magma CMS uses UTF-8
UTF-8
UTF-8 is a multibyte character encoding for Unicode. Like UTF-16 and UTF-32, UTF-8 can represent every character in the Unicode character set. Unlike them, it is backward-compatible with ASCII and avoids the complications of endianness and byte order marks...

 encoding to store its content, which makes it suitable for international use.

Core

The standard release of Magma CMS, known as Magma CMS Basic, contains basic features common to content management systems. These include user account registration and management, page layout customization, articles and news management, picture and video galleries, document management, and system administration. The Magma CMS Basic can be used as a brochureware
Brochureware
A brochureware website is a business website that has very infrequently updated content. Often the site has been developed as a direct translation of existing printed promotional materials, hence the name...

 website, blogging platform, or a community website providing for user-generated content
User-generated content
User generated content covers a range of media content available in a range of modern communications technologies. It entered mainstream usage during 2005 having arisen in web publishing and new media content production circles...

.

Modules

Magma CMS is designed as modular
Modular programming
Modular programming is a software design technique that increases the extent to which software is composed of separate, interchangeable components called modules by breaking down program functions into modules, each of which accomplishes one function and contains everything necessary to accomplish...

 framework
Software framework
In computer programming, a software framework is an abstraction in which software providing generic functionality can be selectively changed by user code, thus providing application specific software...

, a set of independent scripts
Scripting language
A scripting language, script language, or extension language is a programming language that allows control of one or more applications. "Scripts" are distinct from the core code of the application, as they are usually written in a different language and are often created or at least modified by the...

 that represents modules, sections and functions
Subroutine
In computer science, a subroutine is a portion of code within a larger program that performs a specific task and is relatively independent of the remaining code....

, which are used in a hierarchical fashion to construct larger blocks for a particular use. This design allows easy scalability, modification and customization of the core, as well as development of new modules and functionalities. However, no programming skills are required for basic website installation and administration.

There is a number of prebuilt modules to suite clients general needs, such as several different systems of classified ads, matchmaking and site search, banners
Web banner
A web banner or banner ad is a form of advertising on the World Wide Web delivered by an ad server. This form of online advertising entails embedding an advertisement into a web page. It is intended to attract traffic to a website by linking to the website of the advertiser...

 and blocks management, mailer, site statistics, dynamic site maps
Site map
A site map is a list of pages of a web site accessible to crawlers or users. It can be either a document in any form used as a planning tool for web design, or a web page that lists the pages on a web site, typically organized in hierarchical fashion...

 etc.

Templating Engine

The HTML code is based on CSS
Cascading Style Sheets
Cascading Style Sheets is a style sheet language used to describe the presentation semantics of a document written in a markup language...

 and completely separated from the core. This allows graphic designers to modify existing or create new themes without PHP or programming knowledge.

Features

Magma CMS offers features such as:
  • Multilanguage support
  • Simple and easy navigation
  • Flexible site structure
  • Optimized for heavy traffic
  • Advanced Caching Engine
    Cache
    In computer engineering, a cache is a component that transparently stores data so that future requests for that data can be served faster. The data that is stored within a cache might be values that have been computed earlier or duplicates of original values that are stored elsewhere...

  • Content classification by categories
  • Picture uploading with automatic resizing and watermarking
  • Different methods of authorization and access control to site sections
  • Advanced bb code
  • Content sorting and filtering
  • Articles internal linking
  • SEO
    Search engine optimization
    Search engine optimization is the process of improving the visibility of a website or a web page in search engines via the "natural" or un-paid search results...

     friendly URLs
  • Tagging system
    Tag (metadata)
    In online computer systems terminology, a tag is a non-hierarchical keyword or term assigned to a piece of information . This kind of metadata helps describe an item and allows it to be found again by browsing or searching...

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK