phpWebSite provides a complete web site content management system. Web-based administration allows for easy maintenance of interactive, community-driven web sites.
phpWebSite's growing number of modules allow for easy site customization without the need for unwanted or unused features. Client output from phpWebSite is valid XHTML 1.0 and meets the W3C's Web Accessibility Initiative requirements.
Founded and hosted by the Web Technology Group at Appalachian State University, phpWebSite is developed by the phpWebSite Development Team, a network of developers from around the world. phpWebSite is free, open source software and is licensed under the GNU GPL and GNU LGPL.

phpWebSite Features
Core Features
phpWebSite allows an individual or group to easily maintain an interactive, community-driven web site. A brief summary of features is outlined below:
- Easy, web-based administration - minimal computer experience is needed to maintain site content.
- Flexible layout control - site page layout can be changed at anytime.
- Topic-based announcements - organize site announcements by category with automatic history rollover.
- Interactive content - visitors can post comments, submit announcements and web links.
- Full featured event calendar - post events by category and subcategory in a flexible cross-referenced calendar.
- Customized user experience - themes allow each vistor to customize the web site for his or her preferences or special needs.
- XHTML and WAI compliance - we are committed to meeting XHTML 1.0 specifications by our 1.0 release. Current errors are minimal.
Concepts
Templates
Everything in the 1.x series of phpWebSite is templated using template files and the
Pear HTML_Template_IT templating system. All the files are strictly html and contain no php. This allows you to customize every aspect of your site and allows for some very interesting themes. These templates can be saved with each theme as well, allowing you to create a whole new look and feel for each theme. It also allows you to "inject" your own text or html directly into module output without editing any php code. This is one of the most powerful tools for the web designers out there who really don't have the time to learn php just to create a great looking site.
Content Variables
Every module is assigned a content variable by the layout module. When any page is rendered, phpWebSite uses these content variables to position any output recieved from modules. When you turn on the box move feature via layout, you are simply moving content variables around.
Modules
The 1.x series of phpWebSite has a true modular nature. Every module has it's own files, templates, installation and version information, and graphics. phpWebSite itself is really just a main core and several core modules. During installation, you can choose to install the core modules only. All other modules will have to be added by hand via Boost. Some core modules include layout, users, and boost. Core modules are only deemed core modules when they provide functionality used by every other module in the system.
Users
Users in the 1.x series have only one account. That account can be setup as a default user account or can be given administrative privilages to specific modules within the site (granulated administration).
Modules
Layout Manager
This module allows admins to choose the theme to use for their phpWebSite. It also allows users to change that theme so they can have their own look and feel when they visit your site.
Probably the most powerful feature of the Layout Manager is the ability to move and change the "boxes" on your site. Clicking small arrows you can position any block where you would like.
Site Search
This module is mostly used by other modules to allow their content to be searchable. If you enter a module where searching is available, a block will appear with a search form in it allowing you to enter and perform searches on that module.
Language Administrator
This module is used to do translations on phrases found on your site. There is an administrative side that allows you to actually do the translations yourself or you can import language files that
someone else provided to you.
User Manager
The user manager does just what the name suggests. It allows you to create and manage users and groups and their permissions on your site. You can also turn on a feature to allow you to edit the "Modules Menu". You can remove and move modules around on the menu to suit your needs.
Announcements
The Announcements module allows you to post announcements to your site that show up on the home page. Users can also submit their own announcements, though they must be approved by an admin before they will show up on the mainpage (See Approval Module).
Comment Manager
This module is mostly used by other modules to allow comment threads to be associated with and item such as an announcement. Anywhere you see comments being posted, this module is behind the scenes, handling all the work needed to track those comments and their replies.
Link Manager
This module allows you to add and manage links for your site.
Block Maker
This is the module that allows you to create blocks for your site. You choose to have these blocks show up anywhere you wish. You choose modules that you wish the block to show up in.
Menu Manager
This module allows you to create and manage multiple menus for your site. On install there is a default menu created to show the basic format of an existing menu.
Menus can be hidden and shown depending on which module is active and links can be nested and ordered.
Web Pages (formerly PageMaster)
This module allows you to create and manage web pages for your site. Each page is created a section at a time. Once created, pages can be added to the menu very easily and at the admin's leisure.
Form Generator
This module is quite powerful in the right hands. It allows for forms to be created and saved then presented to the public or to users who have accounts on your site. The results saved via the online form can be exported or viewed via Form Generator.
Calendar
The calendar module allows you to post and track events that may be occuring and you want to let your users know about. With several views and many attributes that can be assigned to these events, users are sure to know about upcoming events if you use this module. Some other features include fully templated calendar views allowing for many different styles or formats, repeating events, and image support.
Boost
This is the module installer for phpwebsite. It allows admins to install, upgrade, and uninstall any module in the system. To install a module, simply place it's files in the ./mod/ directory and go into Boost. Assuming the developer of the module uses Boost functionality, the module will show up in the module list and allow you to choose to install the module.
Security
This module allows you to do some basic security functions for your site. You can ban IPs or allow only specific IPs and create and manage custom error pages.
Branch Creator
If setup correctly, this module allows admins to create "branch" sites that extend the "hub" site. Branch sites rely on the same codebase as the hub site. They can be setup to use the same database as the hub by using table prefixes or can use their own databases. When a branch is created there is a basic directory structure that is created for that branch that contains any themes, images, or other site specific files.
Debugger
This module is mostly for development use. It allows you to turn on debugging information that is useful in tracking down errors in code.
Module Maker
This module is mostly for development use. It allows you to change any information for a given module (i.e.: module directory, module name, session variables, class files, etc.).
Help
The help system provides inline help where ever a programmer has taken advantage. This module allows you to edit the help content for specific modules at any time and you can turn on and off help for specific modules or site wide.
Approval
This is the central approval body for the phpWebSite system. Upon visiting this module, an admin is presented with any user submitted content that requires approval. With a simple click of "Yes" or "No" an admin can accept or refuse the content submitted.
FatCat Categorizer
This module is mostly used by other modules to handle categorizing their data. You can create or manage those categories through this module and categorize all of the information on your site.
FAQ
This module provides an interface to manage a list of frequently asked questions. Besides from creating and maintaining FAQ's you can control Layout view, Sorting and Rating. The module includes statistics and queries to pinpoint FAQ's with no activity, low ratings and much more.
Document Manager (formerly FileManager)
This module allows you to manage documents which can have multiple files associated with it.
Notes
This module provides basic functionality to send and manage notes to users of the website.
Download:http://phpwebsite.appstate.edu/index.php?module=webpage&id=6
- Easy, web-based administration - minimal computer experience is needed to maintain site content.
- Flexible layout control - site page layout can be changed at anytime.
- Topic-based announcements - organize site announcements by category with automatic history rollover.
- Interactive content - visitors can post comments, submit announcements and web links.
- Full featured event calendar - post events by category and subcategory in a flexible cross-referenced calendar.
- Customized user experience - themes allow each vistor to customize the web site for his or her preferences or special needs.
- XHTML and WAI compliance - we are committed to meeting XHTML 1.0 specifications by our 1.0 release. Current errors are minimal.
Concepts
Templates
Everything in the 1.x series of phpWebSite is templated using template files and the
Pear HTML_Template_IT templating system. All the files are strictly html and contain no php. This allows you to customize every aspect of your site and allows for some very interesting themes. These templates can be saved with each theme as well, allowing you to create a whole new look and feel for each theme. It also allows you to "inject" your own text or html directly into module output without editing any php code. This is one of the most powerful tools for the web designers out there who really don't have the time to learn php just to create a great looking site.
Content Variables
Every module is assigned a content variable by the layout module. When any page is rendered, phpWebSite uses these content variables to position any output recieved from modules. When you turn on the box move feature via layout, you are simply moving content variables around.
Modules
The 1.x series of phpWebSite has a true modular nature. Every module has it's own files, templates, installation and version information, and graphics. phpWebSite itself is really just a main core and several core modules. During installation, you can choose to install the core modules only. All other modules will have to be added by hand via Boost. Some core modules include layout, users, and boost. Core modules are only deemed core modules when they provide functionality used by every other module in the system.
Users
Users in the 1.x series have only one account. That account can be setup as a default user account or can be given administrative privilages to specific modules within the site (granulated administration).
Modules
This module allows admins to choose the theme to use for their phpWebSite. It also allows users to change that theme so they can have their own look and feel when they visit your site.
Probably the most powerful feature of the Layout Manager is the ability to move and change the "boxes" on your site. Clicking small arrows you can position any block where you would like.
Site Search
This module is mostly used by other modules to allow their content to be searchable. If you enter a module where searching is available, a block will appear with a search form in it allowing you to enter and perform searches on that module.
Language Administrator
This module is used to do translations on phrases found on your site. There is an administrative side that allows you to actually do the translations yourself or you can import language files that
User Manager
The user manager does just what the name suggests. It allows you to create and manage users and groups and their permissions on your site. You can also turn on a feature to allow you to edit the "Modules Menu". You can remove and move modules around on the menu to suit your needs.
Announcements
The Announcements module allows you to post announcements to your site that show up on the home page. Users can also submit their own announcements, though they must be approved by an admin before they will show up on the mainpage (See Approval Module).
Comment Manager
This module is mostly used by other modules to allow comment threads to be associated with and item such as an announcement. Anywhere you see comments being posted, this module is behind the scenes, handling all the work needed to track those comments and their replies.
Link Manager
This module allows you to add and manage links for your site.
Block Maker
This is the module that allows you to create blocks for your site. You choose to have these blocks show up anywhere you wish. You choose modules that you wish the block to show up in.
Menu Manager
This module allows you to create and manage multiple menus for your site. On install there is a default menu created to show the basic format of an existing menu.
Menus can be hidden and shown depending on which module is active and links can be nested and ordered.
Web Pages (formerly PageMaster)
This module allows you to create and manage web pages for your site. Each page is created a section at a time. Once created, pages can be added to the menu very easily and at the admin's leisure.
Form Generator
This module is quite powerful in the right hands. It allows for forms to be created and saved then presented to the public or to users who have accounts on your site. The results saved via the online form can be exported or viewed via Form Generator.
Calendar
The calendar module allows you to post and track events that may be occuring and you want to let your users know about. With several views and many attributes that can be assigned to these events, users are sure to know about upcoming events if you use this module. Some other features include fully templated calendar views allowing for many different styles or formats, repeating events, and image support.
Boost
This is the module installer for phpwebsite. It allows admins to install, upgrade, and uninstall any module in the system. To install a module, simply place it's files in the ./mod/ directory and go into Boost. Assuming the developer of the module uses Boost functionality, the module will show up in the module list and allow you to choose to install the module.
Security
This module allows you to do some basic security functions for your site. You can ban IPs or allow only specific IPs and create and manage custom error pages.
Branch Creator
If setup correctly, this module allows admins to create "branch" sites that extend the "hub" site. Branch sites rely on the same codebase as the hub site. They can be setup to use the same database as the hub by using table prefixes or can use their own databases. When a branch is created there is a basic directory structure that is created for that branch that contains any themes, images, or other site specific files.
Debugger
This module is mostly for development use. It allows you to turn on debugging information that is useful in tracking down errors in code.
Module Maker
This module is mostly for development use. It allows you to change any information for a given module (i.e.: module directory, module name, session variables, class files, etc.).
Help
The help system provides inline help where ever a programmer has taken advantage. This module allows you to edit the help content for specific modules at any time and you can turn on and off help for specific modules or site wide.
Approval
This is the central approval body for the phpWebSite system. Upon visiting this module, an admin is presented with any user submitted content that requires approval. With a simple click of "Yes" or "No" an admin can accept or refuse the content submitted.
FatCat Categorizer
This module is mostly used by other modules to handle categorizing their data. You can create or manage those categories through this module and categorize all of the information on your site.
FAQ
This module provides an interface to manage a list of frequently asked questions. Besides from creating and maintaining FAQ's you can control Layout view, Sorting and Rating. The module includes statistics and queries to pinpoint FAQ's with no activity, low ratings and much more.
Document Manager (formerly FileManager)
This module allows you to manage documents which can have multiple files associated with it.
Notes
This module provides basic functionality to send and manage notes to users of the website.
