Featured Sites: A-Z Index

H


Newest 10 Entries

Question How do I set the correct file permissions for Composr?
Answer If you're using the quick installer, it will handle file permissions automatically. On a suEXEC-style server, default permissions (744 for directories and 644 for files) are usually sufficient. However, _config.php should have 600 permissions for security.

Without suEXEC, specific directories (e.g., caches, uploads) and files (e.g., _config.php) require 777 (full access) or 666 (read/write) permissions. The fixperms.php script can automate this process on Linux and Windows.
Question How do I install Composr on Linux?
Answer After ensuring your web host meets the requirements and you have a database ready, you can install Composr on Linux using the following steps:
  • Upload the Composr files to your web directory.
  • Navigate to the install.php file in your web browser.
  • Follow the on-screen instructions, providing the required information, such as database details and administrator credentials.
  • After the installation is complete, delete the install.php file for security reasons.
Question What are the prerequisites for installing Composr?
Answer Before installing Composr, ensure your web host meets the minimum requirements. Familiarize yourself with your web host's control panel (e.g., Plesk, cPanel), which you'll use to manage databases, subdomains, and other settings. Gather your SFTP/FTP credentials (hostname, username, password), usually emailed upon signup. Set up a MySQL database and note its details: hostname (often 'localhost'), username, password, and database name. Ensure the database user has full read/write/administer access to the database.
Question What tools are available for debugging Composr code?
Answer Composr offers a code quality checker addon that helps identify various types of errors, including parser errors, run-time errors, and logical errors. This tool can significantly reduce debugging time and enhance code reliability. It is available through the testing_platform addon.
Question What are some key coding standards in Composr?
Answer Composr emphasizes clean, well-structured code with a focus on readability and maintainability. Key standards include proper indentation, consistent use of comments, and clear function headers with type definitions. Remember: beautiful code leads to better functionality and collaboration!
Question Where can I find resources for learning PHP programming?
Answer While Composr documentation doesn't cover basic PHP, resources like the official PHP documentation (

PHP: Hypertext Preprocessor

PHP is a popular general-purpose scripting language that powers everything from your blog to the most popular websites in the world.

View

), online tutorials, and the Composr API guide can help you learn.
Question What is the purpose of the Code Editor?
Answer The Code Editor is a web-based tool for editing Composr code files directly on the server. It requires password authentication and automatically manages overrides within _custom directories.

To access it, go to yourbaseurl/code_editor.php.
Question How can I export and import custom addons?
Answer Composr allows exporting addons as TAR files, containing all necessary files and an addon.inf file for metadata. You can import these addons to share and reuse them across different Composr installations.

To do this, make your necessary files for the addon in the Composr installation, and then go under Admin Zone > Structure > Addons > Export addon. You can select the relevant files for the addon, provide information about the addon, and then download the TAR file (which can then be imported on other Composr sites).
Question Can you give an example of creating a new module?
Answer Imagine creating a "Testing" module to manage collaborative testing:
  • Define purpose: Allow testers to add, assign, and track tests, with security and forum integration.
  • Design database: Plan the necessary database tables and fields to store the module's data.
  • Create module shell: Write the basic module structure based on standard Composr modules.
  • Define screens: Identify the module's screens and code their corresponding functions.
  • Utilize API functions: Use Composr's built-in API functions like create_table, add_privilege, and do_template to implement functionality.
Question What are the different ways to extend Composr functionality?
Answer You can extend Composr through:
  • File overrides: Replacing existing source files with modified versions in _custom directories.
  • New Modules/Mini-modules: Creating new modules for complex functionalities or mini-modules for simpler ones.
  • New Blocks/Miniblocks: Adding reusable content blocks.
  • New API code: Adding new PHP files to the sources_custom directory.
  • Hooks: Writing hooks to add features to specific areas of functionality.

Top 10 Entries

Title Installation
Icon Image
Description

Quick installer: Our self-extractor allows faster uploads and will automatically set permissions.

Wizard-based installation

Auto-scans for compatibility problems: Be informed of problems before installing

Get your site up and running in just a few minutes

Keep your site closed to regular visitors until you're happy to open it

Configures server: Automatically generates an htaccess file for you (for Apache).

Auto-detection of forum settings for easy integration

Install test content

Title Web Pages
Icon Image
Description

Add virtually unlimited pages to your site

WYSIWYG editor (powered by CKEditor)

Convenient edit links: Staff see “edit this” links at the bottom of every page.

PHP support: Upload your PHP scripts and run them inside Composr (may require adjustments to the script code).

Hierarchical page structure: Supports parent and child pages

Periodic content reviews: Helping you ensure ongoing accuracy of your content.

Add Comcode pages (the default) or static HTML pages

Supports revisions and revision control systems (such as git); add new pages as files, and Composr will automatically register them in its system.

Title Downloads
Icon Image
Description

Clear organisation: Uses a tree structure for unlimited categorisation.

Anti-leech protection: download links contain a session ID

Community-centred: Allow users to comment upon and rate downloads

Many ways to add new files: Upload files. Link-to existing files. Copy existing files using a live URL. Batch import links from existing file stores.

Author support: Assign your downloads to authors, so users can find other downloads by the same author.

Set licences: Make users agree to a licence before downloading.

Images: Show images along with your downloads (e.g. screen-shots) (this implicitly uses galleries).

Basic file versioning support

Control monthly bandwidth use site-wide

Title Wiki+
Icon Image
Description

Think “structured wikis”.

Create an encyclopaedic database for your website

Use a tree-structure or traditional cross-linking

Supports revisions: Track changes

Display the tree structure of your entire Wiki+

Allow users to jump in at random pages

Make your pages either wiki-style or topic-style

Allow members to contribute to Wiki+ pages by adding Wiki+ posts

Title Quizzes and Surveys
Icon Image
Description

Run a competition: Choose winners randomly from those who passed the quiz.

Surveys: Gather data and find trends.

Tests: Test members' knowledge on a variety of topics.

Cheat prevention: Settings to prevent cheating, such as time limits, question / answer shuffling, and re-testing rules.

Integration with points: Charge points to enter a competition, or award points for winning.

Title News and Blogs
Icon Image
Description

Member blogs: Allow members to have their own blogs on their profile

RSS and Atom support: Export and import feeds.

Trackback support: Send and receive trackbacks.

Scheduled publishing

Ping support and RSS Cloud support

Multiple news categories and filtering

Multiple ways to integrate news into your website

Import from RSS feeds

Supports geotargeting

Members can rate and comment on news articles and blog posts

Send out a news article as a newsletter

Title Calendar
Icon Image
Description

Day/week/month/year views

Advanced “recurring event” settings

Event subscriptions: Receive reminders and notifications by event or event type

Warnings about conflicting events

Microformats support

Integrate a calendar month view, or an upcoming events view, onto your design

Supports categories: Have multiple event types

Multiple time zones: Have different events in different time zones with configurable conversion settings.

Priority flagging: Choose between 5 priorities

Programmers can even use the calendar to schedule custom tasks (Commandr) to be run

RSS and Atom support: Export support, but also support for overlaying news feeds onto the calendar.

Supports geotargeting

Feedback: Allow members to comment and rate events. Segregate feedback on recurring events by date.

Title Galleries
Icon Image
Description

Multimedia: Supports images, videos, audio, and more.

Personal galleries: Allow your members to create their own galleries which show up on their profile.

Support for embedding YouTube videos: Save on bandwidth.

Auto-detection of video length and resolution (most file formats)

Full tree-structure support: Have galleries within galleries within galleries.

Multiple display modes

View entries as a slideshow

Automatic thumbnail generation

Mass import: Also supports importing metadata

Optional watermarking: To guard against thieving swines ;) .

Geotargeting

Adjustments: Automatic size and orientation adjustments according to metadata.

Title Catalogues
Icon Image
Description

Think “databases on my website”.

Flexible data control: Set up multiple catalogues, each with its own set of fields. There are many types of fields, such as short text fields, upload fields, and date fields.

Multiple display modes: Display the contents of categories using tables, boxes, or lists.

Powerful structure: Each catalogue contains categories which contain entries. Catalogues can have a tree structure of categories and/or work from an index.

Configurable searching: Choose which fields are shown on categories, and which can be used to perform searches (template searches).

Compliance with data protection legislation: Specify which fields may contain sensitive data. These fields will be anonymised as appropriate when members download or purge their data.

Entirely customisable: Full support for customising catalogues, categories, and entries, exactly as you want them- field by field. You can even make custom page templates per-catalogue.

Classified ads: Entries can automatically expire and get archived. You can also send out view reports.

Community interaction: You can allow users to comment upon and rate entries.

Import data from CSV files

Periodic content reviews: Helping you ensure ongoing accuracy of your data.

Name Patrick Schmalstig
Photograph Image
Title / Role Lead Developer
Contributions / Notes

Joined Chris Graham behind the scenes in the development of Composr CMS in 2016.

Took on the lead developer role in 2023 when Chris Graham stepped back to attend to his new lifestyle changes.

Spearheaded the development of Composr CMS v11 and the new website, Composr.app.

Formed the company PDStig, LLC to take on professional support and development for Composr CMS users especially after the discontinuation of ocProducts, Ltd.

Links

PDStig, LLC