3

joomlaでajaxベースのページネーションシステムを実装しようとしています。誰もこれを試したことがありますか?ポインタや提案はありますか?

joomla では、「get」を使用して URL から移動することはできません。これにより、ほぼすべてのページ付けクラスが機能することが禁止されます。これは、ほとんどが (get を介して) URL の変更を使用するためです。したがって、私の代替案は、投稿または ajax ページネーションのいずれかであり、ajax は達成するのがはるかに簡単で、見栄えの良い結果が得られるようです。

私が試したチュートリアルはどれもうまくいきませんでした。それが本当に重要かどうかはわかりませんが、MySQLi を使用しています。

4

2 に答える 2

2

前の回答で提案された AddFullAJAX プラグインは、デフォルトでサイトを "fullajax'd" にしようとします。しかし、これは簡単に上書きできます。ここでは、このプラグインを構成して AJAX (正しくは AHAH ;)) ページネーションを有効にするための簡単な手順をいくつか示します。

  1. 「Enable Positions update」を「Using fullajax_tmpl」に設定します (このテンプレートのインストールも忘れないでください)。
  2. 「Content CSS id」では、コンテンツを配置した場所にコンテンツ ID を設定する必要があります
  3. 「FullAjaxのパラメーター」フィールドの「詳細オプション」で、すべてを削除し、次のコードを配置する必要があります。
function wrapPager(){
  $$('div.pagination a').addEvent('click', function(){
    hax({url:this.href, id:fullAjaxId,nohistory:1, onload:wrapPager});
    return false;
 });
}
window.addEvent('domready', function() {
  wrapPager()
})

プラグインなしでも同じことができます。テンプレートにFullAJAXライブラリをダウンロードして接続するだけです。次に、次の例を使用します。

function wrapPager(){
  $$('div.pagination a').addEvent('click', function(){
    var url = this.href + '&tmpl=component'
    hax({url:url, id:'id-of-block-where-a-content',nohistory:1, onload:wrapPager});
    return false;
 });
}
window.addEvent('domready', function() {
  wrapPager()
})

詳細についてhax()は、wiki ページを参照してください。

于 2012-11-18T17:23:53.560 に答える
1

次に、コンポーネント/プラグインを作成し、AJAX が使用するテンプレートを編集する必要があると思います...これを達成するのは非常に難しく、多くの時間を消費するため、Joomla 2.5 を使用して、この優れたプラグインを使用しないでください: http: //extensions.joomla.org/extensions/core-enhancements/performance/scripts/13293

ここに小さなデモがあります: http://getsite.org.ua/jdemo/

PS : 使用されているモジュール/コンポーネントには互換性の問題がある可能性があるため、それらを検索/解決するのはあなた次第です :)

于 2012-06-04T21:34:44.943 に答える