Version 6 pre-stable
This version of Silverstripe CMS has not yet been given a stable release. See the release roadmap for more information. Go to documentation for the most recent stable version.

URL variable tools

Introduction

This page lists a number of "page options" , "rendering tools" or "special URL variables" that you can use to debug your Silverstripe CMS applications. These are consumed in PHP using the $_REQUEST or $_GET superglobals throughout the Silverstripe CMS core.

Debug toolbar

The easiest way to debug Silverstripe CMS is through the lekoala/silverstripe-debugbar module. It similar to the browser "developer toolbar", and adds itself to the bottom of the screen when your site is in development mode. It shows you render times, database queries, session variables, used templates and much more.

Templates

URL VariableValuesDescription
flush1Clears out all caches. Used mainly during development, e.g. when adding new classes or templates. Requires "dev" mode or ADMIN login
showtemplate1Show the compiled version of all the templates used, including line numbers. Good when you have a syntax error in a template. Cannot be used on a Live site without isDev.

General testing

URL VariableValuesDescription
isDev1Put the site into development mode, enabling debugging messages to the browser on a live server. For security, you'll be asked to log in with an administrator log-in. Will persist for the current browser session.
isTest1See above.
debug1Show a collection of debugging information about the director / controller operation
debug_request1Show all steps of the request from initial HTTPRequest to Controller to Template Rendering
execmetric1Display the execution time and peak memory usage for the request

Classes and objects

URL VariableValuesDescription
debugfailover1Shows failover methods from classes extended

Database

URL VariableValuesDescription
showqueries1 | inlineList all SQL queries executed, the inline option will do a fudge replacement of parameterised queries
showqueries1 | backtraceList all SQL queries executed, the backtrace option will do a fudge replacement of parameterised queries and show a backtrace of every query
previewwrite1List all insert / update SQL queries, and don't execute them. Useful for previewing writes to the database.

Security redirects

You can set an URL to redirect back to after a Security action. See the section on URL Redirections for more information and examples.

URL VariableValuesDescription
BackURLURLSet to a relative URL string to use once Security Action is complete

Building and publishing URLs

Site URLAction
https://www.example.com/dev/build**Rebuild the entire database and manifest, see below for additional URL Variables
https://www.example.com/admin/pages/publishall/**Publish all pages on the site. Only works reliably on smaller sites.

/dev/build

URL VariableValuesDescription
quiet1Don't show messages during build
no-populate1Don't run requireDefaultRecords() on the models when building. This will build the table but not insert any records

Config diagnostic URLs

Site URLAction
https://www.example.com/dev/config**Output a simplified representation properties in the Config manifest
https://www.example.com/dev/config/audit**Audit Config properties and display any with missing PHP definitions