Forums / Developer / Fetching Specific Nodes - Best Practices?

Fetching Specific Nodes - Best Practices?

Author Message

Hal Gatewood

Monday 05 April 2010 8:03:37 am

I'm interested in how others fetch specific nodes in the template.

We currently have a custom ini that has an array like this:

[SpecificNodeIds]
Recipes=1355
RecipesTopRated=4674
Courses=1965
Meals=1945

Then when we want to fetch the node for a link in the template we do something like this:

{def $recipeNode = fetch( content, node, hash( node_id, ezini('SpecificNodeIds','Recipes','hal.ini')))}

The problem is that we have different node ids on each environment we work with or if an editor removes a node and recreates it then our ini is out of sync.

How do you handle these types of fetches? how can we make this more dynamic? fetch path? Any tips, suggestions or links are appreciated.

Thanks,
Hal Gatewood

Gaetano Giunta

Monday 05 April 2010 3:44:36 pm

Using the remote_id of anode makes it a little bit better, as remote_ids survive moving to a remote server via packaging

Principal Consultant International Business
Member of the Community Project Board

Nicolas Pastorino

Tuesday 06 April 2010 3:05:53 am

Hi,

Using remote IDs could do the deal indeed, you'd need to use either of these fetch functions :

  • content/node : http://ez.no/doc/ez_publish/technical_manual/4_x/reference/modules/content/fetch_functions/node
  • content/object : http://ez.no/doc/ez_publish/technical_manual/4_x/reference/modules/content/fetch_functions/object

And specify the remote_id parameter accordingly. Please note that in the first case above the object's remote_id is used, while the node's is used in the second case.

Cheers,

--
Nicolas Pastorino
Director Community - eZ
Member of the Community Project Board

eZ Publish Community on twitter: http://twitter.com/ezcommunity

t : http://twitter.com/jeanvoye
G+ : http://plus.tl/jeanvoye

eZ debug

Timing: Jan 29 2025 13:45:46
Script start
Timing: Jan 29 2025 13:45:46
Module start 'content'
Timing: Jan 29 2025 13:45:46
Module end 'content'
Timing: Jan 29 2025 13:45:46
Script end

Main resources:

Total runtime0.1444 sec
Peak memory usage2,048.0000 KB
Database Queries141

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0051 588.0313180.8281
Module start 'content' 0.00510.0098 768.859494.1016
Module end 'content' 0.01490.1294 862.9609523.1250
Script end 0.1444  1,386.0859 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00332.2752200.0002
Check MTime0.00120.8365200.0001
Mysql Total
Database connection0.00080.533110.0008
Mysqli_queries0.085259.00671410.0006
Looping result0.00110.75331390.0000
Template Total0.129089.310.1290
Template load0.00070.513110.0007
Template processing0.128388.823310.1283
Override
Cache load0.00050.345510.0005
Sytem overhead
Fetch class attribute can translate value0.00070.465410.0007
XML
Image XML parsing0.00030.184210.0003
General
dbfile0.019913.7519200.0010
String conversion0.00000.004030.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/community/design/community/stylesheets/ext/jquery.autocomplete.css
extension/community_design/design/suncana/stylesheets/scrollbars.css
extension/community_design/design/suncana/stylesheets/tabs.css
extension/community_design/design/suncana/stylesheets/roadmap.css
extension/community_design/design/suncana/stylesheets/content.css
extension/community_design/design/suncana/stylesheets/star-rating.css
extension/community_design/design/suncana/stylesheets/syntax_and_custom_tags.css
extension/community_design/design/suncana/stylesheets/buttons.css
extension/community_design/design/suncana/stylesheets/tweetbox.css
extension/community_design/design/suncana/stylesheets/jquery.fancybox-1.3.4.css
extension/bcsmoothgallery/design/standard/stylesheets/magnific-popup.css
extension/sevenx/design/simple/stylesheets/star_rating.css
extension/sevenx/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx/design/simple/stylesheets/main.v02.css
extension/sevenx/design/simple/stylesheets/main.v02.res.css
JS0extension/ezjscore/design/standard/lib/yui/3.17.2/build/yui/yui-min.js
extension/ezjscore/design/standard/javascript/jquery-3.7.0.min.js
extension/community_design/design/suncana/javascript/jquery.ui.core.min.js
extension/community_design/design/suncana/javascript/jquery.ui.widget.min.js
extension/community_design/design/suncana/javascript/jquery.easing.1.3.js
extension/community_design/design/suncana/javascript/jquery.ui.tabs.js
extension/community_design/design/suncana/javascript/jquery.hoverIntent.min.js
extension/community_design/design/suncana/javascript/jquery.popmenu.js
extension/community_design/design/suncana/javascript/jScrollPane.js
extension/community_design/design/suncana/javascript/jquery.mousewheel.js
extension/community_design/design/suncana/javascript/jquery.cycle.all.js
extension/sevenx/design/simple/javascript/jquery.scrollTo.js
extension/community_design/design/suncana/javascript/jquery.cookie.js
extension/community_design/design/suncana/javascript/ezstarrating_jquery.js
extension/community_design/design/suncana/javascript/jquery.initboxes.js
extension/community_design/design/suncana/javascript/app.js
extension/community_design/design/suncana/javascript/twitterwidget.js
extension/community_design/design/suncana/javascript/community.js
extension/community_design/design/suncana/javascript/roadmap.js
extension/community_design/design/suncana/javascript/ez.js
extension/community_design/design/suncana/javascript/ezshareevents.js
extension/sevenx/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 1
 Number of unique templates used: 1

Time used to render debug report: 0.0002 secs