簡體   English   中英

遍歷MODx中的同上調用

[英]loop through ditto calls in MODx

我使用ditto來顯示特定父級的最后一個條目。 為此,我使用以下調用:

[!Ditto? &parents=`5` &orderBy=`createdon DESC` &display=`3`

&total=`4` &extenders=`summary` &tpl=`tpl_news` &truncLen=`160` &truncOffset=`20` !]

現在,我希望我的網站不斷遍歷特定范圍的父級ID,並每隔一秒鍾更改一次parents參數。

結果應該是同上調用所調用內容的“幻燈片放映”。

沒有特殊效果,沒有設計(模板提供的模板除外)。

有一個簡單的方法來管理這個嗎?

解:

得到它的工作!

我創建了此資源:

<div id="newsticker_vn">[!Ditto? &parents=`6` &orderBy=`createdon DESC` &display=`1`<br />&total=`4` &extenders=`summary` &tpl=`tpl_news` &truncLen=`160` &truncOffset=`20` !]</div>
<div id="newsticker_hp">[!Ditto? &parents=`5` &orderBy=`createdon DESC` &display=`1`<br />&total=`4` &extenders=`summary` &tpl=`tpl_news` &truncLen=`160` &truncOffset=`20` !]</div>
<div id="newsticker_ks">[!Ditto? &parents=`7` &orderBy=`createdon DESC` &display=`1`<br />&total=`4` &extenders=`summary` &tpl=`tpl_news` &truncLen=`160` &truncOffset=`20` !]</div>

並使用此腳本獲取所需的同上調用並循環執行它們:

<div id="newsticker"></div>
<script type="text/javascript">
    function execute() {
        $( "#newsticker" ).load("[~348~] #newsticker_vn").delay( 300 ).fadeIn( "slow" ).delay( 6000 ).fadeOut( "slow",execute2 );
    }
    function execute2() {
        $( "#newsticker" ).load("[~348~] #newsticker_ks").delay( 300 ).fadeIn( "slow" ).delay( 6000 ).fadeOut( "slow",execute3 );
    }
    function execute3() {
        $( "#newsticker" ).load("[~348~] #newsticker_hp").delay( 300 ).fadeIn( "slow" ).delay( 6000 ).fadeOut( "slow",execute );
    }
    execute();
</script>

我嘗試在一個函數中執行所有步驟,但由於某種原因,它在旋轉之前將每個ditto調用顯示了3次,不知道為什么。

謝謝您的幫助!

除非我不明白您要做什么,否則不更改模板是不可能的(還要假設您的模板不支持循環)。

從您的解釋看來,您似乎具有某種ajax功能。 您將需要在管理器中設置2個資源。

  1. 您的頁面使用您擁有的任何模板
  2. 您可以從另一個頁面獲取第一頁的內容

第一頁是您的常規頁。 第二個頁面使用“空白”模板,並且只有一個Ditto調用是隨機的。 您將必須修改第一個模板以使用一些Ajax代碼加載第二個頁面。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM