Template override conditions: More informations ?

Author Message

Sébastien Morel

Wednesday 25 April 2007 11:30:18 am

Hello,

http://ez.no/doc/ez_publish/technical_manual/3_8/reference/template_override_conditions
This page show differents ways to override a template, I haven't bugs, I understand everything expect this 3 conditions on the node/view/*.tpl :

view_offset: Matches the offset view parameter.

Could you give me an example ?

viewmode: Matches the name of the view mode (full, line, etc.)

I could understand this condition but, in the bloc of override, we can define the source ex: node/view/full.tpl so we define already the view, in my example : full.
What's the differences ? Could you give me an example ?

persistent_variable: Matches the value of the persistent variable.

I understand this condition but Could you give me an example ?

Thanks

Séb

--
eZ c'est plus fort que toi !
http://www.ez-france.org
http://blog.plopix.net
@Novactive (http://www.novactive.com)

Nabil Alimi

Wednesday 25 April 2007 12:43:55 pm

Hi Séb :)

What follows is what I tried and learn of my own experience.

Regarding the persistent_variable match conditions, it never happened to work. At least with me. It is related with the $module_result.[...].persistent_variable variable. Though, since eZp 3.7.3 (the version I tried it on), I didn't test it again.

Note that you can override any template call. That means this works also with <b>{include...}</b> statement.

Here is how i've been using it in my own website (http://www.starnab.com).

The <b>pagebody.tpl</b> is my default template that shows the main content of my page (article list for example) and the boxes on the left (you know, the ones with drag'n'drop enabled ;-p). For the sitemap of my site (http://www.starnab.com/plan-du-site), I did not need the boxes to show up. I needed to have a specific pagebody.tpl that had no right part.
So rather than having some messy "if" statements in my templates, I used this piece of override instead :

[plan-du-site_page_body]
Source=pagelayout/page_body.tpl
MatchFile=pagelayout/page_body/fullpage.tpl
Subdir=templates
Match[viewmode]=sitemap

I needed to make sure that the override applied only on the sitemap view since a sitemap is just a specific view of a node. If there was not this line, the override would have applied to my entire site which was not what I was aiming for.
This makes maintenance much more easier from my point of view with an easier template code to re-read.

And finally, I have never tried the view_offset so far. :)
It obviously has something to do with the $module_result.view_parameters.offset variable

Hope it helped.

A+

My blog : http://www.starnab.com/ezpublish / http://www.starnab.com/ / http://www.assiki-consulting.com
eZ Publish Freelance developper. Feel free to contact me +33 674 367 057
nabil at assiki d0t fr

Sébastien Morel

Thursday 26 April 2007 4:27:18 am

Hi,

Thanks for your explanation, for the persistent variable I have understood but, I don't see how write the condition:

Macth[persistent_MYVARIABLE]=VALUE

or what ?

For the viewmode it's ok for me in the pagelayout but in the documentation the conditions are present too in the source: node/view/*.tpl ... Why ?

And for the view_offset, the question is always opened ;)

Thanks
Sébastien

--
eZ c'est plus fort que toi !
http://www.ez-france.org
http://blog.plopix.net
@Novactive (http://www.novactive.com)

Sylvain Bannier

Friday 24 August 2007 12:13:39 pm

Hi,

for the "persistent_variable", here is some explanation :

http://ez.no/community/forum/developer/how_to_use_match_persistent_variable

http://www.smile.fr

Powered by eZ Publish™ CMS Open Source Web Content Management. Copyright © 1999-2014 eZ Systems AS (except where otherwise noted). All rights reserved.

eZ debug

Timing: Jan 18 2025 11:25:25
Script start
Timing: Jan 18 2025 11:25:25
Module start 'layout'
Timing: Jan 18 2025 11:25:25
Module start 'content'
Timing: Jan 18 2025 11:25:26
Module end 'content'
Timing: Jan 18 2025 11:25:26
Script end

Main resources:

Total runtime0.9349 sec
Peak memory usage4,096.0000 KB
Database Queries62

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0078 589.1797152.6406
Module start 'layout' 0.00780.0031 741.820339.4766
Module start 'content' 0.01090.9222 781.2969611.4063
Module end 'content' 0.93310.0017 1,392.703116.1250
Script end 0.9348  1,408.8281 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00310.3341160.0002
Check MTime0.00120.1336160.0001
Mysql Total
Database connection0.00200.217710.0020
Mysqli_queries0.847390.6367620.0137
Looping result0.00070.0778600.0000
Template Total0.870093.120.4350
Template load0.00200.216920.0010
Template processing0.868092.846020.4340
Template load and register function0.00020.018010.0002
states
state_id_array0.00330.357610.0033
state_identifier_array0.00710.758420.0035
Override
Cache load0.00180.1886470.0000
Sytem overhead
Fetch class attribute can translate value0.00120.130830.0004
Fetch class attribute name0.00140.153470.0002
XML
Image XML parsing0.00460.492630.0015
class_abstraction
Instantiating content class attribute0.00000.001780.0000
General
dbfile0.00430.4582270.0002
String conversion0.00000.000740.0000
Note: percentages do not add up to 100% because some accumulators overlap

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
4content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
4content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
13content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
6content/datatype/view/ezxmltags/line.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/line.tplEdit templateOverride template
5content/datatype/view/ezxmltags/literal.tpl<No override>extension/community/design/standard/templates/content/datatype/view/ezxmltags/literal.tplEdit templateOverride template
1print_pagelayout.tpl<No override>extension/community/design/community/templates/print_pagelayout.tplEdit templateOverride template
 Number of times templates used: 34
 Number of unique templates used: 7

Time used to render debug report: 0.0001 secs