Forums / Developer / Fetching nodes by attribute content

Fetching nodes by attribute content

Author Message

Sao Tavi

Tuesday 05 July 2011 9:24:39 am

This should be simple, but I cannot find the function.

So, I need to fetch all the nodes of a specific class, that descend from a specific node and that have some attribute content equal to some value. It should be something like a search with these criteria.

Steven E. Bailey

Tuesday 05 July 2011 3:07:34 pm

API or template?

If it's template you have to do something like this:

 {def $items=fetch( content, tree, hash( parent_node_id, $topNodeID, attribute_filter, array( 'and', array( $identifier,'like',$char.'*'),array( 'profile/staff ,'!=', 2 ), array( 'profile/staff ,'!=', 0 )) ))}

*Not tested - variables changed to match the php code - no idea if this will work in this form - but it should give you the idea.

If it's the API you have to do something like this:

$attributefilter[]= 'and';
 $attributefilter[]= array( $identifier,'like',mysql_escape_string($char).'*');
 $attributefilter[]= array( 'profile/staff ,'!=', 2 );
 $attributefilter[]= array( 'profile/stafff' ,'!=', 0 );

$params['AttributeFilter']              = ($attributefilter);

$output = eZContentObjectTreeNode::subTreeByNodeID( $params, $topNodeID );

Certified eZPublish developer
http://ez.no/certification/verify/396111

Available for ezpublish troubleshooting, hosting and custom extension development: http://www.leidentech.com

Marko Žmak

Thursday 07 July 2011 6:17:54 am

Sao, for the complete documentation of the templat fetch function look here:

As for the "documentation" for the API you should inspect the code of subTreeByNodeID() function:

Also, note that attribute filtering can have an impact on site performance (it produces complex and consuming sql queries), and should be used with caution.

--
Nothing is impossible. Not if you can imagine it!

Hubert Farnsworth

eZ debug

Timing: Jan 17 2025 21:00:20
Script start
Timing: Jan 17 2025 21:00:20
Module start 'content'
Timing: Jan 17 2025 21:00:21
Module end 'content'
Timing: Jan 17 2025 21:00:21
Script end

Main resources:

Total runtime1.0790 sec
Peak memory usage4,096.0000 KB
Database Queries197

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0050 596.0703180.8359
Module start 'content' 0.00500.9456 776.9063634.7734
Module end 'content' 0.95060.1284 1,411.6797332.9766
Script end 1.0790  1,744.6563 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00360.3359210.0002
Check MTime0.00140.1268210.0001
Mysql Total
Database connection0.00070.064810.0007
Mysqli_queries1.004693.10271970.0051
Looping result0.00210.19141950.0000
Template Total1.056297.920.5281
Template load0.00170.154620.0008
Template processing1.054597.724520.5272
Template load and register function0.00020.015210.0002
states
state_id_array0.00070.066610.0007
state_identifier_array0.00090.082120.0004
Override
Cache load0.00140.1275240.0001
Sytem overhead
Fetch class attribute can translate value0.00200.183540.0005
Fetch class attribute name0.00140.127050.0003
XML
Image XML parsing0.00160.144440.0004
class_abstraction
Instantiating content class attribute0.00000.001050.0000
General
dbfile0.00480.4461360.0001
String conversion0.00000.000530.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
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
3content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
6content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
2content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
2content/datatype/view/ezxmltags/literal.tpl<No override>extension/community/design/standard/templates/content/datatype/view/ezxmltags/literal.tplEdit templateOverride template
2content/datatype/view/ezxmltags/link.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/link.tplEdit templateOverride template
2content/datatype/view/ezxmltags/li.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/li.tplEdit templateOverride template
2content/datatype/view/ezxmltags/ul.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/ul.tplEdit templateOverride template
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 21
 Number of unique templates used: 9

Time used to render debug report: 0.0002 secs