jueves, 28 de julio de 2011
Error en joomla: JFolder:create: No se ha podido crear el directorio
Error en joomla: JFolder:create: No se ha podido crear el directorio.
¡Advertencia! - Fallo al mover el archivo.
1ª- Al mover el portal de ubicación en Joomla, el archivo configuration.php (donde se definen las variables globales del sistema) hay 2 de éstas que deberemos "arreglar", $log_path y $tmp_path , habrá que ajustar a su directorio actual, ya que estarán apuntando al anterior y por eso no se podrán crear.
2º- Que en el servidor contratado no tengamos permisos en las carpetas donde apuntan las variables anteriormente comentadas. Habrá que darle permiso de escritura.
Nota: si la 2ª opción es vuestra solución, os volverá a salir ese problema en numerosas ocasiones, ya que a la hora de instalar (crear sus carpetas) componentes, plugins, módulos o subir imagenes y en algún que otro caso más, la solución es darle permiso a la carpeta que lo requiera en cada momento.
No es recomendable, pero siempre podéis darle permiso a la carpeta raíz de Joomla y a todos sus "descendientes" y olvidaros de ese problema (aunque puedan venir otros de seguridad...).
martes, 14 de junio de 2011
Enviar mail con Joomla
Pero Joomla incluye la clase JMail y para enviar un mail es bastante sencillo una vez que sabes cómo, facilitándonos mucho la tarea.
Esto es el código que he usado yo en mi componente y funciona correctamente.
// Lista de correo, esto puede ser un correo o un array de estos, lo correcto es realizar un pequeño formulario en el back-end o front-end para introducirlos en un futuro mediante el navegador y no por código $to = array('sabio@hotmail.com','jhondoe@gmail.cz'); $subject = 'Prueba de envío .'; # Poner algunas variables para los mensages de correo $from = array("juanelgolosina@moncloa.es", "Parque de flores carnivoras."); # Invocar JMail Class $mailer = JFactory::getMailer(); # Establecer remitente para que mi nombre se muestre de forma ordenada en tu bandeja de entrada $mailer->setSender($from); #Añadir un destinatario - esto puede ser una dirección única (cadena) o una matriz de direcciones $mailer->addRecipient($to); $mailer->setSubject($subject); $mailer->setBody($body); #Poner true para enviar como HTML $mailer->isHTML(true); $mailer->send();Un enlace para los que entiendan o quieran entender bien el core de Joomla, el apartado mail, este es el más complejo y completo:
Docs for class JMail.
miércoles, 14 de abril de 2010
Traducir front-end Joomla automático.
Con JoomFish, la verdad que está bastante bien y es sencillo de instalar, usar y gestionar, con la única pega, que eres tú el que tiene que introducir 'x' veces lo que escribas, siendo 'x' el número de idiomas que gestiones, siendo así también bastante configurable lo que se ve en cada idioma y cómo.
Cómo conclusión, si lo que quieres es una solución rápida, sencilla y que vaya "bien", la opción del módulo de google, Gtranslate es lo mejor (para mi), basta con descargar el .zip, instalar cómo cualquier otro módulo y activar desde el gestor de módulos.
Ahora sólo hay que elegir en que posición lo quieres mostrar, qué idiomas mostrar (hay muchísimos, entre ellos el Catalán y el Gallego también, además de los habituales internacionales), y cómo (con cómo me refiero a una lista desplegable, o banderitas, nombres de idiomas o ambos, en situación horizontal/vertical, etc).
Cómo es obvio, el texto contenido en las imágenes, es imposible que lo traduzca, así que si teníamos algún menú que nos interesara traducir, habrá que cambiarlo...
jueves, 7 de enero de 2010
Dos instalaciones joomla en el mismo hosting (con BD diferenciada).
"Base de Datos"
lunes, 28 de septiembre de 2009
Sindicacion RSS a nuestro portal en joomla.
Es tan fácil como ir al "back-end" de nuestro portal, y realizar el siguiente camino:
Extensiones --> Admin. de módulos --> Nuevo --> Tipo "mod_syndicate".
Yo suelo no poner ni mostrar titulos, ni habilitado ni nada, simplemente, en la barra de direcciones del navegador ahora saldrá el iconito ese naranja a la derecha del todo.
Seleccionar el menu que quieras, ya que le hemos puesto deshabilitado, dará igual.
Bueno, mejor poner sólo en el menú donde tenemos nuestros artículos, por ejemplo no lo ponerlo en galerias fotográficas, calendarios, sitemap, etc...ya que en algunos directamente no sale aunque lo pongáis y en otros el resultado puede variar y casi nunca funcionar.
Vale, ahora para que se puedan subscribir desde todas las páginas de nuestro sitio web, habrá que introducir un poco de código en el archivo "index.php" de nuestra plantilla:
<head>
<jdoc:include type="head">
<link href="XXXXX" rel="alternate" type="application/rss+xml" title="RSS 2.0">
<link rel="stylesheet" href="templates/<?php echo $this->template ?>/css/template.css" type="text/css" />
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
</head>
</head>Donde en "XXXXX" tendremos que poner el path de nuestra página contenedora de los artículos, por ejemplo si las tuvieramos en el menu de actualidad y con URL's amigables, se sustituiría literalmente por esto:
href="/index.php/actualidad?format=feed&type=rss"
Y ya podriamos subscribirnos a nuestro portal.
miércoles, 9 de septiembre de 2009
Enlaces joomla 1.5
Enlace a la traducción en español de la página principal de JUMI (qué es JUMI lo explica el enlace):
http://209.85.227.132/translate_c?hl=en&langpair=en|es&u=http://jumi.vedeme.cz/index.php&rurl=translate.google.com&client=tmpg&usg=ALkJrhj-a2_f5L3rDWN1yA1-hEApqWHwRA
Blog con noticias en plan lanzamientos de nuevas versiones, comparaciones, como por ejemplo con WordPress, asi como compilaciones de diseños de plantillas:
http://www.nosolocodigo.com/category/joomla
Extensiones, templates y tutoriales:
http://solojoomla.com
Cómo crear un módulo:
http://joomla15.joomlatuto.com/tutoriales/crear-un-modulo/142-creando-modulo-joomla
Espero que sirva de ayuda lo mismo que a mi.
miércoles, 19 de agosto de 2009
Desinstalar Joomla
Si queremos asegurarnos de borrar todas las bases de datos creadas para probar inicialmente, y hacer una instalación limpia completa, lo mejor es borrar tambien la carpeta del XAMPP y realizar también una instalación nueva, para no encontrarnos con ningún modulo ni extensión inesperada en el Joomla.
miércoles, 29 de julio de 2009
Cabecera plantilla Joomla 1.5.x
<head>
<jdoc:include type="head" />
<link rel="stylesheet" href="templates/<?php echo $this->template ?>/css/template.css" type="text/css" />
Carga el título de la página, metatags y framework.
Carga el favicon del site (favicon.ico), que es uno de los archivos que podemos integrar en nuestra plantilla cuando la creemos con la imagen del portal.
El framework de JavaScript que carga por defecto es el de Mootools, se puede quitar modificando algún archivo fuente, pero no vale la pena, las 2 opciones son o la indiferencia, o la mejor, aprender y explotar al máximo su potencial para añadir efectos a nuestro portal.
$this-> template obtiene el nombre de la plantilla que tenemos asignada, y carga la carpeta de la plantilla con todos los archivos explicados en su creacion.
lunes, 13 de julio de 2009
Mostrar imágenes aleatorias (con ejemplo de Joomla tambien).
Existen varias maneras, pero yo voy a poner esta, que es la que he podido adaptar fázilmente para hacer lo mismo con Joomla 1.5.x.
Lo más cómodo para realizar, y para mantener la maquetización es que las imágenes mantengan las mismas propiedades.
1º Se crea un array con el nombre de las imágenes:
<?php
//Array de imagenes
$imagenes = array();
//items del array
$imagenes[]='imagen1.jpg'
$imagenes[]='imagen2.jpg'
$imagenes[]='imagen3.jpg'
//desordenar el vector
shuffle($imagenes);
?>
2ºSe inserta la imagen tal cual la pondríamos en el código, sustituyendo el nombre de la imagen que va al final de la ruta origen por mostrar un elemento del vector de imágenes.
<p>
<img src="ruta/ala/imagen/<?php echo $imagenes[0];?> border="0" alt="descripcion_de_la_imagen" width="ancho" height="alto">
</p>
Para Joomla 1.5.x sería exactamente igual, sólo que a la hora de poner la ruta sería algo así:
<p>
<img src="templates/<?php echo $this->template;?>/images/<?php echo $imagenes[0];?> border="0" alt="descripcion_de_la_imagen" width="ancho" height="alto">
</p>
miércoles, 8 de julio de 2009
Instalando extensiones, editor de contenido JCE.
Ahora vamos a hacer el ejemplo de instalación de una extension en nuestro CMS Joomla 1.5.x, vamos a instalar un editor de contenido (JCE), y algunas mejoras.
Alguna de estas son elegir una foto de una lista de nuestra carpeta multimedia sin tener que escribir su direccion, o seleccionar entre los artículos al poner enlaces.
El primer paso en la instalación de los compenentes siempre el mismo, descargar todo lo necesario, en este caso desde joomlacontenteditor,
com_jce_156.zip (el componente editor)
plg_jce_153.zip (un plugin para el editor)
plg_jceutilities_220.zip (otro plugin de utilidades)
Los numeros del final pueden haber aumentado, si an sido modificados, estos son los últimos a fecha de hoy.
Despues hay que instalar las extensiones (desde la parte de administración de nuestra web), vamos a "Extensiones -> Instalar/Desistalar", en subir paquetes vamos subiendo los tres, con el mismo orden puesto anteriormente.
Comprobar que no da errores, si sale algo, como que ya existe una carpeta que contiene algo y se llama asi o habéis realizado anteriormente una instalacion/desistalacion, debéis aseguraros de que el plugin está desistalado también, no sólo el componente.
Ahora debemos activar el plugin de las actividades, ya que por defecto sale con el estado "sin publicar" (en "Extensiones -> Gestor de plugins").
Ahora para poder usarlo, en el gestor de usuarios, tenemos que cambiar nuestro editor predeterminado a "Editor - JCE 1.5.3".
A la hora de editar contenido ya podremos observar como la barra de herramientas a surgido algunas modificaciones, y al editar los enlaces o insertar imágenes veremos como se muestra una nueva ventanita con una gestión mucho más sencilla e intuitiva.
lunes, 6 de julio de 2009
Galeria de imagenes Joomla Morfeo
Se descarga en release y el plugin.
Vamos en la parte de Admin. del joomla a "Extensiones --> Instalar/Desistalar", instalamos ambos.
Ahora ya se puede crear un nuevo menu-item del tipo MorfeoShow.
El siguiente paso es crear una galería, subir imágenes a la galería, etc.
Esto se hace desde la administracion de Componentes, se creará una lista con las galerías, y a partir de estas navegar por ellas y por sus imágenes, también se puede crear un item para cada galería directamente, para eso, en la administración de las galerías, hay una columna donde pone "Opción de menú", con una flecha verde, pues dandole hay nos saldrá una ventana donde escogeremos el menú donde queremos que se cree un nuevo elemento item (con nombre igual al del titulo de la galería).
Como nota, este componente, además de permitirte subir imágenes desde tu PC, también tiene muchas opciones para incluir imágenes desde "flickr", googleMaps, Picas, fasticon, y algo más.
Además incluye bastantes opciones configurables en cuanto a estilos, diseños y formatos de las imagenes en las galerías.
martes, 30 de junio de 2009
Seguridad en web 2.0. Spam 2.0
Este nuevo tipo de spam consiste en aprobechar las facilidades de de interaccion entre los usuarios en estas nuevas redes sociales.
Además de los famosos portales Facebook, MySpace, tuenti, etc, si en tu blog ofreces la posibilidad de dar de alta a usuarios, hay que andar con cuidado, por ejemplo con los listos que publican enlaces o código JavaScript que redirige el navegador a una web distinta por completo.
Usar CMS como pueden ser Joomla, Wordpress y demás, facilita mucho el desarrollo de nuevas webs sociales, con relación continua entre usuarios y web, pero tienen el problema de la seguridad.
Aqui hay un enlace a un post con una serie de consejos traducidos de google para paliar estos ataques:
Programación Web,Videojuegos y ZX Spectrum - por Gabriel Cuesta: Spam 2.0: Usuarios de redes sociales falsos
lunes, 29 de junio de 2009
Ejemplo de template override
Vamos a modificar el módulo de búsqueda para cambiar la imagen del botón "IR" y para acerlo cumplir con las normas de accesibilidad, ya que no tiene etiqueta "ALT", y al pasar el ratón no muestra nada.
Primero, en nuestra plantilla creamos la carpeta "html" (sino está ya), dentro de ésta creamos la carpeta con el nombre del componente, "mod_search" y hay copiamos el fichero "default.php" y el "index.html", que se encuentrar en la carpeta "tmpl" del componente original.
Ahora, cualquier cambio que hagamos en el archivo "default.php" prevalecerá sobre el original, por ejemplo en la línea 10, haremos que quede así:
$button = '<input type="image" value="'.$button_text.'" class="button'.$moduleclass_sfx.'" alt="botón buscar" src="templates/nombre_tu_plantilla/images/imagen_buscar.png" onclick="this.form.searchword.focus();"/>';
Con lo que la propiedad "alt" añadida, los PC's con software de accesibilidad, ahora si que reconoceran correctamente la imagén, y para los navegadores comunes, la imagen del botón será
la que pongamos en nuestra plantilla, dentro de la carpeta "images".
Template override en Joomla 1.5
También puede ser que nuestro trabajo no lleve a buen puerto, pero será tan fázil volver al estado inicial como lo es borrar una carpeta.
¿Cómo funciona template override?
Cada vez que se carga nuestra página web, Joomla la genera, y lo primero que hace es mirar en nuestra plantilla (bueno la que tengamos puesta), para ver si tiene una redefinición de algún componente o módulo de los usados, y la usa si ésta existe, sino, usa el definido en el core.
El primer paso para personalizar nuestra plantilla, es crear en ella una carpeta que se llame "html", hay será donde creemos las carpetas donde introduciremos los componentes modificados.
Bueno, vamos al tema concreto, vamos a la carpeta del módulo(p.e.: com_content) , hay hay una serie de carpetas, una de ellas es la carpeta "views" que es la que nos interesa, dentro de esta habrá una series de carpetas, que son los nombres de las vistas, nos metemos en la carpeta "frontpage", y una vez dentro copiamos el contenido de la carpeta "tmpl".
Dentro de nuestro template, en la carpeta "html", creamos otra que se llame "frontpage" y dentro de ésta es donde copiamos el contenido que hemos copiado antes de "tmpl".
Ahora estos ficheros tendrán prioridad en Joomla a la hora de cargarse, asi que ahora podremos modificar la escritura del contenido sin tener que modificar la base de Joomla ni sufrir pérdida de trabajo con las actualizaciones.
viernes, 26 de junio de 2009
Configurar eXponsor para Joomla 1.x 1.5.x
En las páginas realizadas, con Joomla, un CMS basado en php es posible realizar la integración técnica de estos enlaces. Exponsor no asigna enlaces a las páginas php hasta que no haya realizado la comprobación de la integración técnica.
Estas son las instrucciones para realizar la integración técnica en joomla
1. En primer lugar tendremos que entrar en la parte de "administrator" y hacer click en "extensiones" y luego en "instalar/desistalar"
2. Descargar el componente exponsor desde la página: com_exponsor. pero para verla primero deberas estar registrado. Registrate
Para entrar tendréis que estar registrados, una vez en vuestra parte privada de la página de exponsor, en el item FAQ del menú, el último apartado es "joomla", pues le dáis hay o bajáis hasta el final de la página y ya hay hacer clic donde pone "aqui" en azul y se os descargará.
3. Hacer click en "Examinar" y seleccionar la carpeta en zip que os acabais de descargar y ahora hacer clic en "Subir Archivo & Instalar".
4. Una vez realizado esto, ir a Componentes -> exponsor plugin...
5. Insertar el código de soporte y el código web
El cod_soporte y cod_web son valores que se pueden consultar en la zona privada de eXponsor, tras asegurarse de que figura el lenguaje del sitio web como PHP, en la sección "enlaces patrocinados > integración técnica", hacer click en el primer botón de "ver código fuente" se verán los valores entre comillas. Estos valores son únicos para cada sitio web.
$cod_soporte = "xxxxxxxxxxxxxxxxxxxx";
$cod_web = "xxxxxxxx";
6. Hacer click en "volcar datos"
7. Insertar la siguiente línea en el módulo donde ponga los enlaces:
echo $exponsor->pinta_enlaces_vertical();
8. Comprobar la integración en la zona privada de eXponsor
9. Si esta integración no funciona, hay que ponerse en contacto con eXponsor, que nos enviará el plugin para versiones distintas de joomla.
miércoles, 17 de junio de 2009
Crear Plantilla Joomla
1º.Primero el sistema de carpetas, tendremos 1 carpeta con el nombre de nuestro template (plantilla), dentro de esta el sistema básico será el siguiente:
-->carpeta CSS (dentro tendremos el fichero template.css).
-->carpeta images (con las imágenes que usemos en nuestro index.php)
-->template_thumbnail.png (imagen se verá en la barra de direcciones,de unos 140x90px).
-->templateDetails.xml : este archivo le dice a Joomla los otros archivos que se usan en la plantilla al cargar la página, tambien contiene información acerca de la versión y nombre de la plantilla, asi como del autor de la misma.
-->index.php : es el núcleo de nuestra web, le indica a Joomla donde se muestran los modulos y componentes de nuestra web.
Aqui os dejo un ejemplo de fichero "templateDetails.xml":
<?xml version="1.0" encoding="iso-8859-1"?>
<install version="1.5" type="template">
<name>template1</name>
<creationDate>09/03/09</creationDate>
<author>Antonio J.</author>
<authorEmail>mrpesk84@gmail.com</authorEmail>
<license>GNU/GPL</license>
<version>1.0</version>
<description>_TEMPLATE</description>
<files>
<filename>index.php</filename>
<filename>templateDetails.xml</filename>
<filename>template_thumbnail.png</filename>
<filename>params.ini</filename>
<filename>images/logo.png</filename>
<filename>images/logo2.PNG</filename>
<filename>css/index.html</filename>
<filename>css/template.css</filename>
</files>
<positions>
<position>left</position>
<position>right</position>
<position>flash</position>
<position>busqueda</position>
<position>footer</position>
<position>specialone</position>
<position>topMenu</position>
</positions>
</install>
martes, 16 de junio de 2009
.asp embebido en Joomla
en el archivo index.php , en la parte donde cargamos el contenido:
<div id="contenido">
<jdoc:include type="component" />
</div>la linea del medio la cambiaremos por todas estas:
<?php
$url = $_SERVER['REQUEST_URI'];
if($url == "/joomla/index.php/convocatorias")
echo "<script src=\"http://direccionDelEmbebido.asp\"></script>";
else
{
echo "<jdoc:include type=\"component\" />";
}
?>
En este caso, he puesto que se cargue el .asp en el sitio del contenido solo cuando estemos en el apartado de convocatorias, jugando con la URL de nuestro sitio y los if/else podremos cargar en el contenido lo que más nos convenga, es una forma manual de editar contenido.
No es el estilo de Joomla, pero siempre puede venirnos bien tener algún recurso para no quedarnos atascados.
lunes, 15 de junio de 2009
Como instalar modulos componentes plugins plantillas Joomla
Una vez empezemos nuestro portal, es posible que necesitemos de alguna funcionalidad extra o concreta que no dispongamos, bien la comunidad joomla dispone de miles (en castellano de menos, pero aún así de un gran abanico) de componentes y/o módulos sencillos de gestionar desde la administración y de gran funcionalidad en la parte del usuario.
Para los que les guste la programación ya contaremos como desarrollar un plugin, componente o modulo desde '0', pero los invito a "husmear" de vez en cuando por las carpetas de los modulos, para realizar pequeños cambios a estos y aprender.
Para los que no, simplemente, que se dediquen al método de prueba y fallo con los módulos hasta encontrar el que se más les guste.
Bueno, vamos a instalar rápidamente por ejemplo entramos a www.joomlaspanish.org y descargamos alguna extensio, son carpetas comprimidas en .zip.
Entramos en la parte de administracion de nuestra web, entramos en Extensiones --> Instalar/desinstalar.
Lo más usado es subir desde un paquete, que es el que tengas en tu máquina, desde examinar lo seleccionas y luego le das a Subir archivo & instalar, la propia interfaz de Joomla será la que te avisará de si ha habido algún error en los ficheros o en la instalación.
Si todo ha ido correcto, por ejemplo si has instalado un módulo de traducción de google (gtranslate), cuando vayas a crear un nuevo módulo ya te aparecerá para crearlo cómo uno más.
Si has intalado un plugin tendrás que ir al "administrador de plugins" y activarlo (simplemente haciendo clic en la cruz roja de la derecha de su nombre en el listado ya estará listo).
jueves, 11 de junio de 2009
Joomla no me carga las imagenes las posiciones de la plantilla
Pues bien, todos los archivos que quieras que reconozca luego Joomla tienen que estar dentro del apartado
Lo mismo pasará con las posiciones, TODO lo que no esté en este archivo, no será luego reconocido por Joomla cuando subamos nuestra plantilla a un servidor que no sea el local, ojo porque en local puede que si carge las posiciones y las imágenes aunque esten mal en el fichero la ruta o el nombre.
Joomla problema subir imagenes
Problema:
Sitio -> Administrador Multimedia -> Subir un archivo -> Navegar los archivos (aqui debería salir la típica ventana para seleccionar el archivo que quieres subir y no sale nada).
Pues mi solución a sido la siguiente:
Sitio -> Configuración global -> Sistema -> Activar el Sistema Flash para subir archivos (aqui el radiobutton del formulario lo tenía en "SI", ahora lo he puesto en "NO").
Ahora al volver donde estaba el problema, en lugar de donde ponía "Navegar los archivos" pondrá "Examinar", y ahora si se abré bien.