shop-old/libs/smarty/docs/programmers/plugins/plugins-naming-conventions.md
Thomas Bartelt 0a669704ea Dev-Umgebung: Kompatibilität für PHP 8.3 + Smarty 4.5.6
- Smarty 4.1.1 → 4.5.6 (behebt dynamic property deprecations)
- Core-Klassen: #[\AllowDynamicProperties] für Admin_role, base, Config,
  Customer, Customer_group, CustomerGroups, Item, Structure, website
- website.class.php: counts[parent_id] initialisieren vor ++ (PHP 8.1)
- layout.class.php: HTTP_ACCEPT_LANGUAGE mit isset-Guard
- website_init.php: session_status()-Check vor session_start
- .htaccess: HTTPS-Redirect via X-Forwarded-Proto (statt SERVER_PORT)
- themes/easyshop_advanced/media/: Parent-Theme-Assets nachgezogen
- .gitignore: smarty.4.1.1.bak ausschließen
2026-04-20 01:19:01 +02:00

1.1 KiB

Naming Conventions

Plugin files and functions must follow a very specific naming convention in order to be located by Smarty.

plugin files must be named as follows:

type.name.php

  • Where type is one of these plugin types:

    • function

    • modifier

    • block

    • compiler

    • prefilter

    • postfilter

    • outputfilter

    • resource

    • insert

  • And name should be a valid identifier; letters, numbers, and underscores only, see php variables.

  • Some examples: function.html_select_date.php, resource.db.php, modifier.spacify.php.

plugin functions inside the PHP files must be named as follows:

smarty_type_name

  • The meanings of type and name are the same as above.

  • An example modifier name foo would be function smarty_modifier_foo().

Smarty will output appropriate error messages if the plugin file it needs is not found, or if the file or the plugin function are named improperly.