it-swarm.dev

¿Por qué las posiciones de mi plantilla se convierten en Posición personalizada en el Administrador de módulos?

He creado la posición de mis módulos en mi plantilla y también he declarado en el archivo XML. Ahora en el administrador de módulos cuando elijo una de mis posiciones de módulo y guardo el módulo, se muestra como una Posición personalizada en el campo de selección de Posiciones de módulo.

Actualizar:

No estoy usando ningún marco. Solo plantilla joomla casual. Las posiciones de los módulos se definen en el XML y en los archivos de bloque de la plantilla (por lo que no deben considerarse como posiciones personalizadas) y se muestran normalmente en el filtro de Posición del módulo en el Administrador de módulos.

Pero después de guardar un módulo, lo agregará también bajo el grupo de Posiciones personalizadas en el filtro, terminando con la misma posición del módulo que existe dos veces, 1 bajo las posiciones de mytemplate y 1 bajo las posiciones personalizadas.

Hace las cosas un poco confusas.

Actualización 2

Me acabo de dar cuenta de que esto también está sucediendo de forma predeterminada, incluso con la plantilla protostar, y probablemente también con otras plantillas. Después de asignar un módulo a la posición, esta posición estará disponible también en las Posiciones del módulo personalizado. ¿No es este el caso también para alguien más?

1
FFrewin
  1. Pienso que el <optgroup> la etiqueta debe cambiarse de "Posición personalizada" a "Ya utilizada" o "Posiciones seleccionadas" o algo así. Para hacerlo, crea o abre el archivo

    /administrator/language/overrides/en-GB.override.ini
    

    y agregue esta línea:

    COM_MODULES_CUSTOM_POSITION="Already Used"
    
  2. También hay una forma sucia de deshacerse del optgroup comentando esta línea

    $templateGroups[$customGroupText] = ModulesHelper::createOptionGroup($customGroupText, $customPositions);
    

    en

    /administrator/components/com_modules/helpers/html/modules.php
    

    y elija nombres de posición únicos en el archivo XML de su plantilla.

1
Farahmand

Intente también definir las posiciones de su módulo nombrándolas en el archivo de idioma del sistema de plantillas, es decir

es-GB.tpl_yourtemplatename.sys.ini

Nombre cada posición de esta manera, donde en este ejemplo las posiciones del módulo son encabezado, pancarta y pan rallado y su nombre de plantilla es el nombre de su plantilla;

TPL_YOURTEMPLATENAME_POSITION_HEADER="Header"
TPL_YOURTEMPLATENAME_BANNER="Banner"
TPL_YOURTEMPLATENAME_BREADCRUMBS="Breadcrumbs" 
1
Seth Warburton