Skip to content

Replace MODX_* system constants with EVO_* #2238

@Seiger

Description

@Seiger

Description

Currently, across the Evolution CMS codebase there are still usages of legacy system constants prefixed with MODX_ (e.g. MODX_BASE_PATH, MODX_SITE_URL, etc.).

Since Evolution CMS has moved away from MODX branding, these constants are misleading and can cause confusion for developers, especially in new projects and documentation.

Problem

  • Legacy constants like MODX_* are still used internally
  • They do not reflect the current identity of Evolution CMS
  • This may lead to:
    • confusion for new developers
    • inconsistency in codebase
    • misperception of the system as MODX-dependent

Proposed solution

  1. Replace all MODX_* constants with corresponding EVO_* equivalents:
  • MODX_BASE_PATH → EVO_BASE_PATH
  • MODX_SITE_URL → EVO_SITE_URL
  • etc.
  1. Introduce a backward compatibility layer:

defined('MODX_BASE_PATH') || define('MODX_BASE_PATH', EVO_BASE_PATH);

  1. Update:
  • core codebase
  • documentation
  • examples
  • templates

Reference

A full list of currently defined system constants can be found in:

core/includes/define.inc.php

Benefits

  • Clear separation from MODX legacy
  • Cleaner and more consistent naming
  • Better developer experience
  • Easier onboarding for new users

Notes

  • This change should be done carefully to avoid breaking existing projects
  • Backward compatibility must be preserved for at least one major version

Scope

  • Core (/core)
  • Manager
  • Installer
  • Default templates/snippets
  • Documentation

Additional context

This is part of ongoing efforts to modernize Evolution CMS and align naming conventions with the current ecosystem.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions