it-swarm-es.tech

Paginación de listas en el backend: ¿cómo agregar un tamaño de lista personalizado?

¿Cómo puedo agregar un valor personalizado a Configuración del sitio> Límite de lista predeterminado en Joomla 3.X?

Puedo ver el menú desplegable con valores 5, 10, 15, 20, 25, 30, 50, 1 allí.

Me gustaría agregar un elemento 5.

¿Puede ser la opción Ilimitado agregado/implementado fácilmente también?

9
miroxlav

La configuración de back-end no muestra la opción "Todos" que se presenta cuando se muestra un elemento de Límite de lista en la vista paginada, pero existe. Por lo tanto, no debería necesitar una opción "Ilimitada" en la configuración, ya que se agrega a la lista de límites cuando se crea el objeto de paginación.

p.ej. puede ver la opción "Todos" en la parte inferior de este selector.

Joomla 3.3 Pagination Limit Selector

No conozco una forma directa, en el pasado hemos pirateado el núcleo, pero no lo recomendamos debido a los problemas que esto causa cuando aplica las actualizaciones. Supongo que desea una modificación persistente que no se sobrescriba con las actualizaciones de Joomla que se lanzarán en el futuro.

Esto es solo especulación, pero probablemente necesitará escribir un complemento de sistema/contenido para modificar el comportamiento de Joomla en dos lugares, primero el com_config formulario para la aplicación Joomla (application.xml), deberá agregar los valores adicionales que desee al elemento de formulario list_limit. Probablemente comenzaría probando los activadores onBeforeRender o onContentPrepareForm.

Luego, imagino que necesitará modificar el objeto JPagination para que también muestre sus valores adicionales. Como los objetos de paginación se usan en la vista de administrador (al menos en el back-end), no estoy seguro de qué evento desea capturar, investigaría onAfterInitialise, onAfterRoute, onBeforeRender, onContentPrepare y onContentBeforeDisplay.

Esos primeros tres desencadenantes son muy tempranos en la vida de las aplicaciones, pero no estoy seguro de qué tan temprano/tarde puede hacer los cambios que necesita.

6
Craig

Puedes probar esto, pero es un truco básico y no es la forma correcta (para Joomla 3.3.0):

  1. Abra el archivo /administrator/components/com_config/models/forms/application.xml
  2. Busque esto

        <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. Agregue sus propios valores como este

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

2
Joomla Agency