2011-09-16 32 views
1

我調整了File插件來列出所有文件夾,並在其中列出所有文件。pyrocms模板變量中的遍歷數組

的代碼是多還是萊這樣的:

$folders = assoc_array_prop($this->file_folders_m->get_all()); 
$counter = 1; 
foreach ($folders as $key => $folder) { 
$folder->index = str_pad($counter++, 2, '0', STR_PAD_LEFT); 
$this->file_m->where('folder_id', $folder->id); 
$files = $this->file_m->get_all(); 
$folder->files = assoc_array_prop($files); 
} 
return $folders; 

現在,事情是,我怎麼能訪問每個$文件夾 - >文件每個文件夾中的模板?這似乎並不工作:

{pyro:mymod:file_listing} 
    <div class="files_column"> 
    <h2><span class="files-index">&#123;index}</span> &#123;name}</h2> 
{pyro:files} 


<div class="file-item"> 

<span class="file-type">{id}</span> 

<div class="file-data"> 
<span>{filename}</span> 
<br/> 
<span class="file-links"> 
<a href="#">View</a> 
<a href="#">Download</a> 
</span> 

</div> 
</div> 
{/pyro:files} 


</div> 
{/pyro:mymod:file_listing} 

要澄清一下... {將文件}循環似乎工作正常,基於次我看到的數據出現的數量。問題是我似乎無法訪問它的屬性,如{文件名}。

感謝, 伊格納西奧

回答

1

我認爲你做錯了,是具有內煙火標籤第一件事{焦:文件}我敢肯定只會調用核心焦:文件的插件。

我做的事做穿越的形式,並沒有否則可能似乎與標籤是使用外層標籤的屬性,找到內標籤信息:

這樣的:

{pyro:movies:now_showing} 

<img src="{img_path}"/> 
<p>{pyro:movies:synopsis_snippet id="{movie_id}" length="100"}</p> 

{/pyro:movies:now_showing} 

所以我使用當前元素的movie_id從我的插件中獲取另一條數據。我的插件有一個now_showing和一個synopsis_snippet函數。

你可以做的是有一個列出文件夾和一個列出的文件夾是這樣的文件的方法:

{pyro:my_plugin:folders} 

{pyro:my_plugin:list_files_of_folder id="{attribute to lookup folder}"} 
{/pyro:my_plugin:list_files_of_folder} 

{/pyro:my_plugin:folders} 

希望這有助於。 :)