Разбиение списков на бэкэнд - как добавить размер пользовательского списка?

Как добавить пользовательское значение в Настройки сайта > Ограничение списка по умолчанию в Joomla 3.X?

Я вижу выпадающее меню со значениями 5, 10, 15, 20, 25, 30, 50, 100 .

Я хотел бы добавить элемент 500 .

Может ли быть выбран вариант Неограниченный , добавленный /реализованный?

9 голосов | спросил miroxlav 9 Mayam14 2014, 01:20:27

2 ответа


6

В настройке бэкэнд не отображается опция «Все», которая отображается, когда элемент «Лимит списка» отображается в виде с разбивкой по страницам, но он существует. Таким образом, вам не нужно использовать параметр «Без ограничений» в конфигурации, поскольку он добавляется в лимит-лист при создании объекта разбиения на страницы.

например. вы можете увидеть опцию «Все» в нижней части этого селектора.

Joomla 3.3 Селектор пределов разбиения на страницы

Я не знаю прямого пути, в прошлом мы взломали ядро, но мы не рекомендуем, чтобы из-за проблем, возникающих при применении обновлений вниз. Я предполагаю, что вы хотите постоянную модификацию, которая не будет переписана никакими обновлениями Joomla, которые будут выпущены в будущем.

Это просто предположение, но вам, вероятно, потребуется написать плагин system /content для изменения поведения Joomla в двух местах, сначала в форме com_config для приложения Joomla (приложение application.xml), вам нужно будет добавить дополнительные значения, которые вы хотите добавить в элемент формы list_limit. Я, вероятно, начинал бы с помощью триггеров onBeforeRender или onContentPrepareForm.

Тогда, я думаю, вам нужно будет изменить объект JPagination, чтобы он также показывал ваши дополнительные значения. Поскольку объекты с разбивкой на страницы используются в представлении диспетчера (по крайней мере, в бэкэнд), я не уверен, какое событие вы хотите захватить, я бы исследовал onAfterInitialise, onAfterRoute, onBeforeRender, onContentPrepare и onContentBeforeDisplay.

Те первые три триггера очень рано в жизни приложений, но я не уверен, как рано или поздно вы сможете внести необходимые изменения.

ответил Craig 9 Mayam14 2014, 05:17:42
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>

ответил Joomla Agency 9 Mayam14 2014, 11:48:25

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132