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
This commit is contained in:
Thomas Bartelt
2026-04-20 01:19:01 +02:00
parent d504f8a05d
commit 0a669704ea
598 changed files with 27139 additions and 474 deletions
@@ -0,0 +1,40 @@
# Functions
Every Smarty tag either prints a [variable](./language-syntax-variables.md) or
invokes some sort of function. These are processed and displayed by
enclosing the function and its [attributes](./language-syntax-attributes.md)
within delimiters like so: `{funcname attr1="val1" attr2="val2"}`.
## Examples
```smarty
{config_load file="colors.conf"}
{include file="header.tpl"}
{insert file="banner_ads.tpl" title="My Site"}
{if $logged_in}
Welcome, <span style="color:{#fontColor#}">{$name}!</span>
{else}
hi, {$name}
{/if}
{include file="footer.tpl"}
```
- Both [built-in functions](../language-builtin-functions/index.md) and [custom
functions](../language-custom-functions/index.md) have the same syntax within
templates.
- Built-in functions are the **inner** workings of Smarty, such as
[`{if}`](../language-builtin-functions/language-function-if.md),
[`{section}`](../language-builtin-functions/language-function-section.md) and
[`{strip}`](../language-builtin-functions/language-function-strip.md). There should be no need to
change or modify them.
- Custom functions are **additional** functions implemented via
[plugins](../../programmers/plugins.md). They can be modified to your liking, or you can
create new ones. [`{html_options}`](../language-custom-functions/language-function-html-options.md)
is an example of a custom function.
See also [`registerPlugin()`](../../programmers/api-functions/api-register-plugin.md)