Getting Started
It's easy to get started creating your own block type. Read on for more information.
- Overview
- Anatomy of a Block
- PHP Controller
- Handling Adding, Saving & Rendering
- Installing or Updating Your Custom Block Type
- Sample Block: Hello World
Loading Conversation
- Background
- Basic Concepts
- Installation
- Request & Environment
- Designing for Concrete5
- Working with Blocks
- Directory Structure & Concepts
- Working with Existing Block Types
- Creating a New Block Type
- Getting Started
- Design Guidelines
- Implementing Ajax in Block View Templates
- Making Blocks Cacheable for Better Performance
- Enabling Composer Editing for a Block Type
- Disabling in Edit Mode & Clipboard View
- Enabling Search Indexability
- Screencast: Building an Audio Player
- Registering and Requiring CSS & JavaScript
- Grouping Block Types into Sets
- Enabling Inline Editing
- Disabling Grid Container
- Working with Multiple Database Tables
- Interactive Blocks
- Including Complex Form Widgets
- Including a Block in a Package
- Adding Help to Blocks
- Implementing AJAX & Server-Side Requests in a Block Add/Edit Template
- Working with Pages
- Express
- Extending concrete5 with Custom Code
- Bundling Code into Packages for Reuse and Marketplace Distribution
- Working with Files and the File Manager
- Attributes
- Users & Groups
- Sending Mail
- Topics
- Security: Protecting Your Web Applications
- Pemissions and Access
- JavaScript and CSS Asset System
- Interface Customization
- Automated Jobs
- Configuration and Key/Value Storage
- Application Events
- Database Management
- Logging
- Caching
- Appendix