Creación, mantenimiento y asistencia web

Crear una posición para módulos en un componente de Joomla

¿Cuándo nos puede venir bien crear una posición para módulos dentro de un componente?

En ocasiones en las que queremos introducir un módulo siempre en el mismo lugar dentro de la vista de un componente.

He decidido escribir este artículo porque el siguiente método me ha venido bien en diversas ocasiones y para llegar a él recuerdo haber tenido que leer en diferentes foros, en más de una ocasión ¡Muy agradecido a las personas que se preocupan de dar respuestas en foros!

Algunos ejemplos de aplicación en sitios web reales:

  • Insertar un anuncio bajo la imagen principal de cada uno de los artículos. Este anuncio se configura independientemente en un módulo.
  • Insertar un texto con una llamada a la acción concreta antes de mostrar los campos personalizados de cada artículo.
  • Mostrar contenido concreto bajo cada artículo, antes de los plugins (comentarios, compartir en redes, etc).

De esta forma nos resulta indiferente que sean 10 o 10.000 artículos, no tenemos que editar cada uno de ellos.

Hay que insertar el siguiente código en la vista del componente, en el punto en el que queramos insertar la posición para módulos. Hazlo en una sobrescritura en la plantilla, no directamente en el código de la vista del componente.

<?php // Module position
    $position_name = 'nombre-posicion';
    $attrs = array('style'=>'html5');
    $renderer = JFactory::getDocument()->loadRenderer('modules');
    echo $renderer->render($position_name, $attrs, null);
?>

Después solo tenemos que crear el o los módulos que queramos asignar a esta posición. Ojo, no va a aparecer en el desplegable de selección de posición, tienes que escribirla y darle a intro.

Otro método, compartido por Valentín García en Joomlashack: How to Add a Joomla Module Position Inside Any Component. Es añadiendo este código:

<?php echo JHtml::_('content.prepare', ''); ?>

Con este método hay que asegurarse de que el plugin de insertar módulos en artículos está publicado en Extensiones > Plugins.

Si te ha resultado útil, tienes alguna duda o quieres compartir otro método, indícalo en con un comentario más abajo, por favor.

Creación o renovación de tu sitio web, la sede online sobre la que tengas control total
Mejora continua de tu sitio web; no pierdas tiempo con los aspectos técnicos

Formación en desarrollo web: cursos y ponencias presenciales así como formación online

Apúntate y recibe gratis directamente en tu buzón de correo la Guía rápida de iniciación a Joomla.

Además, cada cierto tiempo envío trucos y novedades para aplicar a tu sitio web.

No me gusta el correo basura. Protejo tus datos.