バックエンドでのリストのページ分割–カスタムリストサイズを追加する方法


9

Joomla 3.Xで[サイトの設定] > [ デフォルトのリスト制限]にカスタム値を追加するにはどうすればよいですか?

Iの値と、ドロップダウンメニューを見ることができる、5、10、15、20、25、30、50 100をそこ。

アイテム500を追加します。

選択することができますアンリミテッドは、あまりにも、容易に実現/追加?

回答:


6

バックエンドの設定では、リスト制限項目がページ分割されたビューに表示されている場合に表示される「すべて」オプションは表示されませんが、存在します。そのため、ページネーションオブジェクトの作成時に制限リストに追加されるため、構成に「無制限」オプションは必要ありません。

たとえば、このセレクタの下部に「すべて」オプションが表示されます。

Joomla 3.3ページネーション制限セレクター

私は直接的な方法を知りません。過去にコアをハッキングしたことがありますが、更新プログラムを適用すると問題が発生するため、お勧めしません。将来リリースされるJoomlaの更新によって上書きされない永続的な変更が必要だと思います。

これは単なる推測ですが、おそらくシステム/コンテンツプラグインを記述して、Joomlaの動作を2か所で変更する必要があります。最初com_configにJoomlaアプリケーションのフォーム(application.xml)、追加する値を追加する必要があります。フォーム要素list_limit。おそらく、onBeforeRenderまたはonContentPrepareFormトリガーを試すことから始めます。

次に、追加の値も表示するようにJPaginationオブジェクトを変更する必要があると思います。ページネーションオブジェクトが、私はあなたがキャプチャしたいと思われるイベントはよく分からない(少なくとも、バックエンドで)マネージャビューで使用されているように、私は調査したいonAfterInitialiseonAfterRouteonBeforeRenderonContentPrepareonContentBeforeDisplay

これらの最初の3つのトリガーは、アプリのライフの非常に早い段階ですが、必要な変更をどのくらい早く/遅くすることができるかわかりません。


これをコアで変更するためにトラッカーアイテムを上げるだけではどうですか?
Peter Wiseman、2014年

私はOPが今解決策を望んでいると仮定しています。これは確かに提案され、以前に提出されたものですが、githubへの移行以降はそうではありません。
クレイグ

2

あなたはこれを試すことができますが、それはコアハックであり、適切な方法ではありません(Joomla 3.3.0の場合):

  1. /administrator/components/com_config/models/forms/application.xmlファイルを開きます
  2. これを検索

        <field
        name="list_limit"
        type="list"
        default="20"
        label="COM_CONFIG_FIELD_DEFAULT_LIST_LIMIT_LABEL"
        description="COM_CONFIG_FIELD_DEFAULT_LIST_LIMIT_DESC"
        filter="integer">
        <option value="5">J5</option>
        <option value="10">J10</option>
        <option value="15">J15</option>
        <option value="20">J20</option>
        <option value="25">J25</option>
        <option value="30">J30</option>
        <option value="50">J50</option>
        <option value="100">J100</option>
    </field>
    
  3. このように独自の値を追加します

    <option value="500">J500</option>

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.