Short Open Tag: Why It Should Be Off

< 1 min read

Overview #

short_open_tag lets PHP treat as the start of PHP code, alongside the standard . It exists for legacy scripts from the early PHP days, but modern code never uses it. Leaving it on creates a real risk: XML files, templates, and SVG/feeds that begin with can be misread as PHP, causing parse errors or blank output.

The Alert #

SHORT_OPEN_TAG (warning): short_open_tag is enabled. XML and template parsing can break.

Why It's a Problem #

Risk What happens
misread as PHP XML declarations at the top of feeds, SVG files, or templates trigger parse errors
Blank pages A file starting with is consumed as code instead of output
Security surface Unexpected PHP execution paths in files that were never meant to run code
No benefit Modern PHP and WordPress always use ; the setting adds nothing

The Fix #

Disable short_open_tag.

  • GridPane: control panel → PHP settings → Short Open Tag → Off (Xponent does this for you).
  • php.ini / .user.ini: short_open_tag = Off

Verifying the Change #

Load a page that renders XML or SVG content (feeds, sitemaps, logo files) and confirm it displays normally. PHP itself needs no adjustment: the standard tag is unaffected.

The Xponent Standard #

Xponent-managed sites run short_open_tag = Off via the GridPane control panel: the secure, modern default. Any legacy script that depended on is migrated to on request.

Related Articles #

Updated on August 31, 2026