
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.
38 lines
1.4 KiB
Markdown
38 lines
1.4 KiB
Markdown
# {extends}
|
|
|
|
`{extends}` tags are used in child templates in template inheritance for
|
|
extending parent templates. For details see section of [Template
|
|
Inheritance](../../programmers/advanced-features/advanced-features-template-inheritance.md).
|
|
|
|
- The `{extends}` tag must be on the first line of the template.
|
|
|
|
- If a child template extends a parent template with the `{extends}`
|
|
tag it may contain only `{block}` tags. Any other template content
|
|
is ignored.
|
|
|
|
- Use the syntax for [template resources](../../programmers/resources.md) to extend files
|
|
outside the [`$template_dir`](../../programmers/api-variables/variable-template-dir.md) directory.
|
|
|
|
## Attributes
|
|
|
|
| Attribute | Required | Description |
|
|
|-----------|----------|-------------------------------------------------|
|
|
| file | Yes | The name of the template file which is extended |
|
|
|
|
> **Note**
|
|
>
|
|
> When extending a variable parent like `{extends file=$parent_file}`,
|
|
> make sure you include `$parent_file` in the
|
|
> [`$compile_id`](../../programmers/api-variables/variable-compile-id.md). Otherwise, Smarty cannot
|
|
> distinguish between different `$parent_file`s.
|
|
|
|
## Examples
|
|
|
|
```smarty
|
|
{extends file='parent.tpl'}
|
|
{extends 'parent.tpl'} {* short-hand *}
|
|
```
|
|
|
|
See also [Template Inheritance](../../programmers/advanced-features/advanced-features-template-inheritance.md)
|
|
and [`{block}`](./language-function-block.md).
|