flatpress/fp-includes/smarty-4.4.1/docs/programmers/plugins/plugins-naming-conventions.md
Fraenkiman e544ed6d9a Smatry Release 4.4.1 on Feb-2024
Comparing changes: https://github.com/smarty-php/smarty/compare/v4.3.1...v4.4.1

It is noticeable that Smarty 4.3.1 does not officially support PHP 8.3. Is only supported with 4.4.0.

Remark:

During tests with Smarty 4.5.1, it was noticed that the following warning occurs:
Deprecated: Using the unregistered function "function_exists" in a template is deprecated and will be removed in a future version. Use Smarty::registerPlugin to explicitly register a custom modifier.

As of Smarty 5.X.X, templates must be revised again.
The Smarty release 5.0.2 is already officially available. However, integration into FlatPress is not entirely trivial.
2024-04-14 18:37:39 +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.