Módulo para Header Dinámico en Joomla!
En este tutorial veremos cómo crear un módulo en Joomla!; este sencillo módulo nos permitirá tener una imagen dependiente o relacionada con la sección de la página que estamos viendo. Por ejemplo, si queremos tener una imagen (como header) distinta de acuerdo a las secciones de nuestro menú.
Joomla! es un administrador de contenido que permite crear y gestionar sitios dinámicos. En Joomla! podemos programar módulos para extender la funcionalidad de nuestro sitio. La creación de módulos (comparada con la creación de componentes) es fácil de implementar y no tan compleja.
Para este tutorial usaremos la versión 1.0.15 de Joomla!. En esta ocasión no pondré un ejemplo o demostración del ejercicio ya que tendría que instalar Joomla! en algún servidor. Sin embargo, no olvides bajar los archivos del tutorial que se encuentran al final de esta entrada.
Tutorial
Un módulo en Joomla! está formado básicamente por dos archivos principales, un archivo XML y un archivo PHP. El nombre de estos archivos deberá ser el mismo, y el nombre de todos los módulos que programes deberá comenzar con el prefijo mod_. El archivo XML contiene información sobre el nombre del módulo, autor, archivos que conforman el módulo, parámetros que recibe, etc; y es usado como archivo de configuración para el módulo. Por otro lado, en el archivo PHP deberá estar la programación de las tareas que realizará el módulo.
Estos archivos deberán estar dentro de un ZIP y se podrán subir desde el administrador de nuestro sitio en Joomla!.
Primero crearemos un directorio en nuestro disco duro llamado mod_cambiarimagen. Dentro de este directorio crea un nuevo archivo XML con el nombre de mod_cambiarimagen.xml. Escribe en ese archivo la siguiente información:
-
<?xml version="1.0" encoding="iso-8859-1"?>
-
<mosinstall type="module" version="1.0.0">
-
<name>Cambiar Imagen</name>
-
<author>Carla Macías</author>
-
<creationDate>Abril 2008</creationDate>
-
<copyright>(C) 2008 Código Metrópoli</copyright>
-
<license>http://creativecommons.org/licenses/by-nc-sa/2.5/mx/</license>
-
<authorEmail>contacto@codigometropoli.com</authorEmail>
-
<authorUrl>www.codigometropoli.com</authorUrl>
-
<version>1.0.0</version>
-
<description>Este módulo muestra una imagen de header distinta de acuerdo a la opción de nuestro menú principal</description>
-
<files>
-
<filename module="mod_cambiarimagen">mod_cambiarimagen.php</filename>
-
</files>
-
<params>
-
<param name="imagen_default" type="text" default="" label="Imagen por default" description="Imagen por default del header que aparecerá en las secciones de nuestro menú principal" />
-
</params>
-
</mosinstall>
Vamos a explicar brevemente a qué se refiere cada tag:
- name: El nombre que pongas dentro de este tag es el que aparecerá en la lista de módulos que tiene tu sitio; por lo tanto, te sirve para identificar el módulo con respecto a los demás.
- author: Nombre del autor del módulo.
- creationDate: Fecha de creación del módulo.
- copyright: Información sobre los derechos reservados.
- license: Tipo de licencia sobre el uso del módulo.
- authorEmail: Correo electrónico del autor.
- authorUrl: Página web del autor.
- version: Versión del módulo.
- description: Breve descripción sobre el módulo.
Dentro de la sección de archivos (files) anotaremos la lista de archivos que conforman el módulo (que son utilizados por el módulo). En este caso, el módulo es mod_cambiarimagen (module="mod_cambiarimagen") y el archivo que utiliza es mod_cambiarimagen.php.
Ahora pasamos a la sección de parámetros (params). Esta parte es muy importante ya que nos permitirá especificar, dentro del administrador de módulos, los valores que deberá recibir el módulo. Vamos con un ejemplo, suponiendo que queremos hacer un módulo para mostrar la fecha de hoy. Al programar el módulo podríamos especificar que la fecha se mostrara con un cierto formato (Por ejemplo: dd/mm/AAAA). Si sólo requerimos ese formato, entonces no será necesario pasarle parámetro alguno. Por otra lado, suponiendo que queremos tener dos opciones de formato (dd/mm/AAAA y AAAA-mm-dd), sería conveniente especificar un parámetro (Ej. con un botón de radio especificar cuál de los formatos vamos a usar) para que el módulo entienda en qué formato deberá mostrar la fecha. De esta forma, nos evitaríamos estar haciendo modificaciones directamente sobre el código del módulo.
Los tipos de parámetros que existen son:
- imagelist: Muestra una lista de imágenes
- list: ComboBox
- radio: Botones de Radio
- spacer: Muestra una regla horizontal en HTML
- text: Campo de texto
- textarea: Área de texto (es más grande que el campo de texto)
- mos_category: Muestra un ComboBox con la lista de las categorías que tenemos en Joomla!
- mos_menu: Muestra un ComboBox con la lista de los elementos de nuestro menú en Joomla!
- mos_section: Muestra un ComboBox con la lista de las secciones que tenemos dadas de alta en Jooma!
Para nuestro módulo únicamente necesitamos un parámetro de tipo text. El parámetro imagen_default es un campo de texto donde el usuario escribirá la liga a una imagen que servirá como imagen por default en caso de que no exista imagen para una sección en específico.
Hemos terminado con la explicación del archivo XML. Ahora haremos la programación del archivo mod_cambiarimagen.php. Crea un nuevo archivo PHP, guárdalo en el mismo directorio en donde está el archivo XML y ponle de nombre mod_cambiarimagen.php.
Recuerda que dentro del administrador, en la sección de módulos del sitio, el usuario puede establecer el valor de cada uno de los parámetros establecidos en el archivo XML (en nuestro caso solamente utilizamos un parámetro). Para poder obtener dicho valor en nuestro archivo PHP usamos la siguiente instrucción:
-
$params->get( 'imagen_default', '' );
¿Cómo podemos crear una imagen distinta para cada sección?
Muy fácil. Cada sección en Joomla! es diferenciada por un ID. Cada una de las imágenes de nuestro header pueden tener un nombre en común anidado al número de sección. De esta forma, suponiendo que tenemos la sección "Nuestros clientes" cuyo id es 64, su imagen de header podría ser header_related_64.jpg. La imagen por default y cada una de las imágenes de nuestras secciones deberás guardarlas en una carpeta llamada images en el directorio raíz donde está instalado Joomla! (En donde se encuentran los archivos configuration.php, pathway.php, offline.php, etc.).
¿Cómo podemos saber el ID de cada una de nuestras secciones?
Más fácil aún. En el administrador de nuestro sitio, en la parte de administrador de Menú (Menú Manager, Menu -> mainmenu) tenemos una lista de las secciones de nuestro menú; dentro de esta lista está una columna de nombre Itemid. Esta columna nos indica el ID de cada una de las secciones de nuestro menú.

¿Cómo podemos obtener el número de ID dentro del código de nuestro módulo?
Este ID podemos obtenerlo con la siguiente instrucción:
¿Qué pasa si el administrador no subió una imagen de X categoría?
Para eso utilizaremos la función file_exists de PHP:
Si esta función nos regresa el valor de false (no existe imagen) mostraremos la imagen que el usuario puso por default en el administrador.
El código completo de mod_cambiarimagen.php es:
-
// no direct access
-
-
$default_image = 'images/' . $params->get( 'imagen_default', '' );
-
$imagen = 'images/header_related_' . $cid . '.png';
-
-
echo '<a href="index.html" target="_self"><img src="' . $mosConfig_live_site . '/' . $imagen . '" border="0" alt="" /></a>';
-
else
-
echo '<a href="index.html" target="_self"><img src="' . $mosConfig_live_site . '/' . $default_image . '" border="0" alt="" /></a>';
Cuando tengas los dos archivos terminados, adjúntalos en un zip con el nombre mod_cambiarimagen.zip. Ingresa a tu administrador y haz click en el menú Installers -> Modules.
Donde dice "Install new Modules" haz click en el botón Examinar..., selecciona el zip de tu módulo y haz click en el botón "Upload File & Install". Si todo sale bien te mostrará el mensaje de Success.
Ahora ve al menú Modules -> Site Modules. Al hacer click en el nombre del módulo que acabamos de crear (Cambiar Imagen) verás las propiedades del módulo y los parámetros que recibe.

En el campo de texto del parámetro "Imagen por default" escribe header_default.jpg o similar y haz click en el botón Save. No olvides subir al directorio images esta imagen que servirá como imagen por defecto.
La posición que especifíques para este módulo depende de ti, asegúrate de que el espacio sea suficiente para el tamaño de tus imágenes. Recuerda que puedes crear nuevas posiciones dentro del administrador de plantillas (Site -> Template Manager -> Module Positions).
Si te gustó esta entrada anímate a escribir un comentario o suscribirte al feed y obtener los artículos futuros en tu lector de feeds.
Comentarios
Hola Javier,
Gracias por tus felicitaciones.
Me parece que los temas rhuk_solarflare_ii y madeyourweb no utilizan la posición header; es decir, no tienen la instrucción de PHP para cargar el módulo que se encuentra en la posición header. Para probar lo anterior busca el archivo index.php en la carpeta del template rhuk_solarflare_ii. A ese archivo agrégale la instrucción:
-
<?php mosLoadModules ( 'header' ); ?>
inmediatamente después del tag:
.
Si todo sale bien la imagen se mostrará.
Te recomiendo que, si estás creando o tienes un tema hecho por ti, añadas una nueva posición en el administrador de Joomla! y en el index.php de tu tema indiques esta nueva posición con la instrucción de PHP que te puse más arriba. De esta forma, podrás jugar con los divs y la hoja de estilos de tu template para posicionar y mostrar tu header como mejor te guste.
Saludos.
Muchas gracias por esta explicación tan clara y directa....
Me queda absolutamente claro como crear un módulo con tu ejemplo.
Muchas gracias por la info te explicas genial, y yo aqui, a las tantas de la mañ intentando hacer una chulada y que no sale... Dada tu sabiduria, Carla, te pregunto en Joomla!: es posible poner un archivo flash en la cabecera y encima tener una imagen y unos enlaces? el caso es q consigo insertar la cabecera (jpg) y debajo el flash en la posicion en cuestion, mi intencion es poner el flash en su lugar. Alguna idea o recomendacion?
Gracias de antemano
Hola Yos,
No comprendí tu pregunta. No entiendo lo de poner el archivo Flash de cabecera y encima tener una imagen y unos enlaces.
¿Tendrás algún ejemplo?
Saludos.
ok a ve si me explico mejor, tengo un banner en jpg, "encima" tiene el menu de la pagina "inicio, tu casa..." y quiero cambiar el banner por uno en flash. pero no logro poner el menu "encima" del banner en flash.
espero que se me entienda mejor gracias de nuevo carla
Hola Yos,
Es que en sí en una página no puedes colocar algo encima de un componente de Flash. ¿Por qué no haces todo en Flash (jpg + menú de "inicio, tu casa, etc."?
Saludos.
Hola, no he podido insertar un archivo flash (swf) en vez del header, cabezera o banner que tiene por defecto muchas d elas plantillas de Joomla, pero no he podido.
Porfavor ayudenme, que he visitado ya muchas paginas, y no he dado con la solucion.
Tengo joomla 1.5. Funciona ahi?
Lo he instalado pero luego no se donde deberia alojar las otras imagenes, o mas bien dicho, con que nombre deberian estar....gracias desde ya....
Hola Claudio,
Desconozco por completo si funcionará en Joomla! 1.5
Como menciono en el tutorial, las imágenes debes almacenarlas en el directorio images de Joomla!. Tus imágenes deben llamarse header_related_id.png donde id es el itemid de cada elemento de tu menú (ese itemid puedes verlo en el Menú Manager de Joomla!). Claro, es posible que tus imágenes sean jpg, si es así puedes cambiarlo en la línea 6 del código de mod_cambiarimagen.php.
Otra cosa que debes saber es que puedes especificar una imagen por default que es la que se mostrará en caso de que no exista una imagen para la opción seleccionada (suponiendo que se te haya olvidado o subirla o bien que no requieres una imagen en especial); esta imagen por default debes especificarla en el editor de los módulos del sitio.
Saludos.
Tengo un problema con un modulo que se encuentra en el header.(son recortes hechos de sector iz y derecho de la pagina)
Cuamdo lo coloco color blanco se lo ve perfecto pero cuando lo cambio a otro color aparece un recorte que hace que la pagina no este bien .¿Por que pasara esto si no modifico el tamaño de la imagen , solo el color?
El modulo se llama logo. Tipo mod-custom
Mariana:
No entendí nada.
¿Cómo que el módulo se llama logo?
¿Qué es mod-custom?
¿Estás utilizando el módulo que puse aquí (mod_cambiarimagen)?
¿A qué te refieres con "cuando lo coloco color blanco se lo ve perfecto pero cuando lo cambio a otro color"?
¿No tienes una liga dónde poder ver lo que está sucediendo?
YOS: no sé (por la fecha) si todavía le servirá, pero es posible hacer eso, el problema que plantea es que al colocar el objeto flash, el menú queda 'abajo' del flash. Como solucioné eso alguna vez colocando en el objeto flash la propiedad wmode="transparent"
Saludos desde Guatemala
Hola Carla y demás forofos.
He hecho todo tal y como lo has explicado al principio y mi problema es que el módulo no aparece en mi web poniéndolo en la posición "header". He probado a ponerlo en otras posiciones y sí aparece pero no la foto sino el texto en php tal y como te muestro a continuación después de copiar y pegar:
Cambiar Imagen
// no direct access defined( '_VALID_MOS' ) or die( 'Restricted access' ); $cid = intval( mosGetParam( $_REQUEST, 'Itemid', null ) ); $default_image = 'images/' . $params->get( 'imagen_default', '' ); $imagen = 'images/header_related_' . $cid . '.png'; if (file_exists($imagen)) echo ''; else echo '';
¿Cuál puede ser el problema? ¿Tiene fácil solución?
Muchas gracias de antemano y saludos desde Algeciras, Cádiz
Hola Laura,
A lo mejor es una tontería pero ese error me suena a que el código no está entre los tags de php (los cuales son < ?php y ?>), ya que si no están no se ejecuta el código de PHP y te muestra el código como si fuera texto.
Con respecto a la posición Header, es posible que no tengas definida esa posición en tu Administrador de Joomla!; para crearla puedes hacerlo dentro del administrador de plantillas (Site -> Template Manager -> Module Positions).
Saludos.
Hola de nuevo Carla. Que emoción cuando las cosas salen bien.. jeje
Te estaba escribiendo ya desesperada porque no lo conseguí pero he insistido un poco más antes de decir que no me salía y voilá... lo he conseguido. Muchíiiisimas gracias.
Ahora solo me falla una cosilla: en la posicion "header" sigue sin aparecer el módulo que acabamos de crear. Mi templete es siteground-j15-11 y tanto en las posiciones de los módulos como en el archivo templete.css del gestor de plantillas aparece la posición de "header". De hecho, el tamaño del "header" lo modifiqué para ponerlo más grande en el templete.css y sí, el espacio del "header" ahora se ve más grande pero sin imagen.
Por si acaso, también he hecho lo que le has escrito más arriba a Javier de insertar en el index del templete pero no aparece nada. Lo he insertado aquí:
y esto sigue hasta
¿Ahí está bien insertado o era después de ?
Ahh, otra cosilla, la ruta Site -> Template Manager -> Module Positions no la encuentro, la que más se asemeja es Extensiones/Gestor de Plantillas pero ahí lo único que me sale, además de los iconos de previsualizar, guardar, aplicar, borrar.. son los de Editar HTML y Editar CSS. ¿Es aquí donde tengo que definir la posición? ¿Cómo?
Muchiiisimas gracias Carla
Hola Laura,
Veo que estás usando la versión 1.5 de Joomla! Es bueno saber que este módulo también funciona en esa versión.
Investigando (ya que no he utilizado la versión 1.5) encontré que cada template debe tener un archivo index.php y que ahí se especifican las posiciones de los módulos, ejemplo:
-
<jdoc:include type="modules" name="top" style="xhtml" />
Por lo tanto supongo que deberás poner en ese archivo index.php el tag:
-
<jdoc:include type="modules" name="header" style="xhtml" />
Además de lo anterior deberás modificar el archivo XML que viene con tu template (templateDetails.xml). Ejemplo:
-
<positions>
-
<position>left</position>
-
<position>right</position>
-
<position>top</position>
-
<position>banner</position>
-
<position>header</position>
-
<position>footer</position>
-
<position>pathway</position>
-
<position>user1</position>
-
<position>user2</position>
-
<position>user3</position>
-
<position>user4</position>
-
<position>user5</position>
-
<position>inset</position>
-
<position>debug</position>
-
<position>search</position>
-
<position>debug</position>
-
<position>header</position>
-
</positions>
Por último, deberás asignar el módulo a header en donde tu me decías (Extensiones/Gestor de Plantillas).
Esta información la encontré en esta página:
http://www.dart-creations.com/joomla/joomla-tutorials/joomla-1.5-template-positions.html
Saludos.
Muchas gracias Carla, por fin lo conseguí.
Menos mal que estáis por aquí los que sabéis y tenéis ganas de ayudar a los demás. Sin vosotros los novatos lo tedríamos muy difícil.
Mil gracias y saludos desde Algeciras
Hola Iván,
Sí es posible, sólo tienes que cambiar la forma en la que insertas el header. En el archivo mod_cambiarimagen.php debes cambiar lo siguiente:
-
// no direct access
-
$default_header = 'swf/' . $params->get( 'swf_default', '' );
-
$header = 'swf/header_related_' . $cid . '.swf';
-
echo '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="900" height="750">
-
<param name="movie" value="' . $header . '" />
-
<param name="quality" value="high" />
-
<embed src="' . $header . '" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="900" height="750"></embed>
-
</object>';
-
else
-
echo '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="900" height="750">
-
<param name="movie" value="' . $mosConfig_live_site . '/' . $default_header . '" />
-
<param name="quality" value="high" />
-
<embed src="' . $mosConfig_live_site . '/' . $default_header . '" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="900" height="750"></embed>
-
</object>';
Del código anterior deberás cambiar el width y height de acuerdo a tus necesidades. Tus headers apartir de ahora deberán ser de la forma: header_related_1.swf, header_related_5.swf, etc.
Saludos.
Hola a todos!!
Primeramente quiero agradecer a Carla por su tutorial. Lo he puesto en práctica y funciona de maravilla.
Bueno mi consulta es por algo totalmente diferente...espero que alguien pueda contestarme.
Resulta que soy nuevo en joomla y quiero crear un par de tablas en algunos artículos....esas tablas tienen un fondo de color, un titulo, un texto y una imágen...el diseño es obviamente en html, pero el problema resulta una vez que todo esta terminado y lo pego en el editor htm que trae joomla. Me apareec la tabla, el color, la imágen etc, pero hay un detalle.La parte inferior de la tabla aparece con un margen del color del fondo. Osea en la base de la altura de la tabla me crea un margen o un borde que es imposible de quitarlo. Al diseñar la tabla en dreamweaver y probarlo en los navegadores se ve perfecto. Lo llevo joomla y en vista previa se ve perfecto, pero al guardarlo es que aparece el bendito margen.
Calculo que debe ser una cuestion de espacio en la plantilla. He probado con diferentes plantillas y algunas muestra más margen quye otras, pero en ninguna sin él.
Les agradecría si pudiesen darme una manito en esto que me tiene loco hace 3 días.
Gracias a todos
Hola Daniel,
¿Podrías poner la liga de tu sitio en Joomla! o bien un screenshot para verlo? Además, necesito ver el código de la tabla, por favor sube un txt a megaupload o rapidshare con tu código.
Saludos.
Hola Carla, te agradezco de antemano por tu ayuda y la rápida contestación. Mira, tengo una página que uso de prueba. En la página en el menú superior (top menu) hay un botón que dice "prueba" ahi es donde salen las tablas de ejemplo. Al lado del botón de pueba hay otro que dice "código HTM" ahi he colocado el código que forma las tablas y que en vista previa antes de aplicar los cambios me sale bien, pero luego me crea ese margen inferior que ya les he planteado anteriormente.
Si necesitas algún dato con respecto mas con gusto te lo facilitare
Nuevamente gracias Carla
Carla, ahi te deje la página para que puedas ver a que me refiero. Estoy atento a cualquier novedad. Gracias
Daniel, he estado revisando tu código y haciendo pruebas y no encuentro la razón por la cual tu imagen no se pega a la parte de abajo de la tabla para evitar que sea el borde. Intenté con padding, valign, margin, bottom, etc. y nada; la única solución que encontré fue la de ponerle un margen negativo a las imágenes, por ejemplo:
Esta solución no me agrada del todo; sin embargo es la única que he encontrado hasta ahora.
Saludos.
Carla, perdón por demorarme en contestar. Mira he tratado con lo que me dices, pero no hay forma. Osea en la vista previa me lo muetsra genial, pero al apligar y luego guardar aparece el maldito margen inferior.
Estuve dando vueltas y preguntando por otros lados y una persona me dijo que no era problema del código, sino de la css. Hay que modificar algo ahi que yo no tengo ni la más pálida idea. De todas formas estoy leyendo tutoriales y demas para empezar a aprender sobre css.
Bueno Carla cualquier cosa estare ojeando este foro por si se prende alguna lamparita.
Un abrazo y muchas gracias
Hola nuevamente Carla....mira te cuento que ya esta solucionado mi problema. Era cuestion nomas de la css....luego si quieren coloco la solucion
Muchisimas gracias Carla por tu atención!!
Hola Carla, felicitaciones por el tutorial buenísimo y ayuda a entender el funcioinamiento de los módulos, bueno mi pregunta es: El módulo que aquí describes es para asignarles un bloque te texto a los encabezados de cada sección y/o artículo?
Como aporte...para colocar un flash en la cabecera (header) lo he realizado así:
Para colocar un flash hay que despues del header en index.php crear un div header-swf y con dreamweaver colocar el flash
AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0','width','810','height','316','title','top','src','images/top','quality','high','pluginspage','http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash','movie','images/top' ); //end AC code
Luego en style.css aprox. linea 250 después del div.Header crear un div. Header-swf identico al de header anterior pero con position absolute
div.Header-swf
{
margin: 0 auto;
position: absolute;
z-index:0;
width: 810px;
height: 316px;
background-image: url('../images/top.swf');
}
Y finalmente copiar La carpeta Script a la raiz del sitio, en este caso localhost/mi_sitio
En caso de que no pare de repetirse el flash, en dreamweaver quitar la opción de bucle del flash.
Los altos y anchos los configurarán según sus necesidades, y este flash lo he insertado en un plantilla creada.
Espero les sirva esta contribució y gracias nuevamente Carla.
Saludos
Se me olvidó aclarar , que en todo las partes donde dice "top", cambiar por "mi_nombreflash.swf" (sin cremillas "")
Hola Luis Felipe,
Gracias por tu aporte y comentario.
Este módulo permite asignar una imagen como header o encabezado a cada una de las secciones que tienes dadas de alta en Joomla! Lo anterior es debido a que cada sección de nuestro menú principal tiene un "itemid" único el cual nos permite hacer referencia a él (en la imagen 1 de este tutorial puedes ver el Menu Manager con los itemid de cada sección).
Si tu pregunta está ligada a si se puede poner un bloque de texto por cada sección o incluso por cada artículo, la respuesta es que sí. Cada artículo o entrada que agregamos en Joomla! tiene un identificador único debido a que esa información se almacena en una base de datos; por lo que dentro del Administrador de Joomla! también puedes ver el ID de cada artículo.
Saludos.
Muchas gracias Carla, por la respuesta y prontitud.
Saludos cordiales
Luis Felipe Cuadra
Ahhh!! y otro aporte: las plantillas las he creado con artisteer y he sabido como cambiar algunas cosas con el firebug de firefox, tratando de documentar todo.
Como otro dato, se puede colocar cabeceras flash en la creación del contenido, es decir, cuando creas una noticia esta el icono para insertar un flash, claro esta, que no tiene que mostrar el título, y la plantilla debe estar sin el bloque que adorna el título.
Pero se genera un error al quere insertar al inicio un popup, ya que se sobrepone la cabecera del título al popup. Poe eso de mi preugunta y aradecimeintos, ya que me servirá de mucho.
Hola Luis Felipe,
Si el código del popup es genérico (no importando el artículo o la sección), podrías ponerlo directamente en el archivo del template, creo que sería más fácil.
Por otra parte, muchas gracias por darme a conocer el Artisteer. Ya lo bajé y se ve que está genial, es una pena que la versión completa (para templates de WordPress, Joomla!, Drupal, aplicaciones ASP.NET, etc.) cueste cerca de $130 dólares, aunque sí creo que los valga.
Saludos.
Carla aqui te dejo de donde descargué el artisteer:
http://programspc.blogspot.com/search/label/Dise%C3%B1o
Está en la cuarta posición, luego de la descarga trae las instrucciones en el comprimido.
Saludos y que sirva.
Hola Luis Felipe,
Muchas gracias por compartir la liga.
Se ve que el blog tiene archivos muy buenos
Saludos.
Carla: Espero que te haya servido el artisteer, y aprovecho de hacer una pregunta: Tu sabes dónde se puede variar el PostMetadataHeader (que no sea en el style.css)? Lo que pretendo es poder cambiar el tamaño y forma de los bloques de título, para personalizarlos. Y si no te molesta más adelante te haré uns preguntas de flash...
Saludos
Hola Luis Felipe,
No había podido revisar cómo estaban organizados los archivos en Artisteer. Ahora que los revisé te digo que no tengo ni idea =0(. Supongo que podrás modificarlo en "default.php" pero sería lo mismo ya que tendrías que agregarle el tag "style" dentro del div "PostMetadataHeader".
Saludos.
Gracias Carla por colaborar con todos, mi consulta es la siguiente, he querido desde hace bastante tiempo asociar cada botón del menú principal con una imagen o un archivo .swf, no hay nada en toda la red q hable de eso o por lo menos yo no lo he conseguido y la verdad q es importante saberlo, si me puedes ayudar te lo agradezco. mi email es -------------
Jesús: He borrado tu correo electrónico por seguridad. Perdona la tardanza, trateré de ayudarte si todavía lo necesitas.
hola Carla
Me uno a los agradecimientos y felicitaciones de el foro hacia ti, eres genial.
No se si puedas darle seguimiento a estos comentarios, pero intente instalar el modulo en una version 1.5.3 y 1.5.6 (que son los que utilizamos) y en ninguna se ah podido, manda el error de que "¡Error! No puedo encontrar un archivo de configuración XML para Joomla! en el paquete." ¿me podrias ayudar?
Mil gracias, si no es posible no importa... vale la pena leerte.
Hola Magardiz,
Perdona la tardanza, desconozco por completo por qué aparece ese error en tu aplicación. Gracias al mensaje de Laura sabemos que funciona el módulo para la versión 1.5, pero no sé si cambie mucho la funcionalidad en las versiones 1.5.3 y 1.5.6. Aun así revisa que el archivo de configuración (mod_cambiarimagen.xml) no tenga caracteres raros o extraños, recuerda que en la zona del código del blog puedes hacer click sobre el título de Texto Plano para poder copiar el código limpio.
Saludos.
Hola que tal, desesperadamente he buscado como cambiar el header para que se muestre uno diferente en casa articulo o seccion, ya me reboruje de tanto que hay en la red pero no explicado claramente. Bueno a lo que voy:
Ya hice lo que le explicaste a LAURA... Comentario por Carla Macías el Junio 11, 2009 @ 2:57 pm
yo uso el joomla 1.5 y me dice que esa extencion no funciona con esta version y que debe estar en LEGACY-MODE para ser activada y que me ponga en contacto con la extension del autor
podrias ayudarme?
he buscado por muchos sitios y casi siempre me sale el tuyo.
ando buscando un modulo o aguna solucion para cambiar de header cada que entro a un articlo.
trate de hacerlo que tu dices pero no logro ningun resultado, apenas estoy iniciandome en esto del joomla.
Instale el modulo y me dice que no es compatible y que tengo que ejecutar el legacy-mode o algo asi.
segun eso ya esta habilitado, modifique mi codigo y donde deberia mostrar la imagen pone el titulo (eso no es problema kitarselo) y una X roja donde no muestra la imagen y abajo de esta X pone:
Joomla!
Joomla! The most popular and widely used Open Source CMS Project in the world.
Mi version del joomla es 1.5.15
Salvador, eso quiere decir que la liga de la imagen es incorrecta o que no existe la imagen en el servidor. En la zona de la X roja da click con el botón derecho y luego haz click en Propiedades para que puedas ver la dirección de la imagen y así asegurarte que está correcta y que existe en tu servidor.
Saludos.
Hola otra ves, creo sere un tormento =(
ya pude hacer que me muestre la imagen default, solo que no logro hacer que me muestre la imagen que deberia. Otra cosa en el header va el cuadrito de buscar y cuando hice el intento me dejo el buscar en un espacio en blanco a el solo no se si me doy a entender
Hola Salvador,
¿No tienes una liga para que lo pueda ver o ya de perdida una impresión de pantalla porque no entiendo lo del cuadrito de buscar?
Con respecto a que no muestra la imagen que debería, observa que en el código tenemos:
-
$default_image = 'images/' . $params->get( 'imagen_default', '' );
-
$imagen = 'images/header_related_' . $cid . '.png';
Por lo que las imágenes deben estar en una carpeta llamada images y deben tener de nombre header_related_X donde X es el número del Itemid.
Saludos.
Que tal, gracias por contestar. Como te comentaba ya logre hacer que me ponga la imagen por default pero no la que pertenece a la seccion, las imagenes ya estan en la carpeta images con el nombre header_relate_X (osea x es el numero del itemid de la seccion). Te anexo los links de las imagenes de mi sitio para que te des una idea.
http://i46.tinypic.com/29o01ur.jpg (Asi se ve mi pagina)
http://i45.tinypic.com/30wnn83.jpg (Asi viene mi joomla)
Ademas ingreso el codigo donde inserto la linea:
Codigo:
(buscador)
Saludos y gracias
Hola Salvador,
Te envié un correo ayer.
Lo de Joomla! Shop me imagino que será un módulo que debes desactivar.
El espacio en blanco se seguro tiene que ver con el diseño de tu template y con la hoja de estilos.
Saludos.
Hola que tal, Muchas gracias por tu atencion y por la molestia de mandarme un correo, ya no te respondi por que despues de checar el codigo varias veces, conseguir ayuda de unos amigos y hacer ajustes en el css de la plantilla y en el html de la misma pude lograr terminarla. A ti te agradezco mucho este gran modulo que creaste me sirvio de mucho y aprendi muchas cosas gracias a el. Cudiate y sigue adelante.
Hola Carla...
He leido la forma en que se debe hacer un modulo para poder cambiar una imagen.. pero no logor hacerlo funcionar en Joomla 1.5.x podrias poner el archivo para poderlo descargar... igual como hiciste el de la version 1.0 donde nos permites descargar toda la explicacion pero ya hecho por ti... estare muy agradecido si me pudieras complacer por esta unica ocación... y gracias por tan explicita informacion
Saludos, un abracito y un besototote... muack
Hola Carla, ante todo muchisimas gracias por la colaboración prestada es increíble que haya gente con tanto conocimiento y tan humilde, colaboradora a la hora de ayudar he parendido un mundo contigo, la verdad gracias, saludos desde Venezuela. Tengo una consulta no sabía si hacerlo por aquí, sin embargo me atreví jeje… tengo una base de datos llamada seanca_bd la cual tiene una tabla llamada asiste que contiene los siguientes items id_asi, empresa, empleado, fecha, nuevoing, primhora, seguhora, armamento, radio, dtl, pg, ag, rd, motredoble, observaciones; ya el código de ingreso de datos lo tengo listo y funciona perfectamente lo q sucede es que quiero tomar el valor "on" que me arroja el checkbox de los items (nuevoing, dlt, pg, ag, rd) para usarlos en un reporte cualquiera. Es decir ¿cómo recojo el valor de un checkbox para extraerlo o usarlo en un reporte?
hola carla me gusto tu solución pero mira io hice todo lo q pusiste y bueno se supone q lo revise bien y nada me sale el mensaje de error de la version . actualmente uso el joomla 1.5.15 y bueno me gustaría usar esta solución puesto q ya estaba tirando la toalla hasta e revisado cada archivo del hdocs para modificarlo por codigo pero tu solución creo q es mejor gracias espero tu pronta respuesta
Buenas noches, bueno Carla he estado mirando esto, acabo de instalar el joomla para la empresa y necesito hacer que las imagenes de la cabecera cambien segun sean algunas secciones, pero no entiendo bien lo que hay que hacer, he puesto a las imagenes el nombre como indicas, header_related_ y el id de la seccion, entiendo que en el fichero php en esta linea:
$imagen = 'images/header_related_' . $cid . '.jpg';
se indica al modulo la imagen a cargar obteniendo el nombre completo, no hace falta poner en ningun sitio todos los nombre de las imagenes que voy a usar en el fichero php, o tengo que crear una linea por imagen indicando el nombre exacto?
bueno muchas gracias, un saludo y muy agradecido por la explicación.
disculpa la url por si quieres ver lo que te digo es http://www.e-form.es, y deben cambiar las imagenes dento del menu, en los apartados de oposiciones, para cada una hay una imagen.
gracias nuevamente.
Hola Iñaky,
No entendí nada "no hace falta poner en ningun sitio todos los nombre de las imagenes que voy a usar en el fichero php, o tengo que crear una linea por imagen indicando el nombre exacto". Además, el URL que presentas no existe.
Saludos.
Soy bastante novata en Joomla, pero he incorporado el módulo a Joomla 1.5 y además utilizando una plantilla Artisteer.
Después de varios intentos he conseguido que funcione.
No dejaré de visitar tu página.
Muchas gracias!
Hola Carla, fantástico módulo, he empezado a usarlo y quiero llvarlo un poco más lejos, me gustaría además de la imagen poder añadir el nombre de la sección en la cabecera, ¿como puedo obtener el nombre de la sección?, gracias.
Heyy! Muchas gracias por tu aporte, la verdad es que nos fue de gran ayuda en nuestro proyecto!
Solo una cosita, debimos cambiar las rutas a las imagenes porque en "images" no se mostraban!
hola quiero que me alluden estoy trabajando en joomla 1.0.0 y quiero unos componentes para hacer registros me pueden alludar en encontrarlos Y TAMBIEN DE UNAS GALERIAS GRACIAS
Hola, copie el codigo que dices para crear el encabezado dinamico pero cuando intento instalar el modulo me dice que ERROR: no es posible encontrar el archivo XML de Joomla! para la instalación de este paquete.
tengo joomla 1.5
la verdad no se que estoy haciendo mal... podrias ayudarme?
Escribe un comentario
Nota: Es posible que tu comentario requiera autorización, si es así tu comentario será publicado a la brevedad. Gracias.



hola, muy bueno el tutorial. la verdad es que llevo tiempo buscando algo asi y no encontraba mucha informacion. Tengo 1 duda: el modulo funciona al 100 por cien, pero en el caso de que le ponga como posicion "header", no se ve ninguna imagen. En cambio en cualquier otra posicion si que se ven las imagenes. He probado con los 3 temas que vienen por defecto en la version de joomla 1.0.15 y no consigo que se vean las imagenes en la posicion header. Tienes alguna sugerencia que me puedas hacer.
muchas gracias y felicidades por el articulo