Creación, mantenimiento y asistencia web

¿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. Veremos algunos ejemplos para aclararlo.

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 publicaciones y foros. ¡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);
?>

En el código anterior sustituye nombre-posicion por el que quieras emplear.

Después solo tenemos que crear uno o varíos módulos que queramos asignar a esta posición.

Ojo, el nombre que le has dado no va a aparecer en el desplegable de selección de posición, tienes que escribirlo y darle a intro.

Otro método, compartido por Valentín García en Joomlashack (en inglés). Es añadiendo el siguiente código:

<?php echo JHtml::_('content.prepare', '[loadposition nombre-posicion]'); ?>

Sustituye los corchetes ' [ ' por llaves ' { '.

Con este método hay que asegurarse de que el plugin de insertar módulos en artículos está publicado en Extensiones > Plugins. Se llama «Contenido - Cargar módulos» en español.

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

Mejora tu web desde hoy mismo

Escribe tu correo aquí debajo y te envío detalles que no debes pasar por alto en tu web, los fallos que yo he cometido para que tú no caigas en ellos y más.

Loading...