azett 52bf429a01 Replaced Smarty 2.6.31-dev with v 4.0.4, keeping the FP-specific Smarty plugins.
Updated calls to current Smarty API (register_function()/register_modifier()/register_block() -> registerPlugin(); assign_by_ref() -> assignByRef()).
Fixed file includes in templates with quotes.
Removed SmartyValidate.class.php includes.

Still work in progress as some errors still appear!
2022-01-23 15:02:33 +01:00

1.7 KiB

$use_include_path

This tells smarty to respect the include_path within the File Template Resource handler and the plugin loader to resolve the directories known to $template_dir. The flag also makes the plugin loader check the include_path for $plugins_dir.

Note

You should not design your applications to rely on the include_path, as this may - depending on your implementation - slow down your system (and Smarty) considerably.

If use_include_path is enabled, file discovery for $template_dir and $plugins_dir work as follows.

  • For each element $directory in array ($template_dir or $plugins_dir) do

  • Test if requested file is in $directory relative to the current working directory. If file found, return it.

  • For each $path in include_path do

  • Test if requested file is in $directory relative to the $path (possibly relative to the current working directory). If file found, return it.

  • Try default_handler or fail.

This means that whenever a directory/file relative to the current working directory is encountered, it is preferred over anything potentially accessible through the include_path.

Note

Smarty does not filter elements of the include_path. That means a ".:" within your include path will trigger the current working directory lookup twice.

See also Template Resources and $template_dir