Implementing search
|
|
|
|
Getting the most out of your templates
|
|
|
|
How to install sake, and use it for database builds, tasks, testing
|
|
|
|
The shortcomings of ORM: when to use custom SQL
|
|
|
|
Adding AJAX behavior
|
|
|
|
Git workflow: rebasing, squashing
|
|
|
|
Introduction to Dependency Injection
|
|
|
|
Enriching your login experience with custom templates, authenticators, and SSO
|
|
|
|
Complex data relations: many_many, belongs_many_many, extraFields, ambigious has_many
|
|
|
|
Unit testing
|
|
|
|
Custom LeftAndMain interface
|
|
|
|
Hardening your SilverStripe site: Best practices for security
|
|
|
|
Making the Config API work for you, using exclusion/inclusion rules, environment dependent settings, etc
|
|
|
|
Error logging and debugging techniques
|
|
|
|
Caching (Partial caching and full caching options)
|
|
|
|
Configuring framework: password requirements, application name, logo, default admin, custom CMS menu, customising HTMLEditor
|
|
|
|
Reading and writing to external APIs
|
|
|
|
Creating subcontrollers with $url_handlers
|
|
|
|
SilverStripe's Code conventions
|
|
|
|
Robust and secure forms
|
|
|
|
Converting a static site to SilverStripe templates
|
|
|
|
Dependancy Managment with Composer
|
|
|
|
Using controller actions
|
|
|
|
Setting up support for Behat
|
|
|
|
Writing configurable modules that are easily consumed and adopted by the community
|
|
|
|
Must-have GridField modules
|
|
|
|
Environment management with _ss_environment et al
|
|
|
|
Introduction to Entwine
|
|
|
|
Building a RESTful API, introducing HTTP verbs, headers, working with request vars
|
|
|
|