Forums / Setup & design / How to do this fetch .. please ?!

How to do this fetch .. please ?!

Author Message

Marvix Marx

Tuesday 17 June 2008 10:52:44 am

Hi ..

I have multi folders, each folder have articles ..
I need to list latest articles from those folders based on publish date ..

what am using now

{let  		CentersNodes=$block.valid_nodes  $ArtArray=array()}

	{foreach $CentersNodes as $Center}
    	
        {def   $Articles=fetch( 'content', 'list', hash( 'parent_node_id', $Center.node_id , 
        																	  'depth', 10, 
                                                                              'class_filter_type',  'include',
                                                                              'class_filter_array', array(16,17),
                                                                              limit , 1
                                                                                 ) )  
        }
		
        
		{foreach $Articles as $Article}
        	<div id="article-list">
            {if $Article.data_map.image.content.is_valid}
            <div id="list-image">{attribute_view_gui attribute=$Article.data_map.image image_class=small}</div>
			{/if}
            <a href={$Article.url_alias|ezurl} id="link1"><h1 id="link1">{$Article.name|wash}</h1></a>
            {*<div id="date">{$Article.object.published|datetime('custom', '%d.%m.%y')}</div> <div id="clearboth"></div>*}
            <div id="article-content">{attribute_view_gui attribute=$Article.data_map.intro maxlength=200}</div>
            
            <div id="article-links"><a href={$Article.url_alias|ezurl}>moreد</a></div>
           </div> 
        {/foreach}

      
        {undef $Articles}        


    
    {/foreach}
{/let}

from the block admin I select the folders for this folder.

this for ez4.

Thanks.

Tuesday 17 June 2008 11:14:58 am

Hi, you should be able to just add the "sort_by" parameter:

'sort_by', array(array('published', false() ) )

Marvix Marx

Tuesday 17 June 2008 11:54:39 am

Peter .. this too easy .. :)

this will do the sort based on the folders publish date .. not the articles publish date :(

Marvix Marx

Tuesday 17 June 2008 12:20:21 pm

I think I found it ..


{let  		CentersNodes=$block.valid_nodes   ArticlesArray=array() }



	{foreach $CentersNodes as $Center}
		{set $ArticlesArray = $ArticlesArray|append( $Center.node_id  )}
    {/foreach}

        {def   $Articles=fetch( 'content', 'list', hash( 'parent_node_id', $ArticlesArray , 
        																	  'depth', 10, 
                                                                              'class_filter_type',  'include',
                                                                              'class_filter_array', array(16,17),
                                                                              'sort_by', array( array( 'published', false() ) ),
                                                                              limit , 10
                                                                                 ) )  
        	
        		
        }

		{foreach $Articles as $Article}
        	
        	<div id="article-list">
            {if $Article.data_map.image.content.is_valid}
            <div id="list-image">{attribute_view_gui attribute=$Article.data_map.image image_class=small}</div>
			{/if}
            <a href={$Article.url_alias|ezurl} id="link1"><h1 id="link1">{$Article.name|wash}</h1></a>
            {*<div id="date">{$Article.object.published|datetime('custom', '%d.%m.%y')}</div> <div id="clearboth"></div>*}
            <div id="article-content">{attribute_view_gui attribute=$Article.data_map.intro maxlength=200}</div>
            
            <div id="article-links"><a href={$Article.url_alias|ezurl}>more</a></div>
           </div> 
        {/foreach}



{/let}

Can you give better code ?

thx

Patrice DUCLAUD

Wednesday 18 June 2008 1:42:07 am

Hi,

You can perhaps try something like this ...

fetch ('content', 'tree', hash( 'parent_node_id', parent_node_of_your_folders,
..... with your other parameters)

Patrice

Marvix Marx

Wednesday 18 June 2008 9:15:29 am

The folders located under the root folders with another folders ... if used what you saying will list all the folders!