SlideShare una empresa de Scribd logo
1 de 48
Descargar para leer sin conexión
Desarrollo de Sitios Web
   con Joomla! CMS
   Manual del Curso
      Versión 1.0




            1
Índice de contenido
Copyright (c) 2011 ....................................................................................................................................4
Historial de Cambios .................................................................................................................................5
Introducción ..............................................................................................................................................6
Capítulo I ...................................................................................................................................................6
   Sistemas de Gestión de Contenido .......................................................................................................6
      ▪ ¿Por qué un Sistema de Gestión de Contenido? ............................................................................6
      . Tiempo............................................................................................................................................6
      . Seguridad........................................................................................................................................7
   ¿Es más seguro desarrollar desde cero el Sitio Web o montarlo sobre un CMS? ................................7
      . Escalabilidad...................................................................................................................................8
      . Facilidad de uso, administración y mantenimiento........................................................................8
      . Independencia del desarrollador.....................................................................................................8
      . Economía........................................................................................................................................9
      . Calidad. ..........................................................................................................................................9
      ▪ Ok, ahora... ¿Por qué Joomla!? .....................................................................................................9
      Otras ventajas: ...............................................................................................................................10
      Premios ..........................................................................................................................................11
      . Características de Joomla! ...........................................................................................................12
Capítulo II ...............................................................................................................................................13
   Instalando Joomla! en un entorno local ..............................................................................................13
      ▪ Requerimientos técnicos de Joomla! ...........................................................................................13
      • Componentes Adicionales ...........................................................................................................13
      • Instalación y configuración del Servidor Web Apache . .............................................................13
      ▪ Instalación y Configuración del Servidor de Bases de Datos MySQL. ......................................16
      ▪Instalación y Configuración del Intérprete del Lenguaje PHP .....................................................16
      . Crea la base de datos ....................................................................................................................18
      . Instalación de Joomla. .................................................................................................................21
      • Tour por el nuevo sitio web .........................................................................................................28
Capítulo III ..............................................................................................................................................29
   Administración de Joomla! ................................................................................................................29
      ▪ Panel de Control ..........................................................................................................................29
      • Gestión del Menú ........................................................................................................................32
      • Gestión del Contenido .................................................................................................................35
      • Gestión de Extensiones ...............................................................................................................39
   Instalar extensiones ............................................................................................................................39
   Gestión de módulos ............................................................................................................................40
   Gestión de Plugins ..............................................................................................................................41
   Gestión de Plantillas ...........................................................................................................................42
   Gestión de Idiomas .............................................................................................................................43


                                                                              2
Capítulo IV ..............................................................................................................................................44
  Optimizando el Sitio Web ...................................................................................................................44
     Optimización para motores de búsqueda y URLs amigables (SEF/SEO). ....................................44
   Respaldo y Restauración. ..................................................................................................................45
  Seguridad Básica. ...............................................................................................................................47
  Glosario de Términos .........................................................................................................................48




                                                                             3
Copyright (c) 2011
Jesús Israel Contreras Urquiola.

Permiso para copiar, distribuir y/o modificar este documento bajo los términos de la GNU Free Documentation License,
Versión 1.2 o cualquier versión posterior publicada por la Free Software Foundation; sin secciones invariantes, sin textos de
portada y sin textos de contraportada.

Se incluye una copia de la licencia en la sección titulada “Licencia de Documentación Libre GNU”, sino puede escribir a la
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA o visite la página
http://www.gnu.org/licenses/fdl.html.




                                                              4
Historial de Cambios .

Mayo, 2011   Versión 1.0   Publicación Inicial del Documento




                           5
Introducción

        Haber creado un proyecto por iniciativa de la comunidad, a raíz de que la empresa que patrocinara un
popular Sistema de Gestión de Contenido, comenzara a tomar decisiones arbitrarias con respecto al futuro de la
aplicación y haber desarrollado mejoras sustanciales al software original, al punto de llegar a reescribir
totalmente el código y hacerlo 100% libre, ha hecho, entre otras cosas que Joomla se haya convertido en uno de
los CMS más populares en la actualidad.

       Este taller pretende introducir al participante en los conocimientos básicos necesarios para una
implementación exitosa de un sitio web basado en Joomla. Así como también su posterior administración y
mantenimiento.

         El siguiente taller ha sido diseñado con las mejores prácticas y entornos más seguros, profesionales y
eficientes. Los ejemplos han sido creados usando aplicaciones y sistemas operativos libres basados en
GNU/Linux.


Capítulo I


Sistemas de Gestión de Contenido .


▪ ¿Por qué un Sistema de Gestión de Contenido?

        En la actualidad desarrollar sitios web de calidad es una tarea que conlleva una importante cantidad de
tiempo, trabajo y dedicación. También depende mucho de las características y alcance del proyecto, pero es
probable que en la mayoría de los casos, desarrollar el sitio web sobre una plataforma de gestión de contenidos
sea una buena decisión.

        A continuación veremos algunas razones para usar Sistemas de Gestión de Contenidos en lugar de
desarrollar una solución desde cero para nuestro proyecto Web. Pero no sólo usar un CMS, es importante.
También lo es asegurarse de que sea software libre, que podamos modificarlo completamente a nuestras
necesidades sin restricciones y que tengamos una importante comunidad detrás de la aplicación.


. Tiempo.

       En todos los proyectos – de cualquier índole – juega siempre un papel preponderante el factor tiempo.

       Los proyectos informáticos y más específicamente la implementación de un sitio web no escapan a ello.

                                                       6
Desarrollar un sitio web programando todo desde cero tomará una importante cantidad de tiempo, que
bien pudiera invertirse en perfeccionar otros aspectos de alta relevancia en el proyecto, como la seguridad, por
ejemplo.

        Usar un sistema de gestión de contenido nos ahorrará una increíble cantidad de tiempo, incluso tomando
en cuenta la curva de aprendizaje inicial para alguien que no conozca la herramienta.


        Adicionalmente, luego de su implementación, seguirá siendo nuestro aliado ahorrándonos
considerablemente, tiempo en tareas de administración, mantenimiento y actualización.


. Seguridad.

       En este punto es interesante profundizar, ya que hay muchas opiniones encontradas al respecto. Vale la
pena comenzar por la pregunta que probablemente en algún momento te has hecho:


¿Es más seguro desarrollar desde cero el Sitio Web o montarlo sobre un CMS?

Algunas respuestas podrían ser...

        “Los CMS son más inseguros porque el código está disponible y cualquiera puede verlo y comenzar a
atacarlo”, “un sitio web desarrollado desde cero por ti mismo es más seguro, porque sólo tú conoces la lógica del
programa” y otras. Pero lo cierto es que hoy en día, para la puesta en marcha de un sitio web es casi indiscutible
que basarlo en un CMS es mucho más seguro. ¿Las razones?

    a) Una gran cantidad de expertos a nivel mundial aportan horas de trabajo en torno a desarrollos
       colaborativos de sistemas de gestión de contenido, esto hace que la aplicación esté bajo la supervisión
       exhaustiva de todos los desarrolladores involucrados en el proyecto a nivel mundial y que los errores
       puedan detectarse y ser corregidos rápidamente. Muchas personas piensan y dicen: “eso es muy
       inseguro, a cada rato sacan una actualización de seguridad”. Todo lo contrario, precisamente, lo
       dicho anteriormente garantiza que los errores sean corregidos de forma temprana, esto es posible en el
       software libre. En este punto pudiera salir un distraído diciendo: “Bueno, pero si es así, Windows
       también saca actualizaciones de seguridad a cada rato” - Sí, el punto fundamental es que ni usted, ni
       yo conocemos, ni podemos conocer el código fuente de ese sistema operativo, muy por el contrario, los
       sistemas de gestión de contenido en software libre son auditados por cualquier persona, en cualquier
       lugar del mundo, así mismo todas y cada una de las actualizaciones de seguridad, en el caso de esas
       actualizaciones del SO, no se nos permite conocer qué hace realmente esa actualización y eso aplica para
       TODO el software privativo.

    b) Al ser un sistema de gestión de contenidos en software libre, seguramente la herramienta será bastante
       madura y estable, debido a los altos niveles de uso y al constante desarrollo por parte de la comunidad.


                                                        7
Un sitio web hecho desde cero será un código sólo conocido por una sola o pocas personas y necesitaría
        de mucho tiempo o muchas desarrolladores para convertirse en una herramienta versátil, madura y
        estable.

    c) Es muy poco común en las organizaciones un departamento exclusivamente dedicado a la seguridad de
       la información. Implementando un sitio web sobre un sistema libre de gestión de contenido, los
       desarrolladores de la herramienta harán este trabajo por usted, ya que la mayoría tienen equipos de
       trabajo enfocados a trabajar constantemente en pruebas de seguridad, reportarlas y corregirlas.
       Adicionalmente estarán todo el resto de los usuarios que usan la misma herramienta y que al detectar y
       reportar una falla por alguno de ellos toda la comunidad se beneficia.


. Escalabilidad.

        La mayoría de los sistemas de gestión de contenido en software libre son sumamente escalables, esto
quiere decir que usted puede fácilmente aumentar la funcionalidad de la herramienta y adaptarla a sus
necesidades específicas, regularmente a través de un sistema de plugins o extensiones que permiten que usted
pueda, precisamente, extender la funcionalidad original de la aplicación e instalar otras pequeñas aplicaciones,
en algunos casos, modificarla hasta convertirla en una aplicación para otro propósito.


. Facilidad de uso, administración y mantenimiento.

        Regularmente cuando un sitio web es desarrollado desde cero no implementa una interfaz para
administrar y mantener el sitio, sino que la actualización del mismo es directamente sobre el código fuente, lo
que se traduce en un mayor consumo de tiempo en dichas tareas. Por el contrario, contar con un sistema de
gestión de contenidos libres, nos brindará la oportunidad de administrar, mantener y actualizar el sitio web de
una forma fácil, rápida y transparente para el usuario, es decir, no será necesario tener conocimientos de
programación para ejecutar estas acciones.


. Independencia del desarrollador.

         Cuando se implementa un sitio web desarrollado desde cero, regularmente es por iniciativa de una (01)
persona, en algunos casos dos (02); luego de invertir una inmensa cantidad de tiempo en el proyecto y colocarlo
finalmente en producción, existe la probabilidad, a veces muy frecuente, de que la persona que desarrolló el sitio
web, por una u otra razón, deje la empresa o institución y casi el 100% de los casos nunca se deja un manual o
centro de conocimiento respecto a la implementación, desarrollo y mantenimiento del sitio. Por lo tanto la lógica
del desarrollo sólo la conocía la persona que ya no está y toda la empresa o institución queda dependiente de esa
única persona y se encuentra atada y sin poder darle continuidad a la cara digital de la organización. Al final de
cuentas entra otra persona a tomar el cargo y al tener presente la misión de darle mantenimiento a un sitio web
cuya lógica y código no son de él, tendría que optar por dos soluciones, básicamente: invertir una importante
cantidad de tiempo en entender la lógica de la persona que se fue y poder seguir desarrollando y actualizando
ese sistema o crear un nuevo desarrollo. Ambas son contraproducentes para la organización.

                                                        8
. Economía.

        Con bastante regularidad las aplicaciones de Software Libre, además de otorgar libertad a los usuarios
son también gratuitos, esto no es necesario que así sea, pero las empresas u organizaciones que están detrás de
dichos productos prefieren basar su modelo de negocios en alternativas más éticas e igual de productivas, como
por ejemplo, vender consultoría, soporte, desarrollo, servicios, etc.

        Al elegir un CMS en Software Libre usted no sólo estará ahorrando tiempo de implementación en su
proyecto web, sino también la importante cantidad de dinero que implicaría adquirir una prometedora aplicación
de software en una caja y un disco muy llamativo o bien el costo de muchas horas de desarrollo si se decide por
una solución desde cero.


. Calidad.

        Aquí entran todas las características de calidad propias de un modelo de desarrollo colaborativo, típico
en el Software Libre. Como ya sabemos, un proyecto de desarrollo libre en forma colaborativa está integrado, a
menudo, por un equipo multidisciplinario de profesionales voluntarios impulsados por un objetivo común, esto
hace que el software sea de gran calidad y que se discutan entre todos las mejores prácticas y el mejor destino de
la aplicación. Es decir, las decisiones o enfoques no quedan en manos de unos pocos pertenecientes a una
organización privada, sino que son discutidas entre todo el equipo de desarrollo. Esto, unido a todo lo
anteriormente mencionado hace que un Sistema de Administración de Contenido Libre sea un producto de gran
calidad. Básicamente, como ya dijimos, las ventajas propias del desarrollo de Software Libre en forma
colaborativa.


▪ Ok, ahora... ¿Por qué Joomla!?

        Ya vimos las ventajas de usar un sistema de gestión de contenido (cms) libre, en lugar de implementar un
sitio web desde cero. Pero aún queda una importante discusión: ¿Cuál sistema de gestión de contenido puedo
usar?

        Joomla es un Sistema de Gestión de Contenido de Software Libre, escrito en PHP bajo licencia GPL.
Desde sus inicios en Agosto del 2005 hasta Enero del 2008 Joomla fue un fork [1] de Mambo que incluía
sustanciales mejoras en el software y con la visión de ser un proyecto 100% libre.


__________________
1 Es un término en inglés para describir una bifurcación de un proyecto de software, que regularmente resulta en una copia mejorada de la
aplicación original, bajo un nuevo nombre y equipo de desarrollo.




                                                                    9
Hoy en día Joomla se ha separado totalmente del código de Mambo y se ha reescrito la aplicación
totalmente, incluyendo paradigmas de orientación a objetos con PHP5, Ajax, abstracción de base de datos,
soporte a LDAP, caché mejorado, patrón MVC para el desarrollo de aplicaciones de terceros, soporte a XML-
RPC y mucho más, convirtiéndose en el actual Joomla 1.5. x. Actualmente se encuentra en desarrollo la versión
de Joomla 1.6, que desde ya puede considerarse un gran salto dentro del proyecto, al implementar mejoras
sustanciales en el código, haciéndolo más estable, funcional, liviano y eficiente.

        Joomla, es uno de los más populares y prestigiosos proyectos de Software Libre del mundo, en el área
de los Sistemas de gestión de Contenidos, está licenciado bajo la GNU/GPL y es soportado por la organización
OpenSourceMatters y un extenso y nutrido equipo de desarrolladores a lo largo del planeta que trabajan
constantemente en la evolución del código.

        Joomla ha sido implementado en grandes e importantes empresas, muchos centros de educación del
mundo y en una extensa cantidad de entes gubernamentales, en Venezuela, por ejemplo, representa la principal
plataforma de contenidos de los sitios web del estado. Podemos mencionar por ejemplo:

    •   Fundación del Estado para el Sistema Nacional de las Orquestas Nacionales Juveniles e Infantiles de Venezuela -
        Fesnojiv. (http://www.fesnojiv.gob.ve)
    •   Centro Nacional de Tecnologías de Información – CNTI (http://www.cnti.gob.ve)
    •   Sistema Nacional de Gestión de Incidentes Telemáticos (http://www.vencert.gob.ve)
    •   Superintendencia Nacional de Servicios de Certificación Electrónica (http://www.suscerte.gob.ve)
    •   Ministerio del Poder Popular para las Industrias Básicas y Minería (http://www.mibam.gob.ve)
    •   Ministerio del Poder Popular para el Trabajo y Seguridad Social (http://www.mintra.gov.ve/)

      Joomla es 100% escalable, es por eso que hoy en día existen tantos proyectos relacionados y miles de
componentes y módulos.



Otras ventajas:

   •    Está en español.
   •    Posee una extensa documentación.
   •    Es seguro.
   •    Joomla apunta a ser un CMS universal.
   •    Traducido a más de 128 idiomas.
   •    Más de 100 desarrolladores a lo largo del planeta.
   •    Joomla está valorado en USD$ 2.194.486.
   •    Más de 5.000 extensiones listas para usar.
   •    Según métricas de Joomla se necesitarían aproximadamente 18 Meses y 11 desarrolladores para producir
        un CMS de tal calidad.
   •    Joomla es también un Framework.
   •    Joomla ha sido descargado más de 10 millones de veces desde su lanzamiento.



                                                         10
Premios
Joomla ha sido galardonado varias veces por varias organizaciones en distintas categorías.

2009
Open Source CMS Award - Best Open Source PHP Content Management System (3er lugar)
Open Source CMS Award - Hall Of Fame Award (2do lugar)

2008
Open Source CMS Award - Overall Winner (2do lugar)
Open Source CMS Award - Best Open Source PHP Content Management System (2do lugar)

2007
Open Source CMS Award - Overall Winner (2do lugar)
Open Source CMS Award - Best Open Source PHP Content Management System (1er lugar)

2006
Open Source CMS Award - Overall Winner (1er lugar)
Winner - Best Linux / Open Source Project 2006 at UK LinuxWorld

2005
Winner - Best Linux / Open Source Project 2005 at UK LinuxWorld




                                                       11
. Características de Joomla!

   ✔   Es Software Libre.
   ✔   Posee una extensa comunidad de usuarios y desarrolladores.
   ✔   Simple Sistema de trabajo.
   ✔   Sencillo sistema de publicación de contenidos.
   ✔   Administrador de archivos.
   ✔   Sindicación de contenidos.
   ✔   Papelera.
   ✔   URL's amigables (SEF).
   ✔   Administración de banners.
   ✔   Administración de idiomas.
   ✔   Sistema de caché.
   ✔   Simple instalación de componentes adicionales.
   ✔   Poderoso sistema de plantillas (XHTML+CSS+PHP).
   ✔   Jerarquía de usuarios.
   ✔   Estadísticas de visitas.
   ✔   Editor WYSIWYG para los contenidos.
   ✔   Sistema de encuestas.
   ✔   Sistema de valoración de contenidos.
   ✔   Categorización del contenido.
   ✔   Compatibilidad hacia atrás con versiones anteriores de Joomla.
   ✔   Registro de usuarios.
   ✔   Gestión de correos.
   ✔   Sistema de búsquedas.
   ✔   Gestión de Menues.
   ✔   Interfaz gráfica para opciones generales de configuración.
   ✔   Uso de estándares.
   ✔   Mucho más...




                                                     12
Capítulo II


Instalando Joomla! en un entorno local


▪ Requerimientos técnicos de Joomla!

        Para tener un entorno adecuado para la instalación de Joomla se deben tener tres aplicaciones
fundamentales, un servidor web, un servidor de base de datos y un intérprete del lenguaje en el que está
desarrollado Joomla, en este caso PHP.
        Aunque hay personas que han logrado correr Joomla en un servidor web IIS, no es recomendable, por el
contrario debemos garantizar el ambiente nativo ideal para el CMS, que es el siguiente:

    •    Servidor Web Apache (versión 2 en adelante)
    •    Servidor de Base de Datos MySQL (versión 5 en adelante)
    •    Intérprete del lenguaje PHP (versión 5 en adelante)

        Debajo de todas estas aplicaciones, evidentemente debe existir un sistema operativo, idealmente Joomla
corre en cualquier sistema basado en GNU/Linux, aunque también ha sido probado en sistemas BSD, Mac OSX
y Windows.

        Debes asegurarte que PHP esté compilado con soporte para MySQL y Zlib para poder ejecutar Joomla
de forma adecuada. El php que viene empaquetado en la mayoría de las distribuciones de GNU/Linux ya vienen
con este soporte.


• Componentes Adicionales

        Si desea tener soporte a SEF [2] URLs o URLs amigables a motores de búsqueda, usted necesitará
mod_rewrite habilitado en el servidor web y la habilidad de usar configuraciones distribuidas, para la activación
de archivos locales .htaccess.

• Instalación y configuración del Servidor Web Apache .

Para Instalar apache como servidor web desde GNU/Linux solo debemos abrir una consola, logearnos como
root.

________________

2 Del inglés Search Engine Friendly.


                                                       13
Para abrir la consola vamos al menú aplicaciones --> Accesorios --> Terminal;




esto abrirá una terminal o consola:




        usuario@nombre del equipo:~$




                                                      14
desde allí teclearemos el siguiente comando para logearnos como root o administrador del equipo.

        $sudo su
o
        $su -s




esto dependiendo de la distribución de GNU/Linux que estemos utilizando, este comando nos pedirá que
tecleemos la contraseña de administrador.

Cuando te logeas como root o administrador del sistema el prompt cambia de $ a # a demás de la dirección de
directorio.

        usuariot@nombre del equipo:/home/usuario#




Para instalar apache tecleamos en la consola lo siguiente:

        #aptitude install apache2


                                                        15
El sistema retendrá, sugerirá e instalará los paquetes que sean necesarios según su caso. Al final, hará la
pregunta:

         ¿Quiere continuar? [Y/n/?]

Al responder “Y” se inicia el proceso de descarga, instalación y configuración de las aplicaciones.


▪ Instalación y Configuración del Servidor de Bases de Datos MySQL.

Para instalar un servidor de bases de datos MySQL en nuestro equipo local debemos instalar dos cosas: el
servidor y el cliente. En el caso de que no fuese un entorno local en el que trabajaremos, entonces probablemente
la aplicación servidor estaría en una máquina remota y nosotros sólo tendríamos que instalar la aplicación cliente
para conectarnos.

       En la mayoría de las distribuciones de GNU/Linux existe un metapaquete [3] llamado mysql-server y
mysql-client para instalar las últimas versiones estables del servidor y el cliente de MySQL respectivamente.

         #aptitude install mysql-server mysql-client

Igualmente, después de anunciarle todas las acciones que ejecutará le preguntará:

         ¿Quiere continuar? [Y/n/?]

Finalmente descargará, instalará y configurará todo lo necesario para hacer funcionar lo que usted solicitó.
       Probablemente, en algún momento de la instalación usted deberá asignar una contraseña para el
Superusuario de MySQL (root), recomendamos altamente colocar una buena contraseña.



▪Instalación y Configuración del Intérprete del Lenguaje PHP

         #aptitude install php5

         Al igual que en los procesos de instalación anteriores, aptitude se encargará de hacer todo el trabajo que
usted le solicitó.

         Al finalizar ya debería tener un entorno completamente listo para trabajar.

       Por favor vaya a http://localhost en su navegador y verifique que el servidor web apache está
funcionando. Regularmente muestra el mensaje “It Works”.
______
3 Contiene o hace un llamado a otros paquetes.



                                                         16
▪ Descarga Joomla!

         Es posible obtener la última versión de Joomla a través de su sitio web oficial: http://www.joomla.org

        Desde allí descargar el archivo comprimido y guardarlo. Luego deberíamos crear un directorio para
nuestra aplicación Joomla en el directorio raíz de apache (document root) , regularmente /var/www/, para esto
será necesario tener privilegios de superusuario [4], lo hacemos de esta manera:

         mkdir /var/www/joomla

       Donde “joomla” es el nuevo directorio que estamos creando para nuestra aplicación. Luego copiamos el
comprimido a ese lugar.

         cp joomla.tar.gz /var/www/joomla/

         Descomprimir el archivo en el mismo directorio.

         tar -zxvf joomla.tar.gz[5]

       Luego debemos asegurarnos de que el propietario y grupo del directorio de nuestra aplicación sea el que
apache designa para tal función, regularmente: www-data, entonces hacemos:


         chown -R www-data:www-data /var/www/joomla/

        Donde chown es el comando para cambiar el propietario y grupo de un directorio o archivo, -R el
parámetro para recursividad, www- data:www-data, propietario y grupo respectivamente y /var/www/joomla el
directorio al que queremos aplicar los cambios.




__________
4 En distribuciones como ubuntu y derivados se usa sudo antes del comando que necesitamos ejecutar con privilegios, en Debian y otros
nos autenticamos como root antes de ejecutar el comando.

5 En sistemas GNU/Linux también se puede usar “unp” que es capaz de descomprimir
 cualquier cualquier formato de una forma más amigable.




                                                                 17
. Crea la base de datos .

        Para crear la base de datos de Joomla en nuestro servidor de BD MySQL debemos seguir los siguientes
pasos en el terminal:

        Para conectarse al servidor, generalmente se le proporcionará a mysql un nombre de usuario y una
contraseña. Si el servidor se está ejecutando en un ordenador distinto a donde se está estableciendo la conexión,
también se deberá especificar el nombre del host remoto. Una vez indicados los parámetros apropiados, debería
poder conectarse des de cualquier herramienta o bien sea desde la consola en este curso vamos a utilizar las dos
maneras:

        Por linea de comandos ( Consola) es de la siguiente manera:

        shell> mysql -h host -u user -p

        Enter password: ********

       host y user representan el nombre del ordenador donde se está ejecutando el servidor de bases de datos
MySQL y el nombre de usuario de la cuenta que se usará para conectarse. Reemplácelos por los valores
apropiados para su caso. Los asteriscos (********) representan la contraseña, debe ingresarse cuando mysql
muestra Enter password:.

        Si todo funciona bien, se verá una información de ingreso seguida por el prompt mysql>:

        shell> mysql -h host -u user -p

        Enter password: ********

        Welcome to the MySQL monitor. Commands end with ; or g.

        Your MySQL connection id is 25338 to server version: 5.0.9-beta-standard

        Type 'help;' or 'h' for help. Type 'c' to clear the buffer.

        mysql>

        El prompt anuncia que mysql está listo para procesar comandos.

        Una vez autenticado en el servidor MySQL pasaremos a crear la base de datos:

        CREATE DATABASE nombre_base_datos;

Indicando que todo está bien el prompt de mysql devolverá algo como lo siguiente:

        Query OK, 1 row affected (0.07 sec)

                                                             18
Ahora vamos a crear un usuario especial únicamente para esa base de datos, con todos los privilegios
sobre ella.

       Tip: Un administrador de BD serio jamás usaría el usuario root para una BD, un desarrollador serio
tampoco.

       mysql> GRANT ALL ON unabd.* to usuario IDENTIFIED BY 'miclave';

       Query OK, 0 rows affected (0.14 sec)

       Donde: 'unabd' es el nombre de la base de datos.

       'usuario@localhost' es el usuario que estás creando para manejar la base de datos.

       'miclave' es la contraseña requerida para el usuario en dicha base de datos.

       Por último es recomendable recargar las tablas de permisos de MySQL con el comando:

       flush privileges;

       quit

       Para salir y listo.

       Con estos datos ya podemos comenzar con la instalación de nuestro sitio web en Joomla.

        Tip: Para todas estas tareas de administración de la BD usted puede usar una variedad de herramientas
gráficas, como por ejemplo phpmydamin, mysql-query-browser, entre otras. Nosotros recomendamos trabajar
desde el terminal y aprender bien las sentencias SQL.




                                                       19
Con herramienta Visual usando phpmyadmin.

         Vamos al navegador web o browser y tecleamos la dirección http://localhost/phpmyadmin o
http://127.0.0.1/phpmyadmin




                Después tecleamos el usuario y la contraseña de esta forma accedemos a nuestro manejador de
base de datos, para crear la base de datos y el usuario de la base de datos como lo hicistes desde la shell, pero de
una forma visual.




                                                         20
. Instalación de Joomla.

        Abrimos un navegador web y nos vamos a http://localhost/joomla, veremos el instalador web de Joomla.




                             Gráfico: Instalador de Joomla – Seleccione su idioma

        En esta pantalla sólo seleccionamos nuestro idioma y hacemos clic en “siguiente”.


        En esta pantalla se verifica que todo esté en orden para poder continuar con la instalación correctamente,
de acuerdo a todas los requerimientos necesarios para Joomla.




                                                        21
Gráfico: Instalador de Joomla – Comprobación previa




                        22
En la siguiente pantalla podemos observar que Joomla está distribuido bajo la Licencia Pública General
(GPL).




                                   Gráfico: Instalador de Joomla – Licencia




                                                       23
Gráfico: Instalador de Joomla – Configuración de la base de datos

En este punto colocaremos la información de la base de datos que creamos anteriormente.




                                              24
Gráfico: Instalador de Joomla – Configuración de FTP
        En esta pantalla tenemos la opción de configurar el servicio de FTP para la gestión de archivos en
nuestro Joomla.




                                                    25
Gráfico: Instalador de Joomla – Configuración principal

         En esta pantalla debemos suministrar el título del Sitio Web, que será utilizado en la barra superior del
navegador cuando visualicemos nuestro sitio, el correo electrónico del administrador, la contraseña y finalmente
instalar datos de ejemplo, si lo deseamos.

       Tip: Es importante asegurarse de colocar una dirección de correo válida, ya que el sistema la usará para
enviarnos información y/o recuperar la contraseña.

       Tip: Recomendamos altamente usar una contraseña adecuada. Por favor tome en cuenta las siguientes
sugerencias:

    •   Usar caracteres alfanuméricos.
    •   Usar mayúsculas y minúsculas.

                                                        26
•   NO usar “password”, “admin”, “123456”, “joomla” u otras contraseñas obvias.
    •   NO usar el nombre del sitio web, autor o palabras relacionadas fácilmente deducibles.




                          Gráfico: Instalador de Joomla – Finalización ¡Felicidades!

        Has llegado exitosamente al final de la instalación. Sí, eso es todo, usted puede ahora disfrutar del nuevo
sitio web que ha creado.

        Pero antes, por favor elimine el directorio que contiene los archivos de instalación de Joomla. En nuestro
terminal de GNU/Linux podemos hacer lo siguiente con permisos de superusuario.

        rm -rf /var/www/joomla/installation/

         Ahora sí, por favor ingresa a http://localhost/joomla/ para ver el sitio web o visita
http://localhost/joomla/administrator para conocer la interfaz de administración de Joomla, usando el usuario

                                                        27
“admin” y la contraseña que acabas de configurar.


• Tour por el nuevo sitio web .




                                      Gráfico: Nuevo sitio web en Joomla.

        En este momento puedes navegar y disfrutar de tu nuevo sitio web.

        Algunas características visibles a simple vista son:

    •   Menú superior y menú lateral.
    •   Módulo de noticias.
    •   Funciones para enviar a un amigo, guardar PDF e imprimir.
    •   Encuestas.


                                                         28
•   Formulario de inicio de sesión.
   •   Campo de búsqueda.
   •   Otros.

Capítulo III

Administración de Joomla!


▪ Panel de Control

       Para administrar nuestro nuevo sitio web Joomla debemos ir al directorio “/administrator”, el url
completo en este caso sería:

       http://localhost/joomla/administrator y a continuación veremos la interfaz deacceso.




                                                      29
Gráfico: Interfaz de acceso al panel de administración


      Luego de ingresar nuestros datos de acceso (usuario y contraseña creados durante la instalación)
podremos entrar satisfactoriamente al panel.




                                                   30
Gráfico: Pantalla inicial de la interfaz de administración

Al entrar veremos la barra superior del menú, que contiene todos los enlaces a las funcionalidades disponibles y
a mano derecha cuatro elementos:

    1.   Un enlace para previsualizar el sitio (front-end).
    2.   Un indicador de mensajes recibidos.
    3.   Un indicador de usuarios conectados.
    4.   Un enlace para cerrar la sesión.




                                              Gráfico: Barra de menú

         Más abajo tenemos un grupo de iconos que representan atajos rápidos a los enlaces del menú más usados
y en la parte derecha podemos ver información estadística de interés sobre nuestro sitio.




                                                          31
Gráfico: Iconos de acceso rápido y módulo de información



• Gestión del Menú .

        Para administrar los distintos menús debemos ir al “Gestor de Menús”, bien sea desde el icono rápido en
el Panel de Control o desde la barra de menú superior.




                                                      32
Gráfico: Gestor de Menús

        Desde esta pantalla veremos los distintos tipos de menú que tenemos creados, podremos modificarlos,
eliminarlos o crear nuevos.

       Tip: cada vez que se crea un nuevo menú, se crea un módulo del tipo “mod_mainmenu”con el mismo
nombre, luego se podrán modificar algunos parámetros del módulo en el menú de Gestor de módulos.

        Para administrar los enlaces de un menú determinado, por ejemplo “Menú Principal” podemos hacer clic
en “Ítems del menú” en esta misma pantalla o ir por el enlace “Menús” y luego “Menú principal”.

         Nótese que este menú tiene un asterisco al lado del nombre, esto indica que es el menú que actualmente
tiene el enlace de inicio predeterminado, asociado a la página principal.

        Luego podemos ver la barra de herramientas disponible y la lista de enlaces de este menú.
        El icono “Menús” dirige al “Gestor de Menús” que vimos antes.
        El icono “Predeterminado” establece el enlace de inicio asociado a la página principal de la web, como
ya dijimos antes.
        El icono “Publicar”, como su nombre lo indica, publica el enlace seleccionado.
        El icono “Despublicar”, como su nombre lo indica, despublica el enlace seleccionado.

        Tip: Estas últimas dos acciones también se pueden realizar pulsando directamente sobre el icono ubicado
en la columna “publicado” de la lista de enlaces. El tilde verde es publicado y la equis roja despublicado.

        El icono “Mover” desplaza el enlace seleccionado hasta otro menú.
        El icono “Copiar” copia el enlace seleccionado a otro menú. A diferencia de mover, esta acción deja una
copia en el menú actual.
        El icono “Papelera” es usado para borrar el enlace. Este elemento irá a la papelera, desde donde luego
podrá ser recuperado.
        El icono “Editar” permite modificar el enlace seleccionado.


                                                      33
El icono “Nuevo” permite crear un enlace.
         El icono “Ayuda”, presente siempre, muestra contenido de ayuda de acuerdo al contexto.
         En el listado de enlaces podemos ver varios campos, veremos su descripción:

#                             Es una numeración simple, permite conocer el número de enlaces.
Casilla de verificación Permite seleccionar uno o varios enlaces para ejecutar alguna de las opciones
                        disponibles.
Ítem del Menú                 Representa el título o nombre del enlace.
Predeterminado                Muestra una estrella en el enlace establecido como el inicio del sitio web.
Ordenar                       Permite cambiar el orden en que aparecen los enlaces del menú.
                              Puede manipularse con las flechas verdes hacia arriba y hacia abajo o colocando
                              el numero en la casilla y luego pulsando el icono de guardar.
Acceso                        Muestra el acceso que tienen los usuarios a ese enlace del menú. Si está Público
                              todos lo podrán ver, si está Registrado, sólo los usuarios registrados podrán ver
                              el enlace.
Tipo                          Muestra el tipo de enlace. Por ejemplo si es un enlace a un artículo, si es un
                              enlace una sección o a un componente.
ItemID                        Representa el número único de identificación para ese elemento. Es usado por el
                              sistema en su manejo interno.

        Para crear un nuevo enlace en el menú, como ya hemos visto, debemos hacer clic en el icono “Nuevo”, a
continuación se nos mostrará una lista de los posibles tipos de enlace que tenemos para crear.

         Podrían ser hacia un artículo, una sección, una categoría o algunos de los componentes instalados.

      Al elegir una opción, veremos una segunda pantalla con otro nivel de detalle donde podremos elegir el
modo de presentación del enlace. Si detenemos el cursor en las opciones disponibles veremos un texto de ayuda.

       Finalmente debemos colocar el Título del enlace y un Alias, éste último es usado cuando tenemos URLs
amigables (SEF)[6]. La mayoría de las veces será necesario con estos dos campos, además de “Parámetros –
Básico” que aparecen a mano derecha.

         Todos los detalles configurados en el enlace pueden modificarse en cualquier momento.




_______
6 SEF, son las siglas de Search Engine Friendly, en castellano: amigable a motores de búsqueda.




                                                                  34
• Gestión del Contenido .

         Para administrar el contenido de nuestro sitio web debemos usar el “Gestor de artículos”, accesible
desde el enlace de menú “Contenido” en la barra superior o desde el icono con el mismo nombre en el panel de
control inicial.

       Veremos una pantalla como la siguiente.




                                      Gráfico: Gestor de artículos

       Se mostrará la barra de herramientas que hemos explicado antes y adicionalmente las siguientes
funciones:

Desarchivar          Permite eliminar el estado “archivado” a un artículo de contenido.
Archivo              Permite guardar un artículo de contenido en el archivo. Los artículos
                     archivados no podrán ser usados ni editados a menos que se desarchiven
                     primero.
Preferencias         Este botón nos muestra todas las preferencias que podemos modificar
                     referente a los artículos, cada ítem muestra una ayuda contextual al detener
                     el cursos sobre él.


                                                     35
El listado de artículos de contenido tiene varias columnas, a continuación veremos su descripción.

#                              Es una numeración simple, permite conocer el número de
                               artículos de contenido.
Casilla de verificación        Permite seleccionar uno o varios artículos de contenido para
                               ejecutar alguna de las opciones disponibles.
Título                         Representa el título del artículo de contenido.
Publicado                      Muestra el estatus actual del artículo de contenido. Si está
                               publicado mostrará un icono de revisión verde, si está
                               despublicado mostrará una equis roja.

                               Tip: Se pueden publicar y despublicar artículos fácilmente
                               pulsando este icono, sin necesidad de abrir el contenido.
Página Principal               Muestra el icono x si el artículo está en la página principal y el
                               icono y si no lo está.
Ordenar                        Permite cambiar el orden en que aparecen los artículos de
                               contenido. Puede manipularse con las flechas verdes hacia
                               arriba y hacia abajo o colocando el numero en la casilla y luego
                               pulsando el icono de guardar.
Acceso                         Muestra el acceso que tienen los usuarios a ese artículo de
                               contenido. Si está Público todos lo podrán ver, si está Registrado,
                               sólo los usuarios registrados podrán ver el contenido.
Sección                        Muestra la sección a la que pertenece al artículo.
Categoría                      Muestra la categoría a la que pertenece el artículo.
Autor                          Muestra el autor o creador del artículo.
Fecha                          Muestra la fecha de creación del artículo.
Impresiones                    Representa el número de veces que ha sido visto el artículo de
                               contenido.
ID                             Representa el número único de identificación para ese elemento.

                               Es usado por el sistema en su manejo interno.

       Para editar un artículo de contenido hacemos clic encima del título que queremos y a
continuación se nos abrirá el editor de contenido.



                                                  36
Si lo que queremos es crear un nuevo artículo de contenido, entonces haremos clic en el icono
“Nuevo” en el “Gestor de Artículos”, igualmente se nos abrirá un editor de contenido.




                                     Gráfico: Editar artículo
       A continuación describimos los campos más relevantes en la creación/edición de artículos de
contenido.

Título                     Representa el título del artículo y será el que aparezca publicado en
                           el sitio web.
Alias                      Es usado cuando tenemos URLs amigables en nuestro sitio web
                           (SEF). Regularmente se usa el mismo texto del título.
Sección                    Establece la sección bajo la cual se publicará el artículo. Al
                           seleccionar una sección se cargarán automáticamente las categorías
                           que corresponden.
Categoría                  Establece la categoría bajo la cual se publicará el artículo de
                           contenido.
Publicado                  Establece el estatus del artículo (publicado o no). Esto puede
                           modificarse luego en cualquier momento.
Página Principal           Establece la publicación del artículo en la página principal.



                                                 37
A mano derecha tenemos una “Caja de estadísticas” que nos permite conocer rápidamente algunos
datos de interés del artículo.

         Justo debajo, tenemos tres (03) secciones:

   •     Parámetros – Artículo: aquí podemos modificar algunas opciones interesantes como el nivel
         de acceso, las fechas de creación, publicación e incluso finalización. En la mayoría de los casos
         no será necesario modificar esto.
   •     Parámetros – Avanzados: en esta sección podemos modificar los parámetros de presentación
         del artículo, por ejemplo: mostrar u ocultar el autor, la fecha, las opciones de imprimir, enviar a
         un amigo e imprimir como PDF, entre otros. Estas opciones son configuradas a nivel general
         para todos los artículos, pero aquí podemos hacerlo exclusivamente para este artículo.
   •     Información de metadatos: los metadatos proporcionan información acerca de elementos en la
         web, a nivel del código. Esto no lo verán los usuarios en la presentación normal de su sitio web,
         a menudo son usados por los motores de búsqueda para clasificar e indexar la información.

       Finalmente tenemos el campo de edición de texto con una barra de herramientas para dar
formato al contenido, agregar, enlaces, imágenes, etc.

         Debajo del campo de edición se pueden ver unos botones, de los que destacan:

   •     Paginación: permite generar un pequeño índice de contenido en una tabla y crear varias
         páginas dentro del mismo artículo. Útil con artículos muy largos.
   •     Leer más: establece el punto del artículo en el que debería aparecer el enlace “Leer más” para
         mostrar el artículo completo.

         Al finalizar nuestro artículo podemos usar las herramientas situadas en la parte superior:

Vista previa                  Nos muestra una vista preliminar de nuestro artículo, sin necesidad
                              de guardarlo o publicarlo.
Guardar                       Guarda el artículo de contenido y sale del editor para regresar al
                              gestor de artículos.
Aplicar                       Guarda el artículo y se queda en el editor.

                              Muy útil cuando tenemos rato editando y sólo queremos guardar los
                              cambios para seguir trabajando.
Cerrar                        Cierra el editor y regresa al gestor de artículos. No guarda ningún
                              cambio.



                                                      38
• Gestión de Extensiones


      En Joomla se suele llamar extensiones al conjunto de componentes, módulos, plugins y también
idiomas y plantillas de acuerdo a la organización de la interfaz de administración.

       A Continuación describiremos cada uno de ellos.
   •   Componentes: son piezas completas de software, que se integran al núcleo de Joomla para
       ofrecer una funcionalidad bastante completa, regularmente tienen acceso a a la base de datos y
       son renderizados en el cuerpo principal de la plantilla.
   •   Módulos: representan pequeños programas distribuidos en bloques que pueden mostrarse en las
       posiciones de la plantilla del sitio y que muestran una información o funcionalidad específica.
   •   Plugins: son pequeñas piezas de software que atienden una funcionalidad muy específica
       dentro del sistema.
   •   Idiomas: son archivos de texto plano con extensión .ini que contienen la traducción de algún
       componente, módulo o plugin.
   •   Plantillas: representan los temas que contienen el diseño y estilo al cual se adaptará el
       contenido.

Instalar extensiones
Antiguamente existía una interfaz de instalación distinta para cada elemento de Joomla, ahora sólo
basta con ir a la pestaña “Extensiones” del menú y luego “Instalar/Desinstalar”.




                             Gráfico: Instalar / Desinstalar extensiones

El menú del “Gestor de Extensiones” posee seis (06) enlaces: Instalar, Componentes, Módulos,
Plugins, Idiomas y Plantillas.


                                                 39
La pestaña Instalar es la que aparece por defecto y desde allí podemos instalar cualquier
extensión, tenemos tres opciones:

       Subir paquete: hacemos clic en el botón examinar y buscamos el archivo en nuestra
computadora, luego hacemos clic en “Subir Archivo & Instalar” y el sistema pondrá todo en su santo
lugar.
       Instalar desde directorio: aquí debemos pasar la ruta completa del archivo en nuestra
computadora, colocándolo en el campo de texto y luego haciendo clic en el botón “Instalar”.

        Instalar desde URL: esta opción nos permite instalar directamente desde un sitio web o
repositorio confiable donde se encuentre la extensión a instalar; el sistema descargará el archivo y lo
instalará.

        Las siguientes pestañas de Componentes, Módulos, Plugins, Idiomas y Plantillas muestran una
lista de las extensiones y dejan la posibilidad de seleccionar y desinstalar las deseadas.


Gestión de módulos


      La administración de los módulos se hace a través del “Gestor de módulos” en la pestaña
“Extensiones”.

       Veremos una interfaz como la siguiente:




                                                  40
Gráfico: Gestor de Módulos

      Desde aquí podremos habilitar o deshabilitar, editar o cambiar la configuración de cualquier
módulo.

Gestión de Plugins


      La administración de los plugins se hace a través del “Gestor de plugins” en la pestaña
“Extensiones”.

      Veremos una interfaz como la siguiente:




                                                41
Gráfico: Gestor de Plugins

          Desde aquí podremos habilitar o deshabilitar, editar o cambiar la configuración de cualquier
plugin.


Gestión de Plantillas


       La administración de las plantillas del sitio se hace a través del “Gestor de plantillas” en la
pestaña “Extensiones”.

          Veremos una interfaz como la siguiente:




                                                    42
Gráfico: Gestor de Plantillas

        Desde aquí podremos habilitar o deshabilitar, editar o cambiar la configuración de cualquier
plantilla.


Gestión de Idiomas


      La administración de los idiomas se hace a través del “Gestor de idiomas” en la pestaña
“Extensiones”.

       Veremos una interfaz como la siguiente:




                                    Gráfico: Gestor de Idiomas

       Desde aquí podremos habilitar o deshabilitar, editar o cambiar la configuración de cualquier
idioma.


                                                 43
Capítulo IV

Optimizando el Sitio Web



Optimización para motores de búsqueda y URLs amigables (SEF/SEO).


         Muy probablemente navegando por algún sitio web usted ha visto algo como esto:

       http://www.sitiowebcualquiera.com/index.php?
ption=com_content&view=article&id=241&catid=43&Itemid=71

       Esta grande y aparentemente incomprensible URL es generada por algún manejador de
contenidos para entenderse él mismo dentro de su lógica y saber qué presentar al usuario, es normal. Lo
que no es normal es que los administradores del sitio web mantengan este tipo de URL visibles al
usuario, obligándolo a ver algo poco estético e imposible de memorizar, adicionalmente tenemos que
decir que los motores de búsqueda aparentemente indexan más rápida y fácilmente las URLs
amigables, es decir, cortas y descriptivas, la URL anterior no es nada descriptiva, no dice nada por si
misma, hay que entrar para ver de qué se trata el contenido.

         Sería mucho mejor algo como:

         http://www.sitiowebcualquiera.com/la-empresa/quienes-somos/

      Gran diferencia, ¿no? Esto es una URL amigable [7] Muy al contrario de lo que piensan muchos,
Joomla ya trae opciones de configuración en la administración del sistema para usar URLs amigables.

         Para activarlas deberás seguir los siguientes pasos:

    1. En el panel de administración ir a “Configuración gobal”.
    2. En la pestaña “Sitio”, buscar al lado derecho la sección “Parámetros de optimización de
       SEO[8]”.




_____
7 Mejor conocidas en inglés como Search Engine Friendly (SEF)
8 Del inglés Search Engine Optimización, en Castellano Optimización para Motores de Búsqueda.


                                                               44
◦ URLs amigables para motores de búsqueda: Permite activar o desactivar esta
        funcionalidad.
      ◦ Usar Apache mod_rewrite: El servidor web apache tiene un módulo que reescribe las
        URLs cuando son solicitadas y les aplica unos filtros predefinidos, si se usa este
        servidor y se tiene este módulo instalado, es recomendable activar esta opción. Sin
        embargo Joomla podría hacerlo sin esto. Al activar esta opción es necesario tener activo
        el archivo htaccess, es decir, hay que renombrar el htaccess.txt que viene en la raíz de
        joomla y llamarlo .htaccess para que apache comience a tomarlo en cuenta.
      ◦ Agregar el sufijo a las URLs: Activando esta opción se le agregará una extensión o
        sufijo a cada URL, regularmente .html.


3. Guardar y probar.




                              Gráfico: Configuración global

  Respaldo y Restauración.


   Para un buen administrador / desarrollador web, los respaldos son un tema importante,

                                            45
tratándose de una empresa u organización es punto fundamental.

      En Joomla existe una extensión suficiente madura y eficiente para tal objetivo, su nombre es
Akeeba Backup[9], veremos como instalarla, configurarla y usarla.

    1. Buscar y descargar la extensión “Akeeba Backup” desde http://extensions.joomla.org.
    2. En el panel de administración de Joomla hacer clic en “Extensiones”, “Instalar / Desinstalar”.
    3. En el primer bloque “Subir paquete”, pulsar el botón “Examinar” y buscar el Akeeba Backup
       descargado anteriormente.
    4. Hacer clic en el botón “Subir Archivo & Instalar”. La aplicación comenzará su proceso de
       instalación.
    5. Si todo salió bien, ir a “Componentes” y luego “Akeeba Backup”.

        Usarlo es muy fácil, podemos dar un paseo por la configuración y ajustar los parámetros que
consideremos necesarios en nuestro caso. Luego bastará con hacer clic en “Backup Now” y el
componente comenzará un inteligente proceso de respaldo. Es altamente recomendable descargar luego
el respaldo y mantenerlo en otro lugar adicional, de hecho, lo ideal serían tres (03) lugares distintos.

       Para restaurar nuestro sitio web en caso de alguna contingencia sólo debemos colocar el
comprimido del respaldo y descomprimirlo en nuestro directorio raíz, luego intentamos acceder desde
el navegador y veremos un instalador muy sencillo y parecido al instalador inicial de Joomla, de esta
forma tendremos en pocos minutos nuestro sitio web totalmente operativo con toda la información del
último respaldo.




_____
9 Antiguamente conocida como JoomlaPack.


                                                   46
Seguridad Básica.


      Hay varios elementos de seguridad que debemos tomar en cuenta en cualquier aplicación web,
Joomla no es la excepción.

        Primero que nada la seguridad de una aplicación web hay que verla por niveles o capas, es
decir, va desde el acceso físico al servidor, pasando por motor de base de datos, el lenguaje de
programación, etc, hasta llegar a la capa 8: el usuario. Hay que tomar en cuenta todos los factores,
porque luego es muy sencillo echarle la culpa a Joomla.

       Partiendo de que ya usted ha tomado medidas de seguridad en el sistema operativo, en el
servidor de base de datos, en el servidor web y en el lenguaje de programación, entonces tome en
cuenta los siguientes aspectos:

   1. Use una contraseña que contenga más de ocho (8) dígitos, minúsculas y mayúsculas, caracteres
      alfanuméricos y signos de puntuación.
   2. Cambie el usuario administrador por defecto, nunca deje admin, coloque y use otro nombre en
      su lugar.
   3. Active y use el archivo de configuración distribuida de apache que viene con Joomla
      (.htaccess). Use URLs amigables.
   4. Mantenga los permisos correctos en los directorios y archivos del sistema. Los archivos
      deberían tener permiso 644 y los directorios 755.
   5. Proteja la interfaz de administración, a través del .htaccess o con alguna extensión para tal
      objetivo.
   6. Mantenga actualizadas las extensiones que tenga instaladas y el sistema Joomla completo,
      regularmente salen actualizaciones de seguridad importantes.




                                                 47
Glosario de Términos
        GPL: General Public License, en castellano Licencia Pública General, es la licencia propuesta
por el proyecto GNU para proteger y liberar el Software Libre.

       PHP: Pre Hipertext Processor, por sus siglas en inglés. Lenguaje de programació.

        Sistema de Gestión de Contenidos: Es el software encargado de administrar los contenidos y
actividad de un sitio web, regularmente conocido en inglés como Content Managment System o
simplemente CMS.
        Software Libre: Es aquel que otorga libertad a sus usuarios; aquel que cumple con las cuatro
libertades esenciales del software: usar, modificar, compartir y distribuir las mejoras.

        Software Privativo: Es aquel que priva de libertad a sus usuarios; aquel que no cumple con las
cuatro libertades esenciales del software: usar, modificar, compartir y distribuir las mejoras.

Referencias Bibliográficas

   •   http://dev.mysql.com/doc/refman/5.0/es
   •   http://community.joomla.org/
   •   http://wikipedia.org
   •   http://docs.joomla.org
   •   http://opensourcematters.org




                                                  48

Más contenido relacionado

La actualidad más candente

La actualidad más candente (12)

Flash8 p pasos
Flash8 p pasosFlash8 p pasos
Flash8 p pasos
 
Repositorios un ejemplo
Repositorios un ejemploRepositorios un ejemplo
Repositorios un ejemplo
 
Manual adobe flash cs3
Manual adobe flash cs3Manual adobe flash cs3
Manual adobe flash cs3
 
Taller g xportal 5.0 v1.2
Taller g xportal 5.0 v1.2Taller g xportal 5.0 v1.2
Taller g xportal 5.0 v1.2
 
My sql query browser
My sql query browserMy sql query browser
My sql query browser
 
Explorador de archivos windows 10
Explorador de archivos windows 10Explorador de archivos windows 10
Explorador de archivos windows 10
 
Dream cs4
Dream cs4Dream cs4
Dream cs4
 
Dreamweaver cs5
Dreamweaver cs5Dreamweaver cs5
Dreamweaver cs5
 
Manual dreamweaver-cs4-espanol-by reparaciondepc.cl
Manual dreamweaver-cs4-espanol-by reparaciondepc.clManual dreamweaver-cs4-espanol-by reparaciondepc.cl
Manual dreamweaver-cs4-espanol-by reparaciondepc.cl
 
Lenguaje objective c
Lenguaje objective cLenguaje objective c
Lenguaje objective c
 
Manual dreamweaver 8 spanish
Manual dreamweaver 8 spanishManual dreamweaver 8 spanish
Manual dreamweaver 8 spanish
 
Windows 10
Windows 10Windows 10
Windows 10
 

Destacado

Destacado (10)

Que Es Un Blog
Que Es Un BlogQue Es Un Blog
Que Es Un Blog
 
El blog diapositiva
El blog diapositivaEl blog diapositiva
El blog diapositiva
 
Pla Local de Joventut 2011-2014
Pla Local de Joventut 2011-2014Pla Local de Joventut 2011-2014
Pla Local de Joventut 2011-2014
 
Molino pintado
Molino pintadoMolino pintado
Molino pintado
 
Dn12 u3 a29_mpjm
Dn12 u3 a29_mpjmDn12 u3 a29_mpjm
Dn12 u3 a29_mpjm
 
Herramientasdegoogle
HerramientasdegoogleHerramientasdegoogle
Herramientasdegoogle
 
Entrada y salida de ficheros
Entrada y salida de ficherosEntrada y salida de ficheros
Entrada y salida de ficheros
 
Plataforma Pasen
Plataforma PasenPlataforma Pasen
Plataforma Pasen
 
Presentación n002,, magd asarmiento
Presentación n002,, magd asarmientoPresentación n002,, magd asarmiento
Presentación n002,, magd asarmiento
 
Diseño Instruccional - Sesión 1
Diseño Instruccional - Sesión 1Diseño Instruccional - Sesión 1
Diseño Instruccional - Sesión 1
 

Similar a Manual cursogobernacion

Guia creacion paginas web
Guia creacion paginas webGuia creacion paginas web
Guia creacion paginas webWebasesor
 
Guide liferay themestraining_lr6.2_v1
Guide liferay themestraining_lr6.2_v1Guide liferay themestraining_lr6.2_v1
Guide liferay themestraining_lr6.2_v1Juan Gallardo Ortiz
 
Manual SEO IDS Soluciones eCommerce
Manual SEO IDS Soluciones eCommerceManual SEO IDS Soluciones eCommerce
Manual SEO IDS Soluciones eCommerceDario Schilman
 
Manual dreamweavercs5
Manual dreamweavercs5Manual dreamweavercs5
Manual dreamweavercs5koki caba
 
WordPress para Gestores de Información - Curso impartido para APEI
WordPress para Gestores de Información - Curso impartido para APEIWordPress para Gestores de Información - Curso impartido para APEI
WordPress para Gestores de Información - Curso impartido para APEIEduardo Fernández
 
Tutorial Openoffice.org base
Tutorial Openoffice.org baseTutorial Openoffice.org base
Tutorial Openoffice.org baseddln
 
Material del curso de creación de sitios web
Material del curso de creación de sitios webMaterial del curso de creación de sitios web
Material del curso de creación de sitios webLuis Galarreta Atoche
 
Dreamweaver 2004
Dreamweaver 2004Dreamweaver 2004
Dreamweaver 2004rovertito
 
Manuaql de dreamweaver
Manuaql de dreamweaverManuaql de dreamweaver
Manuaql de dreamweaverisandy
 
Manual dreamweaver cs5
Manual dreamweaver cs5Manual dreamweaver cs5
Manual dreamweaver cs5Equipo 3
 

Similar a Manual cursogobernacion (20)

Guia creacion paginas web
Guia creacion paginas webGuia creacion paginas web
Guia creacion paginas web
 
Guide liferay themestraining_lr6.2_v1
Guide liferay themestraining_lr6.2_v1Guide liferay themestraining_lr6.2_v1
Guide liferay themestraining_lr6.2_v1
 
Manual SEO IDS Soluciones eCommerce
Manual SEO IDS Soluciones eCommerceManual SEO IDS Soluciones eCommerce
Manual SEO IDS Soluciones eCommerce
 
Manual dreamweavercs5
Manual dreamweavercs5Manual dreamweavercs5
Manual dreamweavercs5
 
Inventarios proceso
Inventarios proceso Inventarios proceso
Inventarios proceso
 
WordPress para Gestores de Información - Curso impartido para APEI
WordPress para Gestores de Información - Curso impartido para APEIWordPress para Gestores de Información - Curso impartido para APEI
WordPress para Gestores de Información - Curso impartido para APEI
 
Lujan.pdf
Lujan.pdfLujan.pdf
Lujan.pdf
 
Abanqerp
AbanqerpAbanqerp
Abanqerp
 
Introduccion a Joomla
Introduccion a JoomlaIntroduccion a Joomla
Introduccion a Joomla
 
Curso Dream Weaver04
Curso Dream Weaver04Curso Dream Weaver04
Curso Dream Weaver04
 
978 84-9839-226-5
978 84-9839-226-5978 84-9839-226-5
978 84-9839-226-5
 
Integracion glpi ocs-otrs-pentaho
Integracion glpi ocs-otrs-pentahoIntegracion glpi ocs-otrs-pentaho
Integracion glpi ocs-otrs-pentaho
 
Tutorial Openoffice.org base
Tutorial Openoffice.org baseTutorial Openoffice.org base
Tutorial Openoffice.org base
 
Tutorial o oobase
Tutorial o oobaseTutorial o oobase
Tutorial o oobase
 
Wix
WixWix
Wix
 
Material del curso de creación de sitios web
Material del curso de creación de sitios webMaterial del curso de creación de sitios web
Material del curso de creación de sitios web
 
Curso dream weaver04
Curso dream weaver04Curso dream weaver04
Curso dream weaver04
 
Dreamweaver 2004
Dreamweaver 2004Dreamweaver 2004
Dreamweaver 2004
 
Manuaql de dreamweaver
Manuaql de dreamweaverManuaql de dreamweaver
Manuaql de dreamweaver
 
Manual dreamweaver cs5
Manual dreamweaver cs5Manual dreamweaver cs5
Manual dreamweaver cs5
 

Más de Daniel Soto

Resumen de la clase 22032014 ADMINISTRACION DE CENTROS DE INFORMATICA EDUCATIVA
Resumen de la clase 22032014 ADMINISTRACION DE CENTROS DE INFORMATICA EDUCATIVAResumen de la clase 22032014 ADMINISTRACION DE CENTROS DE INFORMATICA EDUCATIVA
Resumen de la clase 22032014 ADMINISTRACION DE CENTROS DE INFORMATICA EDUCATIVADaniel Soto
 
Ley de telecomunicaciones
Ley de telecomunicacionesLey de telecomunicaciones
Ley de telecomunicacionesDaniel Soto
 
Convenio cuba venezuela
Convenio cuba venezuelaConvenio cuba venezuela
Convenio cuba venezuelaDaniel Soto
 
Constitución de la república bolivariana de venezuela
Constitución de la república bolivariana de venezuelaConstitución de la república bolivariana de venezuela
Constitución de la república bolivariana de venezuelaDaniel Soto
 
Joche [autoguardado]
Joche [autoguardado]Joche [autoguardado]
Joche [autoguardado]Daniel Soto
 

Más de Daniel Soto (10)

software libre
software libre software libre
software libre
 
Resumen de la clase 22032014 ADMINISTRACION DE CENTROS DE INFORMATICA EDUCATIVA
Resumen de la clase 22032014 ADMINISTRACION DE CENTROS DE INFORMATICA EDUCATIVAResumen de la clase 22032014 ADMINISTRACION DE CENTROS DE INFORMATICA EDUCATIVA
Resumen de la clase 22032014 ADMINISTRACION DE CENTROS DE INFORMATICA EDUCATIVA
 
Ley de telecomunicaciones
Ley de telecomunicacionesLey de telecomunicaciones
Ley de telecomunicaciones
 
Lopna
LopnaLopna
Lopna
 
Lopna
LopnaLopna
Lopna
 
Decreto 3390
Decreto 3390Decreto 3390
Decreto 3390
 
Decreto 825
Decreto 825Decreto 825
Decreto 825
 
Convenio cuba venezuela
Convenio cuba venezuelaConvenio cuba venezuela
Convenio cuba venezuela
 
Constitución de la república bolivariana de venezuela
Constitución de la república bolivariana de venezuelaConstitución de la república bolivariana de venezuela
Constitución de la república bolivariana de venezuela
 
Joche [autoguardado]
Joche [autoguardado]Joche [autoguardado]
Joche [autoguardado]
 

Último

Mujeres que corren con los lobos en la noche.pdf
Mujeres que corren con los lobos en la noche.pdfMujeres que corren con los lobos en la noche.pdf
Mujeres que corren con los lobos en la noche.pdfKeilly Merlo
 
Programación de las Fiestas de San Isidro 2024.pdf
Programación de las Fiestas de San Isidro 2024.pdfProgramación de las Fiestas de San Isidro 2024.pdf
Programación de las Fiestas de San Isidro 2024.pdf20minutos
 
RESUMEN DE LA PELÍCULA DE CHERNOBYL ENFOCADO A MEDICINA DEL TRABAJO
RESUMEN DE LA PELÍCULA DE CHERNOBYL ENFOCADO A MEDICINA DEL TRABAJORESUMEN DE LA PELÍCULA DE CHERNOBYL ENFOCADO A MEDICINA DEL TRABAJO
RESUMEN DE LA PELÍCULA DE CHERNOBYL ENFOCADO A MEDICINA DEL TRABAJOLuisFigueroa230128
 
TRIFOLIO DIA DE LA TIERRA.pdf Perdida libertad y educación social. • Pérdida ...
TRIFOLIO DIA DE LA TIERRA.pdf Perdida libertad y educación social. • Pérdida ...TRIFOLIO DIA DE LA TIERRA.pdf Perdida libertad y educación social. • Pérdida ...
TRIFOLIO DIA DE LA TIERRA.pdf Perdida libertad y educación social. • Pérdida ...univerzalworld
 
EL QUIJOTE.pdf Libro adaptado de la edicion vicens vives de clasicos hispanicoss
EL QUIJOTE.pdf Libro adaptado de la edicion vicens vives de clasicos hispanicossEL QUIJOTE.pdf Libro adaptado de la edicion vicens vives de clasicos hispanicoss
EL QUIJOTE.pdf Libro adaptado de la edicion vicens vives de clasicos hispanicossLucasJohnHuntingford
 
TEXTO CRONOLÓGICO CRONOLÓGICO CRONOLÓGICO .pptx
TEXTO CRONOLÓGICO CRONOLÓGICO CRONOLÓGICO .pptxTEXTO CRONOLÓGICO CRONOLÓGICO CRONOLÓGICO .pptx
TEXTO CRONOLÓGICO CRONOLÓGICO CRONOLÓGICO .pptxAlbertSa3
 

Último (6)

Mujeres que corren con los lobos en la noche.pdf
Mujeres que corren con los lobos en la noche.pdfMujeres que corren con los lobos en la noche.pdf
Mujeres que corren con los lobos en la noche.pdf
 
Programación de las Fiestas de San Isidro 2024.pdf
Programación de las Fiestas de San Isidro 2024.pdfProgramación de las Fiestas de San Isidro 2024.pdf
Programación de las Fiestas de San Isidro 2024.pdf
 
RESUMEN DE LA PELÍCULA DE CHERNOBYL ENFOCADO A MEDICINA DEL TRABAJO
RESUMEN DE LA PELÍCULA DE CHERNOBYL ENFOCADO A MEDICINA DEL TRABAJORESUMEN DE LA PELÍCULA DE CHERNOBYL ENFOCADO A MEDICINA DEL TRABAJO
RESUMEN DE LA PELÍCULA DE CHERNOBYL ENFOCADO A MEDICINA DEL TRABAJO
 
TRIFOLIO DIA DE LA TIERRA.pdf Perdida libertad y educación social. • Pérdida ...
TRIFOLIO DIA DE LA TIERRA.pdf Perdida libertad y educación social. • Pérdida ...TRIFOLIO DIA DE LA TIERRA.pdf Perdida libertad y educación social. • Pérdida ...
TRIFOLIO DIA DE LA TIERRA.pdf Perdida libertad y educación social. • Pérdida ...
 
EL QUIJOTE.pdf Libro adaptado de la edicion vicens vives de clasicos hispanicoss
EL QUIJOTE.pdf Libro adaptado de la edicion vicens vives de clasicos hispanicossEL QUIJOTE.pdf Libro adaptado de la edicion vicens vives de clasicos hispanicoss
EL QUIJOTE.pdf Libro adaptado de la edicion vicens vives de clasicos hispanicoss
 
TEXTO CRONOLÓGICO CRONOLÓGICO CRONOLÓGICO .pptx
TEXTO CRONOLÓGICO CRONOLÓGICO CRONOLÓGICO .pptxTEXTO CRONOLÓGICO CRONOLÓGICO CRONOLÓGICO .pptx
TEXTO CRONOLÓGICO CRONOLÓGICO CRONOLÓGICO .pptx
 

Manual cursogobernacion

  • 1. Desarrollo de Sitios Web con Joomla! CMS Manual del Curso Versión 1.0 1
  • 2. Índice de contenido Copyright (c) 2011 ....................................................................................................................................4 Historial de Cambios .................................................................................................................................5 Introducción ..............................................................................................................................................6 Capítulo I ...................................................................................................................................................6 Sistemas de Gestión de Contenido .......................................................................................................6 ▪ ¿Por qué un Sistema de Gestión de Contenido? ............................................................................6 . Tiempo............................................................................................................................................6 . Seguridad........................................................................................................................................7 ¿Es más seguro desarrollar desde cero el Sitio Web o montarlo sobre un CMS? ................................7 . Escalabilidad...................................................................................................................................8 . Facilidad de uso, administración y mantenimiento........................................................................8 . Independencia del desarrollador.....................................................................................................8 . Economía........................................................................................................................................9 . Calidad. ..........................................................................................................................................9 ▪ Ok, ahora... ¿Por qué Joomla!? .....................................................................................................9 Otras ventajas: ...............................................................................................................................10 Premios ..........................................................................................................................................11 . Características de Joomla! ...........................................................................................................12 Capítulo II ...............................................................................................................................................13 Instalando Joomla! en un entorno local ..............................................................................................13 ▪ Requerimientos técnicos de Joomla! ...........................................................................................13 • Componentes Adicionales ...........................................................................................................13 • Instalación y configuración del Servidor Web Apache . .............................................................13 ▪ Instalación y Configuración del Servidor de Bases de Datos MySQL. ......................................16 ▪Instalación y Configuración del Intérprete del Lenguaje PHP .....................................................16 . Crea la base de datos ....................................................................................................................18 . Instalación de Joomla. .................................................................................................................21 • Tour por el nuevo sitio web .........................................................................................................28 Capítulo III ..............................................................................................................................................29 Administración de Joomla! ................................................................................................................29 ▪ Panel de Control ..........................................................................................................................29 • Gestión del Menú ........................................................................................................................32 • Gestión del Contenido .................................................................................................................35 • Gestión de Extensiones ...............................................................................................................39 Instalar extensiones ............................................................................................................................39 Gestión de módulos ............................................................................................................................40 Gestión de Plugins ..............................................................................................................................41 Gestión de Plantillas ...........................................................................................................................42 Gestión de Idiomas .............................................................................................................................43 2
  • 3. Capítulo IV ..............................................................................................................................................44 Optimizando el Sitio Web ...................................................................................................................44 Optimización para motores de búsqueda y URLs amigables (SEF/SEO). ....................................44 Respaldo y Restauración. ..................................................................................................................45 Seguridad Básica. ...............................................................................................................................47 Glosario de Términos .........................................................................................................................48 3
  • 4. Copyright (c) 2011 Jesús Israel Contreras Urquiola. Permiso para copiar, distribuir y/o modificar este documento bajo los términos de la GNU Free Documentation License, Versión 1.2 o cualquier versión posterior publicada por la Free Software Foundation; sin secciones invariantes, sin textos de portada y sin textos de contraportada. Se incluye una copia de la licencia en la sección titulada “Licencia de Documentación Libre GNU”, sino puede escribir a la Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA o visite la página http://www.gnu.org/licenses/fdl.html. 4
  • 5. Historial de Cambios . Mayo, 2011 Versión 1.0 Publicación Inicial del Documento 5
  • 6. Introducción Haber creado un proyecto por iniciativa de la comunidad, a raíz de que la empresa que patrocinara un popular Sistema de Gestión de Contenido, comenzara a tomar decisiones arbitrarias con respecto al futuro de la aplicación y haber desarrollado mejoras sustanciales al software original, al punto de llegar a reescribir totalmente el código y hacerlo 100% libre, ha hecho, entre otras cosas que Joomla se haya convertido en uno de los CMS más populares en la actualidad. Este taller pretende introducir al participante en los conocimientos básicos necesarios para una implementación exitosa de un sitio web basado en Joomla. Así como también su posterior administración y mantenimiento. El siguiente taller ha sido diseñado con las mejores prácticas y entornos más seguros, profesionales y eficientes. Los ejemplos han sido creados usando aplicaciones y sistemas operativos libres basados en GNU/Linux. Capítulo I Sistemas de Gestión de Contenido . ▪ ¿Por qué un Sistema de Gestión de Contenido? En la actualidad desarrollar sitios web de calidad es una tarea que conlleva una importante cantidad de tiempo, trabajo y dedicación. También depende mucho de las características y alcance del proyecto, pero es probable que en la mayoría de los casos, desarrollar el sitio web sobre una plataforma de gestión de contenidos sea una buena decisión. A continuación veremos algunas razones para usar Sistemas de Gestión de Contenidos en lugar de desarrollar una solución desde cero para nuestro proyecto Web. Pero no sólo usar un CMS, es importante. También lo es asegurarse de que sea software libre, que podamos modificarlo completamente a nuestras necesidades sin restricciones y que tengamos una importante comunidad detrás de la aplicación. . Tiempo. En todos los proyectos – de cualquier índole – juega siempre un papel preponderante el factor tiempo. Los proyectos informáticos y más específicamente la implementación de un sitio web no escapan a ello. 6
  • 7. Desarrollar un sitio web programando todo desde cero tomará una importante cantidad de tiempo, que bien pudiera invertirse en perfeccionar otros aspectos de alta relevancia en el proyecto, como la seguridad, por ejemplo. Usar un sistema de gestión de contenido nos ahorrará una increíble cantidad de tiempo, incluso tomando en cuenta la curva de aprendizaje inicial para alguien que no conozca la herramienta. Adicionalmente, luego de su implementación, seguirá siendo nuestro aliado ahorrándonos considerablemente, tiempo en tareas de administración, mantenimiento y actualización. . Seguridad. En este punto es interesante profundizar, ya que hay muchas opiniones encontradas al respecto. Vale la pena comenzar por la pregunta que probablemente en algún momento te has hecho: ¿Es más seguro desarrollar desde cero el Sitio Web o montarlo sobre un CMS? Algunas respuestas podrían ser... “Los CMS son más inseguros porque el código está disponible y cualquiera puede verlo y comenzar a atacarlo”, “un sitio web desarrollado desde cero por ti mismo es más seguro, porque sólo tú conoces la lógica del programa” y otras. Pero lo cierto es que hoy en día, para la puesta en marcha de un sitio web es casi indiscutible que basarlo en un CMS es mucho más seguro. ¿Las razones? a) Una gran cantidad de expertos a nivel mundial aportan horas de trabajo en torno a desarrollos colaborativos de sistemas de gestión de contenido, esto hace que la aplicación esté bajo la supervisión exhaustiva de todos los desarrolladores involucrados en el proyecto a nivel mundial y que los errores puedan detectarse y ser corregidos rápidamente. Muchas personas piensan y dicen: “eso es muy inseguro, a cada rato sacan una actualización de seguridad”. Todo lo contrario, precisamente, lo dicho anteriormente garantiza que los errores sean corregidos de forma temprana, esto es posible en el software libre. En este punto pudiera salir un distraído diciendo: “Bueno, pero si es así, Windows también saca actualizaciones de seguridad a cada rato” - Sí, el punto fundamental es que ni usted, ni yo conocemos, ni podemos conocer el código fuente de ese sistema operativo, muy por el contrario, los sistemas de gestión de contenido en software libre son auditados por cualquier persona, en cualquier lugar del mundo, así mismo todas y cada una de las actualizaciones de seguridad, en el caso de esas actualizaciones del SO, no se nos permite conocer qué hace realmente esa actualización y eso aplica para TODO el software privativo. b) Al ser un sistema de gestión de contenidos en software libre, seguramente la herramienta será bastante madura y estable, debido a los altos niveles de uso y al constante desarrollo por parte de la comunidad. 7
  • 8. Un sitio web hecho desde cero será un código sólo conocido por una sola o pocas personas y necesitaría de mucho tiempo o muchas desarrolladores para convertirse en una herramienta versátil, madura y estable. c) Es muy poco común en las organizaciones un departamento exclusivamente dedicado a la seguridad de la información. Implementando un sitio web sobre un sistema libre de gestión de contenido, los desarrolladores de la herramienta harán este trabajo por usted, ya que la mayoría tienen equipos de trabajo enfocados a trabajar constantemente en pruebas de seguridad, reportarlas y corregirlas. Adicionalmente estarán todo el resto de los usuarios que usan la misma herramienta y que al detectar y reportar una falla por alguno de ellos toda la comunidad se beneficia. . Escalabilidad. La mayoría de los sistemas de gestión de contenido en software libre son sumamente escalables, esto quiere decir que usted puede fácilmente aumentar la funcionalidad de la herramienta y adaptarla a sus necesidades específicas, regularmente a través de un sistema de plugins o extensiones que permiten que usted pueda, precisamente, extender la funcionalidad original de la aplicación e instalar otras pequeñas aplicaciones, en algunos casos, modificarla hasta convertirla en una aplicación para otro propósito. . Facilidad de uso, administración y mantenimiento. Regularmente cuando un sitio web es desarrollado desde cero no implementa una interfaz para administrar y mantener el sitio, sino que la actualización del mismo es directamente sobre el código fuente, lo que se traduce en un mayor consumo de tiempo en dichas tareas. Por el contrario, contar con un sistema de gestión de contenidos libres, nos brindará la oportunidad de administrar, mantener y actualizar el sitio web de una forma fácil, rápida y transparente para el usuario, es decir, no será necesario tener conocimientos de programación para ejecutar estas acciones. . Independencia del desarrollador. Cuando se implementa un sitio web desarrollado desde cero, regularmente es por iniciativa de una (01) persona, en algunos casos dos (02); luego de invertir una inmensa cantidad de tiempo en el proyecto y colocarlo finalmente en producción, existe la probabilidad, a veces muy frecuente, de que la persona que desarrolló el sitio web, por una u otra razón, deje la empresa o institución y casi el 100% de los casos nunca se deja un manual o centro de conocimiento respecto a la implementación, desarrollo y mantenimiento del sitio. Por lo tanto la lógica del desarrollo sólo la conocía la persona que ya no está y toda la empresa o institución queda dependiente de esa única persona y se encuentra atada y sin poder darle continuidad a la cara digital de la organización. Al final de cuentas entra otra persona a tomar el cargo y al tener presente la misión de darle mantenimiento a un sitio web cuya lógica y código no son de él, tendría que optar por dos soluciones, básicamente: invertir una importante cantidad de tiempo en entender la lógica de la persona que se fue y poder seguir desarrollando y actualizando ese sistema o crear un nuevo desarrollo. Ambas son contraproducentes para la organización. 8
  • 9. . Economía. Con bastante regularidad las aplicaciones de Software Libre, además de otorgar libertad a los usuarios son también gratuitos, esto no es necesario que así sea, pero las empresas u organizaciones que están detrás de dichos productos prefieren basar su modelo de negocios en alternativas más éticas e igual de productivas, como por ejemplo, vender consultoría, soporte, desarrollo, servicios, etc. Al elegir un CMS en Software Libre usted no sólo estará ahorrando tiempo de implementación en su proyecto web, sino también la importante cantidad de dinero que implicaría adquirir una prometedora aplicación de software en una caja y un disco muy llamativo o bien el costo de muchas horas de desarrollo si se decide por una solución desde cero. . Calidad. Aquí entran todas las características de calidad propias de un modelo de desarrollo colaborativo, típico en el Software Libre. Como ya sabemos, un proyecto de desarrollo libre en forma colaborativa está integrado, a menudo, por un equipo multidisciplinario de profesionales voluntarios impulsados por un objetivo común, esto hace que el software sea de gran calidad y que se discutan entre todos las mejores prácticas y el mejor destino de la aplicación. Es decir, las decisiones o enfoques no quedan en manos de unos pocos pertenecientes a una organización privada, sino que son discutidas entre todo el equipo de desarrollo. Esto, unido a todo lo anteriormente mencionado hace que un Sistema de Administración de Contenido Libre sea un producto de gran calidad. Básicamente, como ya dijimos, las ventajas propias del desarrollo de Software Libre en forma colaborativa. ▪ Ok, ahora... ¿Por qué Joomla!? Ya vimos las ventajas de usar un sistema de gestión de contenido (cms) libre, en lugar de implementar un sitio web desde cero. Pero aún queda una importante discusión: ¿Cuál sistema de gestión de contenido puedo usar? Joomla es un Sistema de Gestión de Contenido de Software Libre, escrito en PHP bajo licencia GPL. Desde sus inicios en Agosto del 2005 hasta Enero del 2008 Joomla fue un fork [1] de Mambo que incluía sustanciales mejoras en el software y con la visión de ser un proyecto 100% libre. __________________ 1 Es un término en inglés para describir una bifurcación de un proyecto de software, que regularmente resulta en una copia mejorada de la aplicación original, bajo un nuevo nombre y equipo de desarrollo. 9
  • 10. Hoy en día Joomla se ha separado totalmente del código de Mambo y se ha reescrito la aplicación totalmente, incluyendo paradigmas de orientación a objetos con PHP5, Ajax, abstracción de base de datos, soporte a LDAP, caché mejorado, patrón MVC para el desarrollo de aplicaciones de terceros, soporte a XML- RPC y mucho más, convirtiéndose en el actual Joomla 1.5. x. Actualmente se encuentra en desarrollo la versión de Joomla 1.6, que desde ya puede considerarse un gran salto dentro del proyecto, al implementar mejoras sustanciales en el código, haciéndolo más estable, funcional, liviano y eficiente. Joomla, es uno de los más populares y prestigiosos proyectos de Software Libre del mundo, en el área de los Sistemas de gestión de Contenidos, está licenciado bajo la GNU/GPL y es soportado por la organización OpenSourceMatters y un extenso y nutrido equipo de desarrolladores a lo largo del planeta que trabajan constantemente en la evolución del código. Joomla ha sido implementado en grandes e importantes empresas, muchos centros de educación del mundo y en una extensa cantidad de entes gubernamentales, en Venezuela, por ejemplo, representa la principal plataforma de contenidos de los sitios web del estado. Podemos mencionar por ejemplo: • Fundación del Estado para el Sistema Nacional de las Orquestas Nacionales Juveniles e Infantiles de Venezuela - Fesnojiv. (http://www.fesnojiv.gob.ve) • Centro Nacional de Tecnologías de Información – CNTI (http://www.cnti.gob.ve) • Sistema Nacional de Gestión de Incidentes Telemáticos (http://www.vencert.gob.ve) • Superintendencia Nacional de Servicios de Certificación Electrónica (http://www.suscerte.gob.ve) • Ministerio del Poder Popular para las Industrias Básicas y Minería (http://www.mibam.gob.ve) • Ministerio del Poder Popular para el Trabajo y Seguridad Social (http://www.mintra.gov.ve/) Joomla es 100% escalable, es por eso que hoy en día existen tantos proyectos relacionados y miles de componentes y módulos. Otras ventajas: • Está en español. • Posee una extensa documentación. • Es seguro. • Joomla apunta a ser un CMS universal. • Traducido a más de 128 idiomas. • Más de 100 desarrolladores a lo largo del planeta. • Joomla está valorado en USD$ 2.194.486. • Más de 5.000 extensiones listas para usar. • Según métricas de Joomla se necesitarían aproximadamente 18 Meses y 11 desarrolladores para producir un CMS de tal calidad. • Joomla es también un Framework. • Joomla ha sido descargado más de 10 millones de veces desde su lanzamiento. 10
  • 11. Premios Joomla ha sido galardonado varias veces por varias organizaciones en distintas categorías. 2009 Open Source CMS Award - Best Open Source PHP Content Management System (3er lugar) Open Source CMS Award - Hall Of Fame Award (2do lugar) 2008 Open Source CMS Award - Overall Winner (2do lugar) Open Source CMS Award - Best Open Source PHP Content Management System (2do lugar) 2007 Open Source CMS Award - Overall Winner (2do lugar) Open Source CMS Award - Best Open Source PHP Content Management System (1er lugar) 2006 Open Source CMS Award - Overall Winner (1er lugar) Winner - Best Linux / Open Source Project 2006 at UK LinuxWorld 2005 Winner - Best Linux / Open Source Project 2005 at UK LinuxWorld 11
  • 12. . Características de Joomla! ✔ Es Software Libre. ✔ Posee una extensa comunidad de usuarios y desarrolladores. ✔ Simple Sistema de trabajo. ✔ Sencillo sistema de publicación de contenidos. ✔ Administrador de archivos. ✔ Sindicación de contenidos. ✔ Papelera. ✔ URL's amigables (SEF). ✔ Administración de banners. ✔ Administración de idiomas. ✔ Sistema de caché. ✔ Simple instalación de componentes adicionales. ✔ Poderoso sistema de plantillas (XHTML+CSS+PHP). ✔ Jerarquía de usuarios. ✔ Estadísticas de visitas. ✔ Editor WYSIWYG para los contenidos. ✔ Sistema de encuestas. ✔ Sistema de valoración de contenidos. ✔ Categorización del contenido. ✔ Compatibilidad hacia atrás con versiones anteriores de Joomla. ✔ Registro de usuarios. ✔ Gestión de correos. ✔ Sistema de búsquedas. ✔ Gestión de Menues. ✔ Interfaz gráfica para opciones generales de configuración. ✔ Uso de estándares. ✔ Mucho más... 12
  • 13. Capítulo II Instalando Joomla! en un entorno local ▪ Requerimientos técnicos de Joomla! Para tener un entorno adecuado para la instalación de Joomla se deben tener tres aplicaciones fundamentales, un servidor web, un servidor de base de datos y un intérprete del lenguaje en el que está desarrollado Joomla, en este caso PHP. Aunque hay personas que han logrado correr Joomla en un servidor web IIS, no es recomendable, por el contrario debemos garantizar el ambiente nativo ideal para el CMS, que es el siguiente: • Servidor Web Apache (versión 2 en adelante) • Servidor de Base de Datos MySQL (versión 5 en adelante) • Intérprete del lenguaje PHP (versión 5 en adelante) Debajo de todas estas aplicaciones, evidentemente debe existir un sistema operativo, idealmente Joomla corre en cualquier sistema basado en GNU/Linux, aunque también ha sido probado en sistemas BSD, Mac OSX y Windows. Debes asegurarte que PHP esté compilado con soporte para MySQL y Zlib para poder ejecutar Joomla de forma adecuada. El php que viene empaquetado en la mayoría de las distribuciones de GNU/Linux ya vienen con este soporte. • Componentes Adicionales Si desea tener soporte a SEF [2] URLs o URLs amigables a motores de búsqueda, usted necesitará mod_rewrite habilitado en el servidor web y la habilidad de usar configuraciones distribuidas, para la activación de archivos locales .htaccess. • Instalación y configuración del Servidor Web Apache . Para Instalar apache como servidor web desde GNU/Linux solo debemos abrir una consola, logearnos como root. ________________ 2 Del inglés Search Engine Friendly. 13
  • 14. Para abrir la consola vamos al menú aplicaciones --> Accesorios --> Terminal; esto abrirá una terminal o consola: usuario@nombre del equipo:~$ 14
  • 15. desde allí teclearemos el siguiente comando para logearnos como root o administrador del equipo. $sudo su o $su -s esto dependiendo de la distribución de GNU/Linux que estemos utilizando, este comando nos pedirá que tecleemos la contraseña de administrador. Cuando te logeas como root o administrador del sistema el prompt cambia de $ a # a demás de la dirección de directorio. usuariot@nombre del equipo:/home/usuario# Para instalar apache tecleamos en la consola lo siguiente: #aptitude install apache2 15
  • 16. El sistema retendrá, sugerirá e instalará los paquetes que sean necesarios según su caso. Al final, hará la pregunta: ¿Quiere continuar? [Y/n/?] Al responder “Y” se inicia el proceso de descarga, instalación y configuración de las aplicaciones. ▪ Instalación y Configuración del Servidor de Bases de Datos MySQL. Para instalar un servidor de bases de datos MySQL en nuestro equipo local debemos instalar dos cosas: el servidor y el cliente. En el caso de que no fuese un entorno local en el que trabajaremos, entonces probablemente la aplicación servidor estaría en una máquina remota y nosotros sólo tendríamos que instalar la aplicación cliente para conectarnos. En la mayoría de las distribuciones de GNU/Linux existe un metapaquete [3] llamado mysql-server y mysql-client para instalar las últimas versiones estables del servidor y el cliente de MySQL respectivamente. #aptitude install mysql-server mysql-client Igualmente, después de anunciarle todas las acciones que ejecutará le preguntará: ¿Quiere continuar? [Y/n/?] Finalmente descargará, instalará y configurará todo lo necesario para hacer funcionar lo que usted solicitó. Probablemente, en algún momento de la instalación usted deberá asignar una contraseña para el Superusuario de MySQL (root), recomendamos altamente colocar una buena contraseña. ▪Instalación y Configuración del Intérprete del Lenguaje PHP #aptitude install php5 Al igual que en los procesos de instalación anteriores, aptitude se encargará de hacer todo el trabajo que usted le solicitó. Al finalizar ya debería tener un entorno completamente listo para trabajar. Por favor vaya a http://localhost en su navegador y verifique que el servidor web apache está funcionando. Regularmente muestra el mensaje “It Works”. ______ 3 Contiene o hace un llamado a otros paquetes. 16
  • 17. ▪ Descarga Joomla! Es posible obtener la última versión de Joomla a través de su sitio web oficial: http://www.joomla.org Desde allí descargar el archivo comprimido y guardarlo. Luego deberíamos crear un directorio para nuestra aplicación Joomla en el directorio raíz de apache (document root) , regularmente /var/www/, para esto será necesario tener privilegios de superusuario [4], lo hacemos de esta manera: mkdir /var/www/joomla Donde “joomla” es el nuevo directorio que estamos creando para nuestra aplicación. Luego copiamos el comprimido a ese lugar. cp joomla.tar.gz /var/www/joomla/ Descomprimir el archivo en el mismo directorio. tar -zxvf joomla.tar.gz[5] Luego debemos asegurarnos de que el propietario y grupo del directorio de nuestra aplicación sea el que apache designa para tal función, regularmente: www-data, entonces hacemos: chown -R www-data:www-data /var/www/joomla/ Donde chown es el comando para cambiar el propietario y grupo de un directorio o archivo, -R el parámetro para recursividad, www- data:www-data, propietario y grupo respectivamente y /var/www/joomla el directorio al que queremos aplicar los cambios. __________ 4 En distribuciones como ubuntu y derivados se usa sudo antes del comando que necesitamos ejecutar con privilegios, en Debian y otros nos autenticamos como root antes de ejecutar el comando. 5 En sistemas GNU/Linux también se puede usar “unp” que es capaz de descomprimir cualquier cualquier formato de una forma más amigable. 17
  • 18. . Crea la base de datos . Para crear la base de datos de Joomla en nuestro servidor de BD MySQL debemos seguir los siguientes pasos en el terminal: Para conectarse al servidor, generalmente se le proporcionará a mysql un nombre de usuario y una contraseña. Si el servidor se está ejecutando en un ordenador distinto a donde se está estableciendo la conexión, también se deberá especificar el nombre del host remoto. Una vez indicados los parámetros apropiados, debería poder conectarse des de cualquier herramienta o bien sea desde la consola en este curso vamos a utilizar las dos maneras: Por linea de comandos ( Consola) es de la siguiente manera: shell> mysql -h host -u user -p Enter password: ******** host y user representan el nombre del ordenador donde se está ejecutando el servidor de bases de datos MySQL y el nombre de usuario de la cuenta que se usará para conectarse. Reemplácelos por los valores apropiados para su caso. Los asteriscos (********) representan la contraseña, debe ingresarse cuando mysql muestra Enter password:. Si todo funciona bien, se verá una información de ingreso seguida por el prompt mysql>: shell> mysql -h host -u user -p Enter password: ******** Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 25338 to server version: 5.0.9-beta-standard Type 'help;' or 'h' for help. Type 'c' to clear the buffer. mysql> El prompt anuncia que mysql está listo para procesar comandos. Una vez autenticado en el servidor MySQL pasaremos a crear la base de datos: CREATE DATABASE nombre_base_datos; Indicando que todo está bien el prompt de mysql devolverá algo como lo siguiente: Query OK, 1 row affected (0.07 sec) 18
  • 19. Ahora vamos a crear un usuario especial únicamente para esa base de datos, con todos los privilegios sobre ella. Tip: Un administrador de BD serio jamás usaría el usuario root para una BD, un desarrollador serio tampoco. mysql> GRANT ALL ON unabd.* to usuario IDENTIFIED BY 'miclave'; Query OK, 0 rows affected (0.14 sec) Donde: 'unabd' es el nombre de la base de datos. 'usuario@localhost' es el usuario que estás creando para manejar la base de datos. 'miclave' es la contraseña requerida para el usuario en dicha base de datos. Por último es recomendable recargar las tablas de permisos de MySQL con el comando: flush privileges; quit Para salir y listo. Con estos datos ya podemos comenzar con la instalación de nuestro sitio web en Joomla. Tip: Para todas estas tareas de administración de la BD usted puede usar una variedad de herramientas gráficas, como por ejemplo phpmydamin, mysql-query-browser, entre otras. Nosotros recomendamos trabajar desde el terminal y aprender bien las sentencias SQL. 19
  • 20. Con herramienta Visual usando phpmyadmin. Vamos al navegador web o browser y tecleamos la dirección http://localhost/phpmyadmin o http://127.0.0.1/phpmyadmin Después tecleamos el usuario y la contraseña de esta forma accedemos a nuestro manejador de base de datos, para crear la base de datos y el usuario de la base de datos como lo hicistes desde la shell, pero de una forma visual. 20
  • 21. . Instalación de Joomla. Abrimos un navegador web y nos vamos a http://localhost/joomla, veremos el instalador web de Joomla. Gráfico: Instalador de Joomla – Seleccione su idioma En esta pantalla sólo seleccionamos nuestro idioma y hacemos clic en “siguiente”. En esta pantalla se verifica que todo esté en orden para poder continuar con la instalación correctamente, de acuerdo a todas los requerimientos necesarios para Joomla. 21
  • 22. Gráfico: Instalador de Joomla – Comprobación previa 22
  • 23. En la siguiente pantalla podemos observar que Joomla está distribuido bajo la Licencia Pública General (GPL). Gráfico: Instalador de Joomla – Licencia 23
  • 24. Gráfico: Instalador de Joomla – Configuración de la base de datos En este punto colocaremos la información de la base de datos que creamos anteriormente. 24
  • 25. Gráfico: Instalador de Joomla – Configuración de FTP En esta pantalla tenemos la opción de configurar el servicio de FTP para la gestión de archivos en nuestro Joomla. 25
  • 26. Gráfico: Instalador de Joomla – Configuración principal En esta pantalla debemos suministrar el título del Sitio Web, que será utilizado en la barra superior del navegador cuando visualicemos nuestro sitio, el correo electrónico del administrador, la contraseña y finalmente instalar datos de ejemplo, si lo deseamos. Tip: Es importante asegurarse de colocar una dirección de correo válida, ya que el sistema la usará para enviarnos información y/o recuperar la contraseña. Tip: Recomendamos altamente usar una contraseña adecuada. Por favor tome en cuenta las siguientes sugerencias: • Usar caracteres alfanuméricos. • Usar mayúsculas y minúsculas. 26
  • 27. NO usar “password”, “admin”, “123456”, “joomla” u otras contraseñas obvias. • NO usar el nombre del sitio web, autor o palabras relacionadas fácilmente deducibles. Gráfico: Instalador de Joomla – Finalización ¡Felicidades! Has llegado exitosamente al final de la instalación. Sí, eso es todo, usted puede ahora disfrutar del nuevo sitio web que ha creado. Pero antes, por favor elimine el directorio que contiene los archivos de instalación de Joomla. En nuestro terminal de GNU/Linux podemos hacer lo siguiente con permisos de superusuario. rm -rf /var/www/joomla/installation/ Ahora sí, por favor ingresa a http://localhost/joomla/ para ver el sitio web o visita http://localhost/joomla/administrator para conocer la interfaz de administración de Joomla, usando el usuario 27
  • 28. “admin” y la contraseña que acabas de configurar. • Tour por el nuevo sitio web . Gráfico: Nuevo sitio web en Joomla. En este momento puedes navegar y disfrutar de tu nuevo sitio web. Algunas características visibles a simple vista son: • Menú superior y menú lateral. • Módulo de noticias. • Funciones para enviar a un amigo, guardar PDF e imprimir. • Encuestas. 28
  • 29. Formulario de inicio de sesión. • Campo de búsqueda. • Otros. Capítulo III Administración de Joomla! ▪ Panel de Control Para administrar nuestro nuevo sitio web Joomla debemos ir al directorio “/administrator”, el url completo en este caso sería: http://localhost/joomla/administrator y a continuación veremos la interfaz deacceso. 29
  • 30. Gráfico: Interfaz de acceso al panel de administración Luego de ingresar nuestros datos de acceso (usuario y contraseña creados durante la instalación) podremos entrar satisfactoriamente al panel. 30
  • 31. Gráfico: Pantalla inicial de la interfaz de administración Al entrar veremos la barra superior del menú, que contiene todos los enlaces a las funcionalidades disponibles y a mano derecha cuatro elementos: 1. Un enlace para previsualizar el sitio (front-end). 2. Un indicador de mensajes recibidos. 3. Un indicador de usuarios conectados. 4. Un enlace para cerrar la sesión. Gráfico: Barra de menú Más abajo tenemos un grupo de iconos que representan atajos rápidos a los enlaces del menú más usados y en la parte derecha podemos ver información estadística de interés sobre nuestro sitio. 31
  • 32. Gráfico: Iconos de acceso rápido y módulo de información • Gestión del Menú . Para administrar los distintos menús debemos ir al “Gestor de Menús”, bien sea desde el icono rápido en el Panel de Control o desde la barra de menú superior. 32
  • 33. Gráfico: Gestor de Menús Desde esta pantalla veremos los distintos tipos de menú que tenemos creados, podremos modificarlos, eliminarlos o crear nuevos. Tip: cada vez que se crea un nuevo menú, se crea un módulo del tipo “mod_mainmenu”con el mismo nombre, luego se podrán modificar algunos parámetros del módulo en el menú de Gestor de módulos. Para administrar los enlaces de un menú determinado, por ejemplo “Menú Principal” podemos hacer clic en “Ítems del menú” en esta misma pantalla o ir por el enlace “Menús” y luego “Menú principal”. Nótese que este menú tiene un asterisco al lado del nombre, esto indica que es el menú que actualmente tiene el enlace de inicio predeterminado, asociado a la página principal. Luego podemos ver la barra de herramientas disponible y la lista de enlaces de este menú. El icono “Menús” dirige al “Gestor de Menús” que vimos antes. El icono “Predeterminado” establece el enlace de inicio asociado a la página principal de la web, como ya dijimos antes. El icono “Publicar”, como su nombre lo indica, publica el enlace seleccionado. El icono “Despublicar”, como su nombre lo indica, despublica el enlace seleccionado. Tip: Estas últimas dos acciones también se pueden realizar pulsando directamente sobre el icono ubicado en la columna “publicado” de la lista de enlaces. El tilde verde es publicado y la equis roja despublicado. El icono “Mover” desplaza el enlace seleccionado hasta otro menú. El icono “Copiar” copia el enlace seleccionado a otro menú. A diferencia de mover, esta acción deja una copia en el menú actual. El icono “Papelera” es usado para borrar el enlace. Este elemento irá a la papelera, desde donde luego podrá ser recuperado. El icono “Editar” permite modificar el enlace seleccionado. 33
  • 34. El icono “Nuevo” permite crear un enlace. El icono “Ayuda”, presente siempre, muestra contenido de ayuda de acuerdo al contexto. En el listado de enlaces podemos ver varios campos, veremos su descripción: # Es una numeración simple, permite conocer el número de enlaces. Casilla de verificación Permite seleccionar uno o varios enlaces para ejecutar alguna de las opciones disponibles. Ítem del Menú Representa el título o nombre del enlace. Predeterminado Muestra una estrella en el enlace establecido como el inicio del sitio web. Ordenar Permite cambiar el orden en que aparecen los enlaces del menú. Puede manipularse con las flechas verdes hacia arriba y hacia abajo o colocando el numero en la casilla y luego pulsando el icono de guardar. Acceso Muestra el acceso que tienen los usuarios a ese enlace del menú. Si está Público todos lo podrán ver, si está Registrado, sólo los usuarios registrados podrán ver el enlace. Tipo Muestra el tipo de enlace. Por ejemplo si es un enlace a un artículo, si es un enlace una sección o a un componente. ItemID Representa el número único de identificación para ese elemento. Es usado por el sistema en su manejo interno. Para crear un nuevo enlace en el menú, como ya hemos visto, debemos hacer clic en el icono “Nuevo”, a continuación se nos mostrará una lista de los posibles tipos de enlace que tenemos para crear. Podrían ser hacia un artículo, una sección, una categoría o algunos de los componentes instalados. Al elegir una opción, veremos una segunda pantalla con otro nivel de detalle donde podremos elegir el modo de presentación del enlace. Si detenemos el cursor en las opciones disponibles veremos un texto de ayuda. Finalmente debemos colocar el Título del enlace y un Alias, éste último es usado cuando tenemos URLs amigables (SEF)[6]. La mayoría de las veces será necesario con estos dos campos, además de “Parámetros – Básico” que aparecen a mano derecha. Todos los detalles configurados en el enlace pueden modificarse en cualquier momento. _______ 6 SEF, son las siglas de Search Engine Friendly, en castellano: amigable a motores de búsqueda. 34
  • 35. • Gestión del Contenido . Para administrar el contenido de nuestro sitio web debemos usar el “Gestor de artículos”, accesible desde el enlace de menú “Contenido” en la barra superior o desde el icono con el mismo nombre en el panel de control inicial. Veremos una pantalla como la siguiente. Gráfico: Gestor de artículos Se mostrará la barra de herramientas que hemos explicado antes y adicionalmente las siguientes funciones: Desarchivar Permite eliminar el estado “archivado” a un artículo de contenido. Archivo Permite guardar un artículo de contenido en el archivo. Los artículos archivados no podrán ser usados ni editados a menos que se desarchiven primero. Preferencias Este botón nos muestra todas las preferencias que podemos modificar referente a los artículos, cada ítem muestra una ayuda contextual al detener el cursos sobre él. 35
  • 36. El listado de artículos de contenido tiene varias columnas, a continuación veremos su descripción. # Es una numeración simple, permite conocer el número de artículos de contenido. Casilla de verificación Permite seleccionar uno o varios artículos de contenido para ejecutar alguna de las opciones disponibles. Título Representa el título del artículo de contenido. Publicado Muestra el estatus actual del artículo de contenido. Si está publicado mostrará un icono de revisión verde, si está despublicado mostrará una equis roja. Tip: Se pueden publicar y despublicar artículos fácilmente pulsando este icono, sin necesidad de abrir el contenido. Página Principal Muestra el icono x si el artículo está en la página principal y el icono y si no lo está. Ordenar Permite cambiar el orden en que aparecen los artículos de contenido. Puede manipularse con las flechas verdes hacia arriba y hacia abajo o colocando el numero en la casilla y luego pulsando el icono de guardar. Acceso Muestra el acceso que tienen los usuarios a ese artículo de contenido. Si está Público todos lo podrán ver, si está Registrado, sólo los usuarios registrados podrán ver el contenido. Sección Muestra la sección a la que pertenece al artículo. Categoría Muestra la categoría a la que pertenece el artículo. Autor Muestra el autor o creador del artículo. Fecha Muestra la fecha de creación del artículo. Impresiones Representa el número de veces que ha sido visto el artículo de contenido. ID Representa el número único de identificación para ese elemento. Es usado por el sistema en su manejo interno. Para editar un artículo de contenido hacemos clic encima del título que queremos y a continuación se nos abrirá el editor de contenido. 36
  • 37. Si lo que queremos es crear un nuevo artículo de contenido, entonces haremos clic en el icono “Nuevo” en el “Gestor de Artículos”, igualmente se nos abrirá un editor de contenido. Gráfico: Editar artículo A continuación describimos los campos más relevantes en la creación/edición de artículos de contenido. Título Representa el título del artículo y será el que aparezca publicado en el sitio web. Alias Es usado cuando tenemos URLs amigables en nuestro sitio web (SEF). Regularmente se usa el mismo texto del título. Sección Establece la sección bajo la cual se publicará el artículo. Al seleccionar una sección se cargarán automáticamente las categorías que corresponden. Categoría Establece la categoría bajo la cual se publicará el artículo de contenido. Publicado Establece el estatus del artículo (publicado o no). Esto puede modificarse luego en cualquier momento. Página Principal Establece la publicación del artículo en la página principal. 37
  • 38. A mano derecha tenemos una “Caja de estadísticas” que nos permite conocer rápidamente algunos datos de interés del artículo. Justo debajo, tenemos tres (03) secciones: • Parámetros – Artículo: aquí podemos modificar algunas opciones interesantes como el nivel de acceso, las fechas de creación, publicación e incluso finalización. En la mayoría de los casos no será necesario modificar esto. • Parámetros – Avanzados: en esta sección podemos modificar los parámetros de presentación del artículo, por ejemplo: mostrar u ocultar el autor, la fecha, las opciones de imprimir, enviar a un amigo e imprimir como PDF, entre otros. Estas opciones son configuradas a nivel general para todos los artículos, pero aquí podemos hacerlo exclusivamente para este artículo. • Información de metadatos: los metadatos proporcionan información acerca de elementos en la web, a nivel del código. Esto no lo verán los usuarios en la presentación normal de su sitio web, a menudo son usados por los motores de búsqueda para clasificar e indexar la información. Finalmente tenemos el campo de edición de texto con una barra de herramientas para dar formato al contenido, agregar, enlaces, imágenes, etc. Debajo del campo de edición se pueden ver unos botones, de los que destacan: • Paginación: permite generar un pequeño índice de contenido en una tabla y crear varias páginas dentro del mismo artículo. Útil con artículos muy largos. • Leer más: establece el punto del artículo en el que debería aparecer el enlace “Leer más” para mostrar el artículo completo. Al finalizar nuestro artículo podemos usar las herramientas situadas en la parte superior: Vista previa Nos muestra una vista preliminar de nuestro artículo, sin necesidad de guardarlo o publicarlo. Guardar Guarda el artículo de contenido y sale del editor para regresar al gestor de artículos. Aplicar Guarda el artículo y se queda en el editor. Muy útil cuando tenemos rato editando y sólo queremos guardar los cambios para seguir trabajando. Cerrar Cierra el editor y regresa al gestor de artículos. No guarda ningún cambio. 38
  • 39. • Gestión de Extensiones En Joomla se suele llamar extensiones al conjunto de componentes, módulos, plugins y también idiomas y plantillas de acuerdo a la organización de la interfaz de administración. A Continuación describiremos cada uno de ellos. • Componentes: son piezas completas de software, que se integran al núcleo de Joomla para ofrecer una funcionalidad bastante completa, regularmente tienen acceso a a la base de datos y son renderizados en el cuerpo principal de la plantilla. • Módulos: representan pequeños programas distribuidos en bloques que pueden mostrarse en las posiciones de la plantilla del sitio y que muestran una información o funcionalidad específica. • Plugins: son pequeñas piezas de software que atienden una funcionalidad muy específica dentro del sistema. • Idiomas: son archivos de texto plano con extensión .ini que contienen la traducción de algún componente, módulo o plugin. • Plantillas: representan los temas que contienen el diseño y estilo al cual se adaptará el contenido. Instalar extensiones Antiguamente existía una interfaz de instalación distinta para cada elemento de Joomla, ahora sólo basta con ir a la pestaña “Extensiones” del menú y luego “Instalar/Desinstalar”. Gráfico: Instalar / Desinstalar extensiones El menú del “Gestor de Extensiones” posee seis (06) enlaces: Instalar, Componentes, Módulos, Plugins, Idiomas y Plantillas. 39
  • 40. La pestaña Instalar es la que aparece por defecto y desde allí podemos instalar cualquier extensión, tenemos tres opciones: Subir paquete: hacemos clic en el botón examinar y buscamos el archivo en nuestra computadora, luego hacemos clic en “Subir Archivo & Instalar” y el sistema pondrá todo en su santo lugar. Instalar desde directorio: aquí debemos pasar la ruta completa del archivo en nuestra computadora, colocándolo en el campo de texto y luego haciendo clic en el botón “Instalar”. Instalar desde URL: esta opción nos permite instalar directamente desde un sitio web o repositorio confiable donde se encuentre la extensión a instalar; el sistema descargará el archivo y lo instalará. Las siguientes pestañas de Componentes, Módulos, Plugins, Idiomas y Plantillas muestran una lista de las extensiones y dejan la posibilidad de seleccionar y desinstalar las deseadas. Gestión de módulos La administración de los módulos se hace a través del “Gestor de módulos” en la pestaña “Extensiones”. Veremos una interfaz como la siguiente: 40
  • 41. Gráfico: Gestor de Módulos Desde aquí podremos habilitar o deshabilitar, editar o cambiar la configuración de cualquier módulo. Gestión de Plugins La administración de los plugins se hace a través del “Gestor de plugins” en la pestaña “Extensiones”. Veremos una interfaz como la siguiente: 41
  • 42. Gráfico: Gestor de Plugins Desde aquí podremos habilitar o deshabilitar, editar o cambiar la configuración de cualquier plugin. Gestión de Plantillas La administración de las plantillas del sitio se hace a través del “Gestor de plantillas” en la pestaña “Extensiones”. Veremos una interfaz como la siguiente: 42
  • 43. Gráfico: Gestor de Plantillas Desde aquí podremos habilitar o deshabilitar, editar o cambiar la configuración de cualquier plantilla. Gestión de Idiomas La administración de los idiomas se hace a través del “Gestor de idiomas” en la pestaña “Extensiones”. Veremos una interfaz como la siguiente: Gráfico: Gestor de Idiomas Desde aquí podremos habilitar o deshabilitar, editar o cambiar la configuración de cualquier idioma. 43
  • 44. Capítulo IV Optimizando el Sitio Web Optimización para motores de búsqueda y URLs amigables (SEF/SEO). Muy probablemente navegando por algún sitio web usted ha visto algo como esto: http://www.sitiowebcualquiera.com/index.php? ption=com_content&view=article&id=241&catid=43&Itemid=71 Esta grande y aparentemente incomprensible URL es generada por algún manejador de contenidos para entenderse él mismo dentro de su lógica y saber qué presentar al usuario, es normal. Lo que no es normal es que los administradores del sitio web mantengan este tipo de URL visibles al usuario, obligándolo a ver algo poco estético e imposible de memorizar, adicionalmente tenemos que decir que los motores de búsqueda aparentemente indexan más rápida y fácilmente las URLs amigables, es decir, cortas y descriptivas, la URL anterior no es nada descriptiva, no dice nada por si misma, hay que entrar para ver de qué se trata el contenido. Sería mucho mejor algo como: http://www.sitiowebcualquiera.com/la-empresa/quienes-somos/ Gran diferencia, ¿no? Esto es una URL amigable [7] Muy al contrario de lo que piensan muchos, Joomla ya trae opciones de configuración en la administración del sistema para usar URLs amigables. Para activarlas deberás seguir los siguientes pasos: 1. En el panel de administración ir a “Configuración gobal”. 2. En la pestaña “Sitio”, buscar al lado derecho la sección “Parámetros de optimización de SEO[8]”. _____ 7 Mejor conocidas en inglés como Search Engine Friendly (SEF) 8 Del inglés Search Engine Optimización, en Castellano Optimización para Motores de Búsqueda. 44
  • 45. ◦ URLs amigables para motores de búsqueda: Permite activar o desactivar esta funcionalidad. ◦ Usar Apache mod_rewrite: El servidor web apache tiene un módulo que reescribe las URLs cuando son solicitadas y les aplica unos filtros predefinidos, si se usa este servidor y se tiene este módulo instalado, es recomendable activar esta opción. Sin embargo Joomla podría hacerlo sin esto. Al activar esta opción es necesario tener activo el archivo htaccess, es decir, hay que renombrar el htaccess.txt que viene en la raíz de joomla y llamarlo .htaccess para que apache comience a tomarlo en cuenta. ◦ Agregar el sufijo a las URLs: Activando esta opción se le agregará una extensión o sufijo a cada URL, regularmente .html. 3. Guardar y probar. Gráfico: Configuración global Respaldo y Restauración. Para un buen administrador / desarrollador web, los respaldos son un tema importante, 45
  • 46. tratándose de una empresa u organización es punto fundamental. En Joomla existe una extensión suficiente madura y eficiente para tal objetivo, su nombre es Akeeba Backup[9], veremos como instalarla, configurarla y usarla. 1. Buscar y descargar la extensión “Akeeba Backup” desde http://extensions.joomla.org. 2. En el panel de administración de Joomla hacer clic en “Extensiones”, “Instalar / Desinstalar”. 3. En el primer bloque “Subir paquete”, pulsar el botón “Examinar” y buscar el Akeeba Backup descargado anteriormente. 4. Hacer clic en el botón “Subir Archivo & Instalar”. La aplicación comenzará su proceso de instalación. 5. Si todo salió bien, ir a “Componentes” y luego “Akeeba Backup”. Usarlo es muy fácil, podemos dar un paseo por la configuración y ajustar los parámetros que consideremos necesarios en nuestro caso. Luego bastará con hacer clic en “Backup Now” y el componente comenzará un inteligente proceso de respaldo. Es altamente recomendable descargar luego el respaldo y mantenerlo en otro lugar adicional, de hecho, lo ideal serían tres (03) lugares distintos. Para restaurar nuestro sitio web en caso de alguna contingencia sólo debemos colocar el comprimido del respaldo y descomprimirlo en nuestro directorio raíz, luego intentamos acceder desde el navegador y veremos un instalador muy sencillo y parecido al instalador inicial de Joomla, de esta forma tendremos en pocos minutos nuestro sitio web totalmente operativo con toda la información del último respaldo. _____ 9 Antiguamente conocida como JoomlaPack. 46
  • 47. Seguridad Básica. Hay varios elementos de seguridad que debemos tomar en cuenta en cualquier aplicación web, Joomla no es la excepción. Primero que nada la seguridad de una aplicación web hay que verla por niveles o capas, es decir, va desde el acceso físico al servidor, pasando por motor de base de datos, el lenguaje de programación, etc, hasta llegar a la capa 8: el usuario. Hay que tomar en cuenta todos los factores, porque luego es muy sencillo echarle la culpa a Joomla. Partiendo de que ya usted ha tomado medidas de seguridad en el sistema operativo, en el servidor de base de datos, en el servidor web y en el lenguaje de programación, entonces tome en cuenta los siguientes aspectos: 1. Use una contraseña que contenga más de ocho (8) dígitos, minúsculas y mayúsculas, caracteres alfanuméricos y signos de puntuación. 2. Cambie el usuario administrador por defecto, nunca deje admin, coloque y use otro nombre en su lugar. 3. Active y use el archivo de configuración distribuida de apache que viene con Joomla (.htaccess). Use URLs amigables. 4. Mantenga los permisos correctos en los directorios y archivos del sistema. Los archivos deberían tener permiso 644 y los directorios 755. 5. Proteja la interfaz de administración, a través del .htaccess o con alguna extensión para tal objetivo. 6. Mantenga actualizadas las extensiones que tenga instaladas y el sistema Joomla completo, regularmente salen actualizaciones de seguridad importantes. 47
  • 48. Glosario de Términos GPL: General Public License, en castellano Licencia Pública General, es la licencia propuesta por el proyecto GNU para proteger y liberar el Software Libre. PHP: Pre Hipertext Processor, por sus siglas en inglés. Lenguaje de programació. Sistema de Gestión de Contenidos: Es el software encargado de administrar los contenidos y actividad de un sitio web, regularmente conocido en inglés como Content Managment System o simplemente CMS. Software Libre: Es aquel que otorga libertad a sus usuarios; aquel que cumple con las cuatro libertades esenciales del software: usar, modificar, compartir y distribuir las mejoras. Software Privativo: Es aquel que priva de libertad a sus usuarios; aquel que no cumple con las cuatro libertades esenciales del software: usar, modificar, compartir y distribuir las mejoras. Referencias Bibliográficas • http://dev.mysql.com/doc/refman/5.0/es • http://community.joomla.org/ • http://wikipedia.org • http://docs.joomla.org • http://opensourcematters.org 48