[8.x] Add extendsFirst method similar to includesFirst #34648
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The reason / need:
To extends a template according to a conditional existance.
For example to use different templates according to some configuration or variable.
To give an example let's have an idea of a marketplace API that sells products for a variety of stores.
So each store could have their own "base template" or in case they don't the API can use the default one.
Example that doesn't work today (using IFs):
The actual problem of using this way:
The compiler doesn't use that conditional IF and the content will be showed in double case both files exists. So the content is duplicated! When the view is rendered it returns a duplicated layout =/
The solution:
Added an extendsFirst method on CompilesLayouts using the "first" method