it-swarm-id.com

Paginasi daftar di backend - bagaimana cara menambahkan ukuran daftar khusus?

Bagaimana saya bisa menambahkan nilai khusus ke Pengaturan Situs> Batas Daftar Default di Joomla 3.X?

Saya dapat melihat menu dropdown dengan nilai 5, 10, 15, 20, 25, 30, 50, 1 di sana.

Saya ingin menambahkan item 5.

Dapat menjadi pilihan Tidak terbatas ditambahkan/diimplementasikan dengan mudah juga?

9
miroxlav

Pengaturan backend tidak menunjukkan opsi "Semua" yang disajikan ketika item Batas Daftar ditampilkan dalam tampilan paginasi tetapi ada. Jadi, Anda seharusnya tidak memerlukan opsi "Tidak Terbatas" dalam konfigurasi karena ditambahkan ke daftar batas ketika objek pagination dibuat.

misalnya Anda dapat melihat opsi "Semua" di bagian bawah pemilih ini.

Joomla 3.3 Pagination Limit Selector

Saya tidak mengetahui cara langsung, di masa lalu kami telah meretas inti tetapi kami tidak menyarankan karena masalah ini menyebabkan ketika Anda menerapkan pembaruan di jalur. Saya kira Anda menginginkan modifikasi yang gigih yang tidak akan ditulis oleh pembaruan Joomla apa pun yang akan dirilis di masa mendatang.

Ini hanya spekulasi, tetapi, Anda mungkin perlu menulis plugin sistem/konten untuk mengubah perilaku Joomla di dua tempat, pertama com_config formulir untuk aplikasi Joomla (application.xml), Anda perlu menambahkan nilai tambahan yang Anda inginkan ke elemen bentuk list_limit. Saya mungkin akan memulai dengan mencoba pemicu onBeforeRender atau onContentPrepareForm.

Kemudian, saya bayangkan Anda perlu memodifikasi objek JPagination sehingga juga menunjukkan nilai tambahan Anda. Karena objek pagination digunakan dalam tampilan manajer (setidaknya di backend) Saya tidak yakin acara mana yang ingin Anda tangkap, saya akan selidiki onAfterInitialise, onAfterRoute, onBeforeRender, onContentPrepare dan onContentBeforeDisplay.

Tiga pemicu pertama sangat awal dalam kehidupan aplikasi, tapi saya tidak yakin seberapa awal/terlambat Anda dapat membuat perubahan yang Anda butuhkan.

6
Craig

Anda dapat mencoba ini, tetapi ini adalah peretasan inti dan bukan cara yang tepat (untuk Joomla 3.3.0):

  1. Buka file /administrator/components/com_config/models/forms/application.xml
  2. Cari ini

        <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. Tambahkan nilai Anda sendiri seperti ini

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

2
Joomla Agency