SlideShare una empresa de Scribd logo
1 de 123
Joomla!
             Óliver Centeno Álvarez
                Septiembre 2010




Julio 2010            Joomla!         1
Contenidos
      I.      Instalación de Joomla!
      II.     Gestión y organización de contenidos
      III.    Instalación de extensiones
      IV.     Diseño y aspecto estético de los sitios
              Joomla!
      V.      Menús de Navegación
      VI.     Funciones Adicionales
      VII.    Seguridad



Septiembre 2010                 Joomla!                 2
Contenidos
      I.      Instalación de Joomla!
      II.     Gestión y organización de contenidos
      III.    Instalación de extensiones
      IV.     Diseño y aspecto estético de los sitios
              Joomla!
      V.      Menús de Navegación
      VI.     Funciones Adicionales
      VII.    Seguridad



Septiembre 2010                 Joomla!                 3
I. Instalación de Joomla!
o      Requisitos previos
      o     MySQL 3.23 o superior (recomendado 4.1.22)
      o     Apache 1.3 o superior (recomendado 2.0.61)
      o     PHP 4.3 o superior (recomendado 4.4.7)
            o     Con soporte para MySQL, XML y Zlib (php.ini)
o      No recomendado
      o     PHP 4.3.9, 4.4.2 ni 5.0.4 ya que presentan
            bugs que interfieren la instalación de Joomla!


o      UBUNTU 10 cumple todos los requisitos
Septiembre 2010                     Joomla!                      4
I. Instalación de Joomla!
o      Descarga de Joomla!
      o     http://www.joomla.org/download.html




Septiembre 2010                   Joomla!         5
I. Instalación de Joomla!
o      Comprobar que Apache y PHP funcionan
      1.    Abrir http://localhost/
      2.    Crear un fichero PHP en /var/www

                  <?php
                     phpinfo();
                  ?>


      3.    Extraer el contenido del Joomla en /var/www/joomla
      4.    Abrir http://localhost/joomla




Septiembre 2010                   Joomla!                        6
I. Instalación de Joomla!




Septiembre 2010   Joomla!   7
I. Instalación de Joomla!
o      Tips
      o     Comprobar el acceso a MySQL
            mysql –u <usuario> -p
      o     Crear una base de datos para Joomla!
            CREATE DATABASE joomla;
      o     Crear un usuario para Joomla!
            GRANT ALL ON joomla.* TO <usuario>
            IDENTIFIED BY '<password>';
            FLUSH PRIVILEGES;
      o     Utilizar contraseñas seguras
            o     Entre 6 y 10 caracteres
            o     Mayúsculas, minúsculas, números y caracteres extraños
            o     No legible

Septiembre 2010                      Joomla!                              8
I. Instalación de Joomla!




Septiembre 2010   Joomla!   9
I. Instalación de Joomla!




Septiembre 2010   Joomla!   10
I. Instalación de Joomla!




Septiembre 2010   Joomla!   11
I. Instalación de Joomla!




Septiembre 2010   Joomla!   12
I. Instalación de Joomla!




Septiembre 2010   Joomla!   13
I. Instalación de Joomla!




Septiembre 2010   Joomla!   14
I. Instalación de Joomla!




Septiembre 2010   Joomla!   15
I. Instalación de Joomla!




Septiembre 2010   Joomla!   16
I. Instalación de Joomla!
   Crear el fichero configuration.php
   Eliminar el directorio installation




Septiembre 2010                 Joomla!   17
I. Instalación de Joomla!




Septiembre 2010   Joomla!   18
I. Instalación de Joomla!
   Otras alternativas
         Manualmente crear el fichero configuration.php
                 Clase php con los campos de configuración
                  correspondientes
         Manualmente modificar el script SQL
                 En installation/sql/mysql/joomla.sql
         Usar un panel de control (cPanel, LxAdmin,…)
                 Para instalar Joomla! en sitios de hosting




Septiembre 2010                        Joomla!                 19
Contenidos
      I.      Instalación de Joomla!
      II.     Gestión y organización de contenidos
      III.    Instalación de extensiones
      IV.     Diseño y aspecto estético de los sitios
              Joomla!
      V.      Menús de Navegación
      VI.     Funciones Adicionales
      VII.    Seguridad



Septiembre 2010                 Joomla!                 20
II. Gestión y organización de
    contenidos
o       Página Web




o       CMS (Content Management System)




Septiembre 2010        Joomla!            21
II. Gestión y organización de
    contenidos
o         Menú de administración
      o      Accesible desde la página de inicio
      o      O desde http://localhost/administrator
      o      Usuario "admin" con el password creado
      o      Permite
            o     Añadir y gestionar artículos
            o     Gestionar secciones, menús, página de inicio,…
            o     Crear y gestionar cuentas de usuario
            o     Manejar ficheros multimedia
            o     …


Septiembre 2010                     Joomla!                        22
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       23
II. Gestión y organización de
    contenidos
o         Organización de artículos
      o      Modelo de "periódico"
      o      Sección
            o     Nivel superior de jerarquía de artículos
            o     Por defecto: About, News, FAQs, Newsflashes
      o      Categoría
            o     Nivel inferior de jerarquía de artículos
            o     About Joomla!: Project, CMS, Community
      o      Contenido estático sin categorizar
            o     No jerárquicos ni agrupables
            o     Se muestra como una página separada ¿dónde?
            o     No recomendado!!
Septiembre 2010                     Joomla!                     24
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       25
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       26
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       27
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       28
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       29
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       30
II. Gestión y organización de
    contenidos
o         Gestión de artículos
      o      Article Manager
            o     Filtros por sección y categoría
            o     Filtros por autor y estado de publicación
            o     Filtro textual
      o      Permite
            o     Publicar y retirar artículos
            o     Archivar y desarchivar
            o     Editar artículos
            o     Mover de una categoría a otra
            o     Ordenar por cualquier campo

Septiembre 2010                      Joomla!                  31
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       32
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       33
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       34
II. Gestión y organización de
    contenidos
      Organización Paso A Paso
      1.    Eliminar las secciones, categorías y artículos
            de ejemplo
                 Todos los artículos de cada categoría antes que ésta
                 Todas las categorías de cada sección antes que ésta
                 Papelera de reciclaje (Trash Manager)
      2.    Crear Mis Secciones
                 Section Manager
      3.    Crear Mis Categorías
                 Category Manager
      4.    Crear Mis Artículos
                 Article Manager
Septiembre 2010                      Joomla!                         35
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       36
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       37
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       38
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       39
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       40
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       41
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       42
II. Gestión y organización de
    contenidos
   Tips
         No se pueden eliminar categorías si hay
          artículos en la papelera
         Las categorías no se pueden recuperar (no hay
          papelera de categorías)
         Una vez eliminadas las categorías se pueden
          eliminar las secciones
         No es recomendable conservar artículos no
          publicados o artículos en la papelera
         Mejor hacer copia de seguridad y eliminarlos

Septiembre 2010             Joomla!                   43
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       44
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       45
II. Gestión y organización de
    contenidos
   Crear una sección
         Título: de la sección
         Alias: para que Joomla! la identifique
                 Sin espacios, todo minúscula, sin caracteres raros
                 Se usa como primer subdirectorio de las URLs
         Sección: nombre largo para la sección
         Publicada: indica si se debe publicar
         Acceso: para indicar qué grupos de usuarios pueden ver
          la sección
         Imagen: icono para la sección
         Posición de la imagen: izqda, dcha o centrada
         Detalles: descripción de la sección

Septiembre 2010                         Joomla!                        46
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       47
II. Gestión y organización de
    contenidos
   Crear una categoría
         Título: de la categoría
         Alias: para que Joomla! la identifique
                 Sin espacios, todo minúscula, sin caracteres raros
                 Se usa como segundo subdirectorio de las URLs
                 http://???/alias-seccion/alias-categoria/alias-articulo.html
         Publicada: indica si se debe publicar
         Acceso: para indicar qué grupos de usuarios pueden ver
          la sección
         Imagen: icono para la sección
         Posición de la imagen: izqda, dcha o centrada
         Detalles: descripción de la sección

Septiembre 2010                          Joomla!                                 48
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       49
II. Gestión y organización de
    contenidos
   Editores WYSIWYG
         TinyMCE
                 Sencillo y con buenas propiedades de edición
                 Seleccionado por defecto
                 Máximo artículos de 200KB (~20.000 palabras)
         XStandard Lite
                 Añade más capacidades
                 Preinstalado pero desactivado
                 Requiere un plugin especial en el cliente
         JCE
                 http://www.joomlacontenteditor.net/
                 Instalable como extensión de Joomla!
         Se configuran desde Global Configuration

Septiembre 2010                          Joomla!                 50
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       51
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       52
II. Gestión y organización de
    contenidos
      Instalación JCE
      1.    Descargar el paquete com_jce_1574_package.zip
      2.    Activar permisos de escritura en:
                 <joomla>/tmp
                 <joomla>/plugins
                 <joomla>/components
                 <joomla>/language
                 <joomla>/administrator/components
                 <joomla>/administrator/language
      3.    Ejecutar la instalación de extensiones Joomla!
                 Extensions > Install/Uninstall
      4.    Seleccionar el fichero ZIP descargado
      5.    Activar JCE como editor

Septiembre 2010                        Joomla!               53
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       54
II. Gestión y organización de
    contenidos




Septiembre 2010   Joomla!       55
II. Gestión y organización de
    contenidos
   Creación de artículos
         Título y alias
         Sección y categoría
         Publicado y página frontal (Front Page)
         Autor (usuario) y alias (nombre visible)
         Fechas de creación, publicación y cierre




Septiembre 2010              Joomla!                 56
II. Gestión y organización de
    contenidos
   Parámetros avanzados
         Modifican la configuración
          global de artículos
         Mostrar título
         Usar título como enlace
         Mostrar texto introductorio
         Mostrar nombre de la sección
         Usar nombre de la sección
          como enlace
         Mostrar botones para
          conversión a PDF, imprimir o
          enviar correo
         …

Septiembre 2010                 Joomla!   57
II. Gestión y organización de
    contenidos
   Metainformación
         Se utiliza para los buscadores
         Permite indicar palabras clave,
          descripción, autor,…
         Los spammers han abusado de
          las palabras clave por lo que los
          buscadores las usan poco
         Es mejor poner una buena
          descripción con las palabras
          importantes en ella




Septiembre 2010                   Joomla!     58
II. Gestión y organización de
    contenidos
   El Editor JCE
         Características de procesamiento de texto
                 Fuentes, estilos, listas, cut-copy-paste, párrafos,
                  buscar/reemplazar, indentación, caracteres raros,…
         Características Web
                 Emoticonos, enlaces, sub/superíndices, tablas,…




Septiembre 2010                         Joomla!                         59
II. Gestión y organización de
    contenidos
   Elementos especiales
         Editor de estilos CSS
         Carácter de control de espacios
         Citas, abreviaturas y acrónimos
         Editor de código HTML
         Corrector de ortografía
         Paginación (Pagebreak)
         Leer más… (Read more)
         Eventos JavaScript

Septiembre 2010              Joomla!        60
Contenidos
      I.      Instalación de Joomla!
      II.     Gestión y organización de contenidos
      III.    Instalación de extensiones
      IV.     Diseño y aspecto estético de los sitios
              Joomla!
      V.      Menús de Navegación
      VI.     Funciones Adicionales
      VII.    Seguridad



Septiembre 2010                 Joomla!                 61
III.Instalación de extensiones
o      5 tipos de extensiones
      o     Plugins
      o     Módulos
      o     Componentes
      o     Plantillas
      o     Idiomas
o      Plugins (Menú Extensions > Plugin Manager)
      o     Extensiones más avanzadas
      o     Interceptan y pueden modificar los datos que
            intercambian el usuario y el servidor
      o     Editores WYSIWYG por ej.
      o     Se descargan e instalan, no se crean nuevos
Septiembre 2010                  Joomla!                   62
III.Instalación de extensiones
o      Módulos (Menú Extensions > Modules Manager)
      o     Elementos que muestran información
      o     Pueden aparecer muchos en cada página
      o     Encuestas, login, banners por ej.


o      Componentes (Menú Components)
      o     Más potentes que los módulos
      o     Permiten ejecutar mini-aplicaciones
      o     Generan una página completa, sólo existe 1
      o     Foro o Front Page por ej.



Septiembre 2010                  Joomla!                 63
III.Instalación de extensiones
o         Repositorio de Extensiones. http://extensions.joomla.org/

o         Administración
      o      Advanced Administrator Menu: Permite crear menús nuevos para
             organizar mejor todo
      o      Duplicate Title Aliases: Muestra artículos con alias duplicados
      o      Broken Image Notifier: Manda email al perder una imagen
      o      JPosition: Permite administrar módulos por drag&drop
o         Backup
      o      Akeeba: Backup basado en AJAX con planificador tipo CRON
o         Diagnóstico
      o      JDiagnostic: Pruebas de conexión, configuración, LDAP, AD, SSO,…
o         Eventos
      o      Event Table Edit: Tabla de eventos editable
      o      JEvents: Componente de integración de calendarios de eventos




Septiembre 2010                       Joomla!                               64
III.Instalación de extensiones
o      Imágenes
      o     Art Sexy Lightbox: Módulo para mostrar imágenes
      o     JoomGallery: Componente para galería de imágenes
      o     Phoca gallery: Componente para galería de imágenes
o      Ficheros
      o     eXtplorer: Componente de gestión de ficheros
      o     joomlaExplorer: Gestor de ficheros y FTP
      o     Flash Uploader: Plugin para subir ficheros Flash 10
      o     Random Flash Module: Módulo para mostrar videos Flash
      o     Attachments for articles: Permite añadir adjuntos a los
            artículos
o      Foros
      o     Agora: Componente de foro
      o     Kunena: Componente de foro

Septiembre 2010                   Joomla!                             65
III.Instalación de extensiones
o      Multimedia
      o     JoomLine: Reproductor de MP3
      o     YouTube: Plugin para insertar el reproductor de YouTube
      o     JPlayer: Plugin par reproducir videos
o      Relojes
      o     Art Clock: Añade un reloj a mis páginas
      o     World Time: Muestra la hora de cualquier zona del mundo
      o     AH Countdown: Reloj de cuenta atrás
o      SEF (Search Engine Friendly URLs)
      o     Unicode slugs SEF: Admite URLs con acentos
      o     com_error404: Componente para personalizar errores 404
o      Seguridad
      o     RSFirewall!: Servicio de seguridad para Joomla!
      o     kareebu Secure: Plugin de securización de acceso
      o     Encryption configuration: Codificador RSA para
            contraseñas
Septiembre 2010                    Joomla!                            66
III.Instalación de extensiones
o      Templates
      o     Template Selector: Permite cambiar las plantillas de
            la Web
      o     Template Chooser: Permite cambiar el template en el
            front-end
o      Otros
      o     GoogleMaps: Plugin para mostrar mapas de google
      o     googleSearch: Componente con el buscador Google
      o     OnlineBabyloon: Traductor multi-idioma
      o     J2XML: Componente para importar y exportar a XML
      o     Alfresco Integration: Permite acceder a servicios de
            Alfresco
      o     TweetXT: Módulo para mostrar tweets de tweeter
      o     myApi: API para integración con Facebook
      o     Xmap: Generador de mapas del sitio Web
Septiembre 2010                  Joomla!                       67
Contenidos
      I.      Instalación de Joomla!
      II.     Gestión y organización de contenidos
      III.    Instalación de extensiones
      IV.     Diseño y aspecto estético de los sitios
              Joomla!
      V.      Menús de Navegación
      VI.     Funciones Adicionales
      VII.    Seguridad



Septiembre 2010                 Joomla!                 68
IV. Diseño y aspecto estético de los
    sitios Joomla!
o     6 gestores para el contenido de Joomla!
      o    Section Manager
      o    Category Manager
      o    Front Page manager
      o    Article Manager
      o    Media Manager
      o    Trash Manager
o     ¿Y el aspecto? Template Manager
      o    Permite seleccionar y editar platillas
            o     HTML (PHP) y CSS
      o    Permite modificar la página index
      o    Permite modificar parámetros de las plantillas
Septiembre 2010                      Joomla!                69
IV. Diseño y aspecto estético de los
    sitios Joomla!
o     Template Manager
      o    Administrador de plantillas
            o     Beez
            o     rhuk_milkyway
            o     Khepri
            o     J960
            o     Rumi
            o     …
      o    No permite crear plantillas nuevas
      o    Permite cambiar de plantilla
      o    Mejor usar Template Chooser / Selector
Septiembre 2010                   Joomla!           70
IV. Diseño y aspecto estético de los
    sitios Joomla!
o     Plantillas
      o    templateDetails.xml
            o     Contiene la configuración de la plantilla (nombre, autor,
                  archivos, posiciones, parámetros,…)
      o    index.php
            o     Página principal que muestra controles, módulos y texto
            o     Código PHP
      o    Se guardan en <joomla>/templates/<nombre de la
           plantilla>
      o    Se instalan como otras extensiones
      o    Hay plugins para los diseñadores habituales y Eclipse
      o    Joomla! Template Toolbar genera código sin conocer
           PHP
Septiembre 2010                        Joomla!                                71
IV. Diseño y aspecto estético de los
    sitios Joomla!
o     index.php

      <html>
         <head>
            <!-- incluyo metainformación del sitio -->
            <jdoc:include type="head"/>
         </head>
         <body>
            <jdoc:include type="message" />
            <div class="center" align="center">
            Hola Joomla!!
            </div>
            <!-- habilito la depuración por si acaso -->
            <jdoc:include type="modules" name="debug" />
         </body>
      </html>
Septiembre 2010               Joomla!                      72
IV. Diseño y aspecto estético de los
    sitios Joomla!
o     templateDetails.xml

      <?xml version="1.0" encoding="utf-8"?>
      <install version="1.5" type="template">
         <name>Hola Joomla</name>
         <description>Plantilla sencilla</description>
         <files>
            <filename>index.php</filename>
            <filename>templateDetails.xml</filename>
         </files>
      </install>

Septiembre 2010             Joomla!                      73
IV. Diseño y aspecto estético de los
    sitios Joomla!
o     index.php con Módulos

      <div class="center" align="center">Hola Joomla!! </div>
      <!-- añado módulos predeterminados dentro de una tabla -->
      <table>
         <tr><td>
                 <jdoc:include type="modules"
                         name="user1" style="xhtml" />
         </td></tr>
         <tr><td>
                 <jdoc:include type="modules"
                         name="user2" style="xhtml" />
         </td></tr>
      </table>
      <!-- añado un componente por defecto -->
      <jdoc:include type="component" />



Septiembre 2010                  Joomla!                           74
IV. Diseño y aspecto estético de los
    sitios Joomla!

                                       top

    breadcrumb               user3                   user4


                     user1                   user2


          left    Componente por defecto
                      com_content                right

                          footer
                        syndicate
Septiembre 2010              Joomla!                         75
IV. Diseño y aspecto estético de los
    sitios Joomla!




Septiembre 2010   Joomla!          76
IV. Diseño y aspecto estético de los
    sitios Joomla!
o     index.php con condiciones

      <!-- si el módulo left contiene elementos -->
      <?php if($this->countModules('left')) : ?>
         <jdoc:include type="modules" name="left"
         style="xhtml" />
      <!– y si no -->
      <?php else: ?>
          <div class="center" align="center">Error</div>
      <?php endif; ?>



Septiembre 2010            Joomla!                     77
IV. Diseño y aspecto estético de los
    sitios Joomla!
o     templateDetails.xml con CSS y miniatura

      <?xml version="1.0" encoding="utf-8"?>
      <install version="1.5" type="template">
         <name>Hola Joomla</name>
         <description>Plantilla sencilla</description>
         <files>
            <filename>index.php</filename>
            <filename>templateDetails.xml</filename>
            <filename>template_thumbnail.png</filename>
            <filename>css/estilos.css</filename>
            <filename>images/imagen_del_css.png</filename>
            <filename>params.ini</filename>
         </files>
      </install>


Septiembre 2010               Joomla!                        78
IV. Diseño y aspecto estético de los
    sitios Joomla!
o     index.php con CSS

      <html>
         <head>
            <jdoc:include type="head"/>
            <link rel="stylesheet" type="text/css" href="
                 <?php echo $this->baseurl ?>
                 /templates/holaTemplate/css/estilos.css" />
         </head>
         <body>
            <jdoc:include type="message" />
            <div class="pill" align="center">
            Hola <?php echo $this->params->get('nombre'); ?>
            </div>
         </body>
      </html>
Septiembre 2010               Joomla!                          79
IV. Diseño y aspecto estético de los
    sitios Joomla!
o     templateDetails.xml completo

      <?xml version="1.0" encoding="utf-8"?>
      <install version="1.5" type="template">
         ...
         <!– creo posiciones personalizadas -->
         <positions>
             <position>arriba</position>
             <position>abajo</position>
         </positions>
         <!-- pongo valores configurables a mis parámetros -->
         <params>
             <param name="color" type="list" label="elija color" >
                  <option value="rojo">Rojo</option>
                  <option value="azul">Azul</option>
             </param>
         </params>
      </install>
Septiembre 2010                  Joomla!                             80
IV. Diseño y aspecto estético de los
    sitios Joomla!
o     index.php con validación de documento

      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
         Transitional//EN" "http://www.w3.
         org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?
         php echo $this->language; ?>" lang="<?php echo
         $this->language; ?>" >

         <head>
            ...
         </head>
         <body>
            ...
         </body>
      </html>

Septiembre 2010               Joomla!                       81
Contenidos
      I.      Instalación de Joomla!
      II.     Gestión y organización de contenidos
      III.    Instalación de extensiones
      IV.     Diseño y aspecto estético de los sitios
              Joomla!
      V.      Menús de Navegación
      VI.     Funciones Adicionales
      VII.    Seguridad



Septiembre 2010                 Joomla!                 82
V. Menús de Navegación
o         Menu Manager
      o      Permite crear y agrupar menús
      o      Tipos de menú predefinidos
            o     mainmenu
            o     usermenu
            o     topmenu
      o      Cada menú contiene items de menú jerárquicos
            o     Cada item tiene un padre (menú u otro item)
            o     Cada item es de un tipo que indica su enlace
            o     No conviene tener muchos niveles
      o      Se configuran los menús como módulos
            o     mod_mainmenu


Septiembre 2010                       Joomla!                    83
V. Menús de Navegación




Septiembre 2010   Joomla!   84
V. Menús de Navegación




Septiembre 2010   Joomla!   85
V. Menús de Navegación
o         Module Manager
      o      Permite crear y agrupar menús
      o      Tipos de menú predefinidos
            o     mainmenu
            o     usermenu
            o     topmenu
      o      Cada menú contiene items de menú jerárquicos
            o     Cada item tiene un padre (menú u otro item)
            o     Cada item es de un tipo que indica su enlace
            o     No conviene tener muchos niveles
      o      Se configuran los menús como módulos
            o     mod_mainmenu


Septiembre 2010                       Joomla!                    86
V. Menús de Navegación




Septiembre 2010   Joomla!   87
V. Menús de Navegación




Septiembre 2010   Joomla!   88
Contenidos
      I.      Instalación de Joomla!
      II.     Gestión y organización de contenidos
      III.    Instalación de extensiones
      IV.     Diseño y aspecto estético de los sitios
              Joomla!
      V.      Menús de Navegación
      VI.     Funciones Adicionales
      VII.    Seguridad



Septiembre 2010                 Joomla!                 89
VI. Funciones Adicionales
o      Global Configuration
      o     Site
            o     Permite configurar parámetros de la Web
            o     Estado, nombre, editor, metainformación,…
      o     System
            o     Permite configurar el funcionamiento del servidor
            o     Caché, ficheros, registro de usuarios, sesiones,…
      o     Server
            o     Permite configurar parámetros de Joomla! Server
            o     Base de datos, FTP, SSL, mail, locale,…


Septiembre 2010                     Joomla!                           90
VI. Funciones Adicionales




Septiembre 2010   Joomla!   91
VI. Funciones Adicionales
o      User Manager
      o     Grupos: Front-end y Back-end (admin)
      o     Registrado: Lectores de contenido privado
      o     Autor: Pueden crear y modificar sus artículos
      o     Editor: Puede editor artículos de otros
      o     Publicador: Puede publicar/retirar contenidos
      o     Gestor: Puede gestionar secciones y categorías
      o     Administrador: Puede instalar extensiones, cambiar
            plantillas y cambiar permisos de usuarios
      o     Super Administrador: root
o      Bridges
      o     Para autenticar contra otros sistemas
      o     LDAP, AD, Gmail,…
Septiembre 2010                  Joomla!                         92
VI. Funciones Adicionales




Septiembre 2010   Joomla!   93
VI. Funciones Adicionales
o      ACL
      o     Access Control List
      o     Joomla lo implementa complementado con ARO
            (Access Request Objects)
      o     Muy complicado con tablas raras
      o     Estructura en forma de árbol de los grupos
      o     Recomendado: noixACL
            o     Componente
            o     Adaptadores
            o     Módulo




Septiembre 2010                 Joomla!                  94
VI. Funciones Adicionales




Septiembre 2010   Joomla!   95
VI. Funciones Adicionales




Septiembre 2010   Joomla!   96
VI. Funciones Adicionales
o      Community Builder
      o     Reemplaza el módulo de login y la gestión de usuarios
            de Joomla (desactivarlos)
      o     Permite añadir campos a la tabla de usuarios
      o     Permite crear listas de los usuarios
      o     Incluye sus propios plugins
            o     Google Maps, IM, PonyGalley, seguimiento de sesiones,…
      o     Incluye herramientas de sincronización y carga de
            datos
      o     Extensiones
            o     Compofiler: Componente principal
            o     CBlogin: Módulo de registro y login
            o     mod_comprofileronline: Módulo de usuarios conectados


Septiembre 2010                      Joomla!                             97
VI. Funciones Adicionales




Septiembre 2010   Joomla!   98
VI. Funciones Adicionales
o      Community Builder
      o     Gestión de usuarios
      o     Gestión de campos
      o     Gestión de listas (grupos de usuarios)
      o     Gestión de plugins
      o     Herramientas
            o     Carga de datos de prueba
            o     Sincronización de usuarios
            o     Tests de integridad
      o     Configuración

Septiembre 2010                     Joomla!          99
VI. Funciones Adicionales




Septiembre 2010   Joomla!   100
VI. Funciones Adicionales
o      Creación de Módulos
      o     Al igual que las plantillas se componen de
            o     un fichero de código PHP
            o     un XML de configuración
      o     El fichero XML es similar al de la plantilla
      o     El nombre no es relevante (mod_modulo.xml)
      o     El fichero PHP es directamente código ejecutable
            o     Clase JText::_('texto') permite que se intercepte el texto
                  con un plugin de traducción
            o     Clase JFactory permite crear objetos (patrón factoría)
            o     Concatenación con punto '.'



Septiembre 2010                        Joomla!                             101
VI. Funciones Adicionales
o      mod_mimodulo.xml

      <?xml version="1.0" encoding="utf-8" ?>
      <install version="1.5" type="module">
          <name>Módulo de prueba</name>
          <author>Yo mismo</author>
          <creationDate>Jul 7, 2010</creationDate>
          <version>1.5</version>
          <description>Un plugin de autenticación</description>
          <files>
             <filename module="MiModulo">mod_mimodulo.php</filename>
          </files>
          <params>
             <param name="campo" type="text" default="username"/>
          </params>
      </install>

Septiembre 2010                  Joomla!                          102
VI. Funciones Adicionales
o      mod_mimodulo.php

      <?php
          defined('_JEXEC') or die('Acceso restringido');
          $db =& JFactory::getDBO(); //accedo a la BBDD de Joomla!
          $query = 'SELECT * FROM #__users';
          $db->setQuery($query);
          echo "<table border=1>";
          echo "<tr><td>Usuario</td><td>Password</td></tr>";
          foreach($db->loadObjectList() as $row){
             echo "<tr><td><a href='mailto:". $row->email . "'>";
             echo $row->username ."</a></td>";
             echo "<td>". $row->password ."</td></tr>";
          }
          echo "</table>";
      ?>

Septiembre 2010                  Joomla!                             103
VI. Funciones Adicionales
o      Creación de Plugins
      o     Clase PHP que extiende la clase JPlugin
      o     Con un nombre especial
            o     <tipo de plugin><nombre del plugin>
            o     Para autenticación: plgAuthentication + MiPlugin
      o     Debe tener un constructor
            o     function plgAuthenticationMiPlugin(& $subject)
      o     Y al menos un método según el tipo de plugin
            o     Para autenticación:
            o     function onAuthenticate($creds, $opts, &$resp)
      o     Fichero XML de configuración
            o     Similar al de templates

Septiembre 2010                        Joomla!                       104
VI. Funciones Adicionales
o      miplugin.xml

      <?xml version="1.0" encoding="utf-8" ?>
      <install version="1.5" type="plugin" group="authentication">
          <name>Authentication - Myauth</name>
          <author>Yo mismo</author>
          <creationDate>Jul 7, 2010</creationDate>
          <version>1.5</version>
          <description>Un plugin de autenticación</description>
          <files>
             <filename plugin="miplugin">miplugin.php</filename>
          </files>
      </install>



Septiembre 2010                  Joomla!                             105
VI. Funciones Adicionales
o      miplugin.php

      <?php
      defined('_JEXEC') or die(); jimport('joomla.event.plugin');
      class plgAuthenticationMiPlugin{
          function plgAuthenticationMiPlugin(& $subject){
             parent::__construct($subject);
          }
          function onAuthenticate($creds, $opts, &$resp){
             $db =& JFactory::getDBO();
             $query = 'SELECT ... user='.$db->quote($creds['usuario']);
             $db->setQuery($query);
             $result = $db->loadResult();
             if(/* comprobación del password correcta */){
                   $email = JUser::getInstance($result);
                   $response->email = $email->email;
                   $response->status = JAUTHENTICATE_STATUS_SUCCESS;
      }}}
      ?>


Septiembre 2010                     Joomla!                               106
Contenidos
      I.      Instalación de Joomla!
      II.     Gestión y organización de contenidos
      III.    Instalación de extensiones
      IV.     Diseño y aspecto estético de los sitios
              Joomla!
      V.      Menús de Navegación
      VI.     Funciones Adicionales
      VII.    Seguridad



Septiembre 2010                 Joomla!                 107
VII.Seguridad
o      Premisas
      o     Joomla! es fácil de instalar y administrar
      o     Es fácil dejar puertas abiertas
            o     Permisos sobre directorios
            o     Carpeta installation
            o     Fichero configuration.php
            o     phpInfo()
            o     Cuenta admin de Joomla!
o      Utilidades
      o     PHP mod_security y mod_rewrite (en Apache)
      o     SEF
      o     Joomla! Tools Suite

Septiembre 2010                       Joomla!            108
VII.Seguridad




Septiembre 2010   Joomla!   109
VII.Seguridad
o      Joomla! Tools Suite
      o     Web que comprueba distintas configuraciones
            de seguridad
      o     Copiar a <joomla>/jts
      o     Existe un componente para Joomla! 1.0
      o     Modo “heredado” (legacy) para poder usarlo
            o     Plugin “System – legacy”
      o     Añade distintas auditorías del sistema
      o     No repara los agujeros de seguridad
      o     La compatibilidad hacia atrás puede afectar a
            otros módulos y componentes

Septiembre 2010                     Joomla!             110
VII.Seguridad




Septiembre 2010   Joomla!   111
VII.Seguridad




Septiembre 2010   Joomla!   112
VII.Seguridad
o      Joomla Authentication Tools (plugins LDAP)
      o     Authentication – LDAP
            o     Configuración básica contra el servidor
      o     Authentication – Advanced LDAP
            o     Habilita/deshabilita sincronización de usuarios
      o     User – LDAP
            o     Configuración de parámetros DN, CN, GID, UID,…
      o     User Source – LDAP
            o     Mapeo configurable de grupos usuarios LDAP-Joomla!
      o     User Source – Session
            o     Para usar con SSO y obtener datos del usuario de la
                  sesión
      o     JDiagnostics

Septiembre 2010                        Joomla!                          113
VII.Seguridad




Septiembre 2010   Joomla!   114
VII.Seguridad




Septiembre 2010   Joomla!   115
VII.Seguridad




Septiembre 2010   Joomla!   116
VII.Seguridad




Septiembre 2010   Joomla!   117
VII.Seguridad
o      Notas AD
      o     En AD se usa el nombre de usuario como DN
      o     Configuración recomendada:
            o     host=ad.joomla.org
            o     port=389    (o 3268 si aloja varios dominios)
            o     use_ldapV3=1
            o     negotiate_tls=0
            o     no_referrals=0
            o     auth_method=search
            o     base_dn=DC=joomla,DC=org
            o     search_string=sAMAccountName=[search]
            o     users_dn=CN=[username],CN=Users,DC=joomla,DC=org
            o     username=admin
            o     password=password
            o     ldap_fullname=displayName
            o     ldap_email=mail
            o     ldap_uid=sAMAccountName

Septiembre 2010                       Joomla!                        118
VII.Seguridad
o      Notas AD
      o     En Authentication – LDAP
      o     Configurar los parámetros
            del plugin tal y como se
            indica en la página anterior
      o     Válido para Joomla! 1.5




Septiembre 2010                   Joomla!   119
VII.Seguridad
o      Notas OpenLDAP
      o     Configuración de ejemplo:
            o     host=horloge.pasamio.homelinux.net
            o     port=389    (o 3268 si aloja varios dominios)
            o     use_ldapV3=1
            o     negotiate_tls=0
            o     no_referrals=0
            o     auth_method=search
            o     base_dn=dc=pasamio,dc=homelinux,dc=net
            o     search_string=uid=[search]
            o     users_dn=uid=[username],ou=users,dc=pasamio,
                         dc=homelinux,dc=net
            o     username=
            o     password=
            o     ldap_fullname=fullName
            o     ldap_email=mail
            o     ldap_uid=uid


Septiembre 2010                       Joomla!                     120
VII.Seguridad
o      Notas OpenLDAP
      o     En Authentication – LDAP
      o     Configurar los parámetros
            del plugin tal y como se
            indica en la página anterior
      o     Válido para Joomla! 1.5




Septiembre 2010                   Joomla!   121
VII.Seguridad
o      Notas Mapeo de Grupos (User Source – LDAP)
      o     Formato
              grupoLDAP;IDgrupoJoomla;TipoUsuarioJoomla;Prioridad
      o     Un usuario miembro de 2 grupos se resuelve por prioridad
      o     Tabla de grupos Joomla! por defecto




Septiembre 2010                     Joomla!                            122
Muchas Gracias
             Óliver Centeno Álvarez




Julio 2010            Joomla!         123

Más contenido relacionado

Destacado (11)

Azure
AzureAzure
Azure
 
Spring framework 3
Spring framework 3Spring framework 3
Spring framework 3
 
Liferay
LiferayLiferay
Liferay
 
Herramientas Java
Herramientas JavaHerramientas Java
Herramientas Java
 
Red Hat Enterprise Linux 5
Red Hat Enterprise Linux 5Red Hat Enterprise Linux 5
Red Hat Enterprise Linux 5
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
TFS 10
TFS 10TFS 10
TFS 10
 
Métrica v3 y RUP
Métrica v3 y RUPMétrica v3 y RUP
Métrica v3 y RUP
 
SOA y Web Services
SOA y Web ServicesSOA y Web Services
SOA y Web Services
 
JavaFX 2
JavaFX 2JavaFX 2
JavaFX 2
 
Web services y java
Web services y javaWeb services y java
Web services y java
 

Similar a Joomla!

Iniciojoomla
IniciojoomlaIniciojoomla
Iniciojoomlautez
 
Clase practica joomla
Clase practica joomlaClase practica joomla
Clase practica joomlahectorabrego
 
Desarrollo rápido de páginas web con Joomla!
Desarrollo rápido de páginas web con Joomla!Desarrollo rápido de páginas web con Joomla!
Desarrollo rápido de páginas web con Joomla!Remigio Salvador Sánchez
 
Manual pagina web
Manual pagina webManual pagina web
Manual pagina webruby1913
 
Joomla Curso Noviembre
Joomla Curso NoviembreJoomla Curso Noviembre
Joomla Curso NoviembreÁngel Puente
 
Joomla! Curso Noviembre
Joomla! Curso NoviembreJoomla! Curso Noviembre
Joomla! Curso NoviembreÁngel Puente
 
Curso de Blogs del IES Martín Aldehuela. Sesión 1
Curso de Blogs del IES Martín Aldehuela. Sesión 1Curso de Blogs del IES Martín Aldehuela. Sesión 1
Curso de Blogs del IES Martín Aldehuela. Sesión 1aramosprofe
 
PresentacióN Joomla
PresentacióN JoomlaPresentacióN Joomla
PresentacióN JoomlaRaysa Jimenez
 
Taller Práctico: ¿Cómo usar mi sitio web corporativo? Parte I Crea Resultados
Taller Práctico: ¿Cómo usar  mi sitio web corporativo? Parte I Crea ResultadosTaller Práctico: ¿Cómo usar  mi sitio web corporativo? Parte I Crea Resultados
Taller Práctico: ¿Cómo usar mi sitio web corporativo? Parte I Crea ResultadosArgosInnova
 
1mp 6 Todo Lo Que Necesitas Saber Para Publicar Articulos En El Portal
1mp 6 Todo Lo Que Necesitas Saber Para Publicar Articulos En El Portal1mp 6 Todo Lo Que Necesitas Saber Para Publicar Articulos En El Portal
1mp 6 Todo Lo Que Necesitas Saber Para Publicar Articulos En El PortalMario Lopez
 
Joomla Curso Noviembre
Joomla Curso NoviembreJoomla Curso Noviembre
Joomla Curso Noviembrejomyto
 
Instituto tecnológico superior
Instituto tecnológico superiorInstituto tecnológico superior
Instituto tecnológico superiorJuanKarlos91
 
Joomla! en 10 minutos - JoomlaDay Sevilla 2015
Joomla! en 10 minutos  - JoomlaDay Sevilla 2015Joomla! en 10 minutos  - JoomlaDay Sevilla 2015
Joomla! en 10 minutos - JoomlaDay Sevilla 2015Carlos M. Cámara
 

Similar a Joomla! (20)

Manual de joomla
Manual de joomlaManual de joomla
Manual de joomla
 
Manual de joomla
Manual de joomlaManual de joomla
Manual de joomla
 
Iniciojoomla
IniciojoomlaIniciojoomla
Iniciojoomla
 
Cms joobla
Cms jooblaCms joobla
Cms joobla
 
Clase practica joomla
Clase practica joomlaClase practica joomla
Clase practica joomla
 
Desarrollo rápido de páginas web con Joomla!
Desarrollo rápido de páginas web con Joomla!Desarrollo rápido de páginas web con Joomla!
Desarrollo rápido de páginas web con Joomla!
 
07 Joomla. Contenidos
07 Joomla. Contenidos07 Joomla. Contenidos
07 Joomla. Contenidos
 
Joomla 2
Joomla 2Joomla 2
Joomla 2
 
Manual pagina web
Manual pagina webManual pagina web
Manual pagina web
 
Joomla Curso Noviembre
Joomla Curso NoviembreJoomla Curso Noviembre
Joomla Curso Noviembre
 
Joomla! Curso Noviembre
Joomla! Curso NoviembreJoomla! Curso Noviembre
Joomla! Curso Noviembre
 
Curso de Blogs del IES Martín Aldehuela. Sesión 1
Curso de Blogs del IES Martín Aldehuela. Sesión 1Curso de Blogs del IES Martín Aldehuela. Sesión 1
Curso de Blogs del IES Martín Aldehuela. Sesión 1
 
Joomla Basico
Joomla BasicoJoomla Basico
Joomla Basico
 
PresentacióN Joomla
PresentacióN JoomlaPresentacióN Joomla
PresentacióN Joomla
 
Taller Práctico: ¿Cómo usar mi sitio web corporativo? Parte I Crea Resultados
Taller Práctico: ¿Cómo usar  mi sitio web corporativo? Parte I Crea ResultadosTaller Práctico: ¿Cómo usar  mi sitio web corporativo? Parte I Crea Resultados
Taller Práctico: ¿Cómo usar mi sitio web corporativo? Parte I Crea Resultados
 
1mp 6 Todo Lo Que Necesitas Saber Para Publicar Articulos En El Portal
1mp 6 Todo Lo Que Necesitas Saber Para Publicar Articulos En El Portal1mp 6 Todo Lo Que Necesitas Saber Para Publicar Articulos En El Portal
1mp 6 Todo Lo Que Necesitas Saber Para Publicar Articulos En El Portal
 
II Jornadas Tic. Joomla
II Jornadas Tic. JoomlaII Jornadas Tic. Joomla
II Jornadas Tic. Joomla
 
Joomla Curso Noviembre
Joomla Curso NoviembreJoomla Curso Noviembre
Joomla Curso Noviembre
 
Instituto tecnológico superior
Instituto tecnológico superiorInstituto tecnológico superior
Instituto tecnológico superior
 
Joomla! en 10 minutos - JoomlaDay Sevilla 2015
Joomla! en 10 minutos  - JoomlaDay Sevilla 2015Joomla! en 10 minutos  - JoomlaDay Sevilla 2015
Joomla! en 10 minutos - JoomlaDay Sevilla 2015
 

Más de Oliver Centeno

Más de Oliver Centeno (6)

Metodologías ágiles
Metodologías ágilesMetodologías ágiles
Metodologías ágiles
 
Enterprise Library 5
Enterprise Library 5Enterprise Library 5
Enterprise Library 5
 
MSS 2010
MSS 2010MSS 2010
MSS 2010
 
PMP, Project Management Professional
PMP, Project Management ProfessionalPMP, Project Management Professional
PMP, Project Management Professional
 
Hibernate
HibernateHibernate
Hibernate
 
OSGi
OSGiOSGi
OSGi
 

Último

EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 

Último (11)

EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 

Joomla!

  • 1. Joomla! Óliver Centeno Álvarez Septiembre 2010 Julio 2010 Joomla! 1
  • 2. Contenidos I. Instalación de Joomla! II. Gestión y organización de contenidos III. Instalación de extensiones IV. Diseño y aspecto estético de los sitios Joomla! V. Menús de Navegación VI. Funciones Adicionales VII. Seguridad Septiembre 2010 Joomla! 2
  • 3. Contenidos I. Instalación de Joomla! II. Gestión y organización de contenidos III. Instalación de extensiones IV. Diseño y aspecto estético de los sitios Joomla! V. Menús de Navegación VI. Funciones Adicionales VII. Seguridad Septiembre 2010 Joomla! 3
  • 4. I. Instalación de Joomla! o Requisitos previos o MySQL 3.23 o superior (recomendado 4.1.22) o Apache 1.3 o superior (recomendado 2.0.61) o PHP 4.3 o superior (recomendado 4.4.7) o Con soporte para MySQL, XML y Zlib (php.ini) o No recomendado o PHP 4.3.9, 4.4.2 ni 5.0.4 ya que presentan bugs que interfieren la instalación de Joomla! o UBUNTU 10 cumple todos los requisitos Septiembre 2010 Joomla! 4
  • 5. I. Instalación de Joomla! o Descarga de Joomla! o http://www.joomla.org/download.html Septiembre 2010 Joomla! 5
  • 6. I. Instalación de Joomla! o Comprobar que Apache y PHP funcionan 1. Abrir http://localhost/ 2. Crear un fichero PHP en /var/www <?php phpinfo(); ?> 3. Extraer el contenido del Joomla en /var/www/joomla 4. Abrir http://localhost/joomla Septiembre 2010 Joomla! 6
  • 7. I. Instalación de Joomla! Septiembre 2010 Joomla! 7
  • 8. I. Instalación de Joomla! o Tips o Comprobar el acceso a MySQL mysql –u <usuario> -p o Crear una base de datos para Joomla! CREATE DATABASE joomla; o Crear un usuario para Joomla! GRANT ALL ON joomla.* TO <usuario> IDENTIFIED BY '<password>'; FLUSH PRIVILEGES; o Utilizar contraseñas seguras o Entre 6 y 10 caracteres o Mayúsculas, minúsculas, números y caracteres extraños o No legible Septiembre 2010 Joomla! 8
  • 9. I. Instalación de Joomla! Septiembre 2010 Joomla! 9
  • 10. I. Instalación de Joomla! Septiembre 2010 Joomla! 10
  • 11. I. Instalación de Joomla! Septiembre 2010 Joomla! 11
  • 12. I. Instalación de Joomla! Septiembre 2010 Joomla! 12
  • 13. I. Instalación de Joomla! Septiembre 2010 Joomla! 13
  • 14. I. Instalación de Joomla! Septiembre 2010 Joomla! 14
  • 15. I. Instalación de Joomla! Septiembre 2010 Joomla! 15
  • 16. I. Instalación de Joomla! Septiembre 2010 Joomla! 16
  • 17. I. Instalación de Joomla!  Crear el fichero configuration.php  Eliminar el directorio installation Septiembre 2010 Joomla! 17
  • 18. I. Instalación de Joomla! Septiembre 2010 Joomla! 18
  • 19. I. Instalación de Joomla!  Otras alternativas  Manualmente crear el fichero configuration.php  Clase php con los campos de configuración correspondientes  Manualmente modificar el script SQL  En installation/sql/mysql/joomla.sql  Usar un panel de control (cPanel, LxAdmin,…)  Para instalar Joomla! en sitios de hosting Septiembre 2010 Joomla! 19
  • 20. Contenidos I. Instalación de Joomla! II. Gestión y organización de contenidos III. Instalación de extensiones IV. Diseño y aspecto estético de los sitios Joomla! V. Menús de Navegación VI. Funciones Adicionales VII. Seguridad Septiembre 2010 Joomla! 20
  • 21. II. Gestión y organización de contenidos o Página Web o CMS (Content Management System) Septiembre 2010 Joomla! 21
  • 22. II. Gestión y organización de contenidos o Menú de administración o Accesible desde la página de inicio o O desde http://localhost/administrator o Usuario "admin" con el password creado o Permite o Añadir y gestionar artículos o Gestionar secciones, menús, página de inicio,… o Crear y gestionar cuentas de usuario o Manejar ficheros multimedia o … Septiembre 2010 Joomla! 22
  • 23. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 23
  • 24. II. Gestión y organización de contenidos o Organización de artículos o Modelo de "periódico" o Sección o Nivel superior de jerarquía de artículos o Por defecto: About, News, FAQs, Newsflashes o Categoría o Nivel inferior de jerarquía de artículos o About Joomla!: Project, CMS, Community o Contenido estático sin categorizar o No jerárquicos ni agrupables o Se muestra como una página separada ¿dónde? o No recomendado!! Septiembre 2010 Joomla! 24
  • 25. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 25
  • 26. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 26
  • 27. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 27
  • 28. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 28
  • 29. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 29
  • 30. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 30
  • 31. II. Gestión y organización de contenidos o Gestión de artículos o Article Manager o Filtros por sección y categoría o Filtros por autor y estado de publicación o Filtro textual o Permite o Publicar y retirar artículos o Archivar y desarchivar o Editar artículos o Mover de una categoría a otra o Ordenar por cualquier campo Septiembre 2010 Joomla! 31
  • 32. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 32
  • 33. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 33
  • 34. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 34
  • 35. II. Gestión y organización de contenidos  Organización Paso A Paso 1. Eliminar las secciones, categorías y artículos de ejemplo  Todos los artículos de cada categoría antes que ésta  Todas las categorías de cada sección antes que ésta  Papelera de reciclaje (Trash Manager) 2. Crear Mis Secciones  Section Manager 3. Crear Mis Categorías  Category Manager 4. Crear Mis Artículos  Article Manager Septiembre 2010 Joomla! 35
  • 36. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 36
  • 37. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 37
  • 38. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 38
  • 39. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 39
  • 40. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 40
  • 41. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 41
  • 42. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 42
  • 43. II. Gestión y organización de contenidos  Tips  No se pueden eliminar categorías si hay artículos en la papelera  Las categorías no se pueden recuperar (no hay papelera de categorías)  Una vez eliminadas las categorías se pueden eliminar las secciones  No es recomendable conservar artículos no publicados o artículos en la papelera  Mejor hacer copia de seguridad y eliminarlos Septiembre 2010 Joomla! 43
  • 44. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 44
  • 45. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 45
  • 46. II. Gestión y organización de contenidos  Crear una sección  Título: de la sección  Alias: para que Joomla! la identifique  Sin espacios, todo minúscula, sin caracteres raros  Se usa como primer subdirectorio de las URLs  Sección: nombre largo para la sección  Publicada: indica si se debe publicar  Acceso: para indicar qué grupos de usuarios pueden ver la sección  Imagen: icono para la sección  Posición de la imagen: izqda, dcha o centrada  Detalles: descripción de la sección Septiembre 2010 Joomla! 46
  • 47. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 47
  • 48. II. Gestión y organización de contenidos  Crear una categoría  Título: de la categoría  Alias: para que Joomla! la identifique  Sin espacios, todo minúscula, sin caracteres raros  Se usa como segundo subdirectorio de las URLs  http://???/alias-seccion/alias-categoria/alias-articulo.html  Publicada: indica si se debe publicar  Acceso: para indicar qué grupos de usuarios pueden ver la sección  Imagen: icono para la sección  Posición de la imagen: izqda, dcha o centrada  Detalles: descripción de la sección Septiembre 2010 Joomla! 48
  • 49. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 49
  • 50. II. Gestión y organización de contenidos  Editores WYSIWYG  TinyMCE  Sencillo y con buenas propiedades de edición  Seleccionado por defecto  Máximo artículos de 200KB (~20.000 palabras)  XStandard Lite  Añade más capacidades  Preinstalado pero desactivado  Requiere un plugin especial en el cliente  JCE  http://www.joomlacontenteditor.net/  Instalable como extensión de Joomla!  Se configuran desde Global Configuration Septiembre 2010 Joomla! 50
  • 51. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 51
  • 52. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 52
  • 53. II. Gestión y organización de contenidos  Instalación JCE 1. Descargar el paquete com_jce_1574_package.zip 2. Activar permisos de escritura en:  <joomla>/tmp  <joomla>/plugins  <joomla>/components  <joomla>/language  <joomla>/administrator/components  <joomla>/administrator/language 3. Ejecutar la instalación de extensiones Joomla!  Extensions > Install/Uninstall 4. Seleccionar el fichero ZIP descargado 5. Activar JCE como editor Septiembre 2010 Joomla! 53
  • 54. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 54
  • 55. II. Gestión y organización de contenidos Septiembre 2010 Joomla! 55
  • 56. II. Gestión y organización de contenidos  Creación de artículos  Título y alias  Sección y categoría  Publicado y página frontal (Front Page)  Autor (usuario) y alias (nombre visible)  Fechas de creación, publicación y cierre Septiembre 2010 Joomla! 56
  • 57. II. Gestión y organización de contenidos  Parámetros avanzados  Modifican la configuración global de artículos  Mostrar título  Usar título como enlace  Mostrar texto introductorio  Mostrar nombre de la sección  Usar nombre de la sección como enlace  Mostrar botones para conversión a PDF, imprimir o enviar correo  … Septiembre 2010 Joomla! 57
  • 58. II. Gestión y organización de contenidos  Metainformación  Se utiliza para los buscadores  Permite indicar palabras clave, descripción, autor,…  Los spammers han abusado de las palabras clave por lo que los buscadores las usan poco  Es mejor poner una buena descripción con las palabras importantes en ella Septiembre 2010 Joomla! 58
  • 59. II. Gestión y organización de contenidos  El Editor JCE  Características de procesamiento de texto  Fuentes, estilos, listas, cut-copy-paste, párrafos, buscar/reemplazar, indentación, caracteres raros,…  Características Web  Emoticonos, enlaces, sub/superíndices, tablas,… Septiembre 2010 Joomla! 59
  • 60. II. Gestión y organización de contenidos  Elementos especiales  Editor de estilos CSS  Carácter de control de espacios  Citas, abreviaturas y acrónimos  Editor de código HTML  Corrector de ortografía  Paginación (Pagebreak)  Leer más… (Read more)  Eventos JavaScript Septiembre 2010 Joomla! 60
  • 61. Contenidos I. Instalación de Joomla! II. Gestión y organización de contenidos III. Instalación de extensiones IV. Diseño y aspecto estético de los sitios Joomla! V. Menús de Navegación VI. Funciones Adicionales VII. Seguridad Septiembre 2010 Joomla! 61
  • 62. III.Instalación de extensiones o 5 tipos de extensiones o Plugins o Módulos o Componentes o Plantillas o Idiomas o Plugins (Menú Extensions > Plugin Manager) o Extensiones más avanzadas o Interceptan y pueden modificar los datos que intercambian el usuario y el servidor o Editores WYSIWYG por ej. o Se descargan e instalan, no se crean nuevos Septiembre 2010 Joomla! 62
  • 63. III.Instalación de extensiones o Módulos (Menú Extensions > Modules Manager) o Elementos que muestran información o Pueden aparecer muchos en cada página o Encuestas, login, banners por ej. o Componentes (Menú Components) o Más potentes que los módulos o Permiten ejecutar mini-aplicaciones o Generan una página completa, sólo existe 1 o Foro o Front Page por ej. Septiembre 2010 Joomla! 63
  • 64. III.Instalación de extensiones o Repositorio de Extensiones. http://extensions.joomla.org/ o Administración o Advanced Administrator Menu: Permite crear menús nuevos para organizar mejor todo o Duplicate Title Aliases: Muestra artículos con alias duplicados o Broken Image Notifier: Manda email al perder una imagen o JPosition: Permite administrar módulos por drag&drop o Backup o Akeeba: Backup basado en AJAX con planificador tipo CRON o Diagnóstico o JDiagnostic: Pruebas de conexión, configuración, LDAP, AD, SSO,… o Eventos o Event Table Edit: Tabla de eventos editable o JEvents: Componente de integración de calendarios de eventos Septiembre 2010 Joomla! 64
  • 65. III.Instalación de extensiones o Imágenes o Art Sexy Lightbox: Módulo para mostrar imágenes o JoomGallery: Componente para galería de imágenes o Phoca gallery: Componente para galería de imágenes o Ficheros o eXtplorer: Componente de gestión de ficheros o joomlaExplorer: Gestor de ficheros y FTP o Flash Uploader: Plugin para subir ficheros Flash 10 o Random Flash Module: Módulo para mostrar videos Flash o Attachments for articles: Permite añadir adjuntos a los artículos o Foros o Agora: Componente de foro o Kunena: Componente de foro Septiembre 2010 Joomla! 65
  • 66. III.Instalación de extensiones o Multimedia o JoomLine: Reproductor de MP3 o YouTube: Plugin para insertar el reproductor de YouTube o JPlayer: Plugin par reproducir videos o Relojes o Art Clock: Añade un reloj a mis páginas o World Time: Muestra la hora de cualquier zona del mundo o AH Countdown: Reloj de cuenta atrás o SEF (Search Engine Friendly URLs) o Unicode slugs SEF: Admite URLs con acentos o com_error404: Componente para personalizar errores 404 o Seguridad o RSFirewall!: Servicio de seguridad para Joomla! o kareebu Secure: Plugin de securización de acceso o Encryption configuration: Codificador RSA para contraseñas Septiembre 2010 Joomla! 66
  • 67. III.Instalación de extensiones o Templates o Template Selector: Permite cambiar las plantillas de la Web o Template Chooser: Permite cambiar el template en el front-end o Otros o GoogleMaps: Plugin para mostrar mapas de google o googleSearch: Componente con el buscador Google o OnlineBabyloon: Traductor multi-idioma o J2XML: Componente para importar y exportar a XML o Alfresco Integration: Permite acceder a servicios de Alfresco o TweetXT: Módulo para mostrar tweets de tweeter o myApi: API para integración con Facebook o Xmap: Generador de mapas del sitio Web Septiembre 2010 Joomla! 67
  • 68. Contenidos I. Instalación de Joomla! II. Gestión y organización de contenidos III. Instalación de extensiones IV. Diseño y aspecto estético de los sitios Joomla! V. Menús de Navegación VI. Funciones Adicionales VII. Seguridad Septiembre 2010 Joomla! 68
  • 69. IV. Diseño y aspecto estético de los sitios Joomla! o 6 gestores para el contenido de Joomla! o Section Manager o Category Manager o Front Page manager o Article Manager o Media Manager o Trash Manager o ¿Y el aspecto? Template Manager o Permite seleccionar y editar platillas o HTML (PHP) y CSS o Permite modificar la página index o Permite modificar parámetros de las plantillas Septiembre 2010 Joomla! 69
  • 70. IV. Diseño y aspecto estético de los sitios Joomla! o Template Manager o Administrador de plantillas o Beez o rhuk_milkyway o Khepri o J960 o Rumi o … o No permite crear plantillas nuevas o Permite cambiar de plantilla o Mejor usar Template Chooser / Selector Septiembre 2010 Joomla! 70
  • 71. IV. Diseño y aspecto estético de los sitios Joomla! o Plantillas o templateDetails.xml o Contiene la configuración de la plantilla (nombre, autor, archivos, posiciones, parámetros,…) o index.php o Página principal que muestra controles, módulos y texto o Código PHP o Se guardan en <joomla>/templates/<nombre de la plantilla> o Se instalan como otras extensiones o Hay plugins para los diseñadores habituales y Eclipse o Joomla! Template Toolbar genera código sin conocer PHP Septiembre 2010 Joomla! 71
  • 72. IV. Diseño y aspecto estético de los sitios Joomla! o index.php <html> <head> <!-- incluyo metainformación del sitio --> <jdoc:include type="head"/> </head> <body> <jdoc:include type="message" /> <div class="center" align="center"> Hola Joomla!! </div> <!-- habilito la depuración por si acaso --> <jdoc:include type="modules" name="debug" /> </body> </html> Septiembre 2010 Joomla! 72
  • 73. IV. Diseño y aspecto estético de los sitios Joomla! o templateDetails.xml <?xml version="1.0" encoding="utf-8"?> <install version="1.5" type="template"> <name>Hola Joomla</name> <description>Plantilla sencilla</description> <files> <filename>index.php</filename> <filename>templateDetails.xml</filename> </files> </install> Septiembre 2010 Joomla! 73
  • 74. IV. Diseño y aspecto estético de los sitios Joomla! o index.php con Módulos <div class="center" align="center">Hola Joomla!! </div> <!-- añado módulos predeterminados dentro de una tabla --> <table> <tr><td> <jdoc:include type="modules" name="user1" style="xhtml" /> </td></tr> <tr><td> <jdoc:include type="modules" name="user2" style="xhtml" /> </td></tr> </table> <!-- añado un componente por defecto --> <jdoc:include type="component" /> Septiembre 2010 Joomla! 74
  • 75. IV. Diseño y aspecto estético de los sitios Joomla! top breadcrumb user3 user4 user1 user2 left Componente por defecto com_content right footer syndicate Septiembre 2010 Joomla! 75
  • 76. IV. Diseño y aspecto estético de los sitios Joomla! Septiembre 2010 Joomla! 76
  • 77. IV. Diseño y aspecto estético de los sitios Joomla! o index.php con condiciones <!-- si el módulo left contiene elementos --> <?php if($this->countModules('left')) : ?> <jdoc:include type="modules" name="left" style="xhtml" /> <!– y si no --> <?php else: ?> <div class="center" align="center">Error</div> <?php endif; ?> Septiembre 2010 Joomla! 77
  • 78. IV. Diseño y aspecto estético de los sitios Joomla! o templateDetails.xml con CSS y miniatura <?xml version="1.0" encoding="utf-8"?> <install version="1.5" type="template"> <name>Hola Joomla</name> <description>Plantilla sencilla</description> <files> <filename>index.php</filename> <filename>templateDetails.xml</filename> <filename>template_thumbnail.png</filename> <filename>css/estilos.css</filename> <filename>images/imagen_del_css.png</filename> <filename>params.ini</filename> </files> </install> Septiembre 2010 Joomla! 78
  • 79. IV. Diseño y aspecto estético de los sitios Joomla! o index.php con CSS <html> <head> <jdoc:include type="head"/> <link rel="stylesheet" type="text/css" href=" <?php echo $this->baseurl ?> /templates/holaTemplate/css/estilos.css" /> </head> <body> <jdoc:include type="message" /> <div class="pill" align="center"> Hola <?php echo $this->params->get('nombre'); ?> </div> </body> </html> Septiembre 2010 Joomla! 79
  • 80. IV. Diseño y aspecto estético de los sitios Joomla! o templateDetails.xml completo <?xml version="1.0" encoding="utf-8"?> <install version="1.5" type="template"> ... <!– creo posiciones personalizadas --> <positions> <position>arriba</position> <position>abajo</position> </positions> <!-- pongo valores configurables a mis parámetros --> <params> <param name="color" type="list" label="elija color" > <option value="rojo">Rojo</option> <option value="azul">Azul</option> </param> </params> </install> Septiembre 2010 Joomla! 80
  • 81. IV. Diseño y aspecto estético de los sitios Joomla! o index.php con validación de documento <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3. org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<? php echo $this->language; ?>" lang="<?php echo $this->language; ?>" > <head> ... </head> <body> ... </body> </html> Septiembre 2010 Joomla! 81
  • 82. Contenidos I. Instalación de Joomla! II. Gestión y organización de contenidos III. Instalación de extensiones IV. Diseño y aspecto estético de los sitios Joomla! V. Menús de Navegación VI. Funciones Adicionales VII. Seguridad Septiembre 2010 Joomla! 82
  • 83. V. Menús de Navegación o Menu Manager o Permite crear y agrupar menús o Tipos de menú predefinidos o mainmenu o usermenu o topmenu o Cada menú contiene items de menú jerárquicos o Cada item tiene un padre (menú u otro item) o Cada item es de un tipo que indica su enlace o No conviene tener muchos niveles o Se configuran los menús como módulos o mod_mainmenu Septiembre 2010 Joomla! 83
  • 84. V. Menús de Navegación Septiembre 2010 Joomla! 84
  • 85. V. Menús de Navegación Septiembre 2010 Joomla! 85
  • 86. V. Menús de Navegación o Module Manager o Permite crear y agrupar menús o Tipos de menú predefinidos o mainmenu o usermenu o topmenu o Cada menú contiene items de menú jerárquicos o Cada item tiene un padre (menú u otro item) o Cada item es de un tipo que indica su enlace o No conviene tener muchos niveles o Se configuran los menús como módulos o mod_mainmenu Septiembre 2010 Joomla! 86
  • 87. V. Menús de Navegación Septiembre 2010 Joomla! 87
  • 88. V. Menús de Navegación Septiembre 2010 Joomla! 88
  • 89. Contenidos I. Instalación de Joomla! II. Gestión y organización de contenidos III. Instalación de extensiones IV. Diseño y aspecto estético de los sitios Joomla! V. Menús de Navegación VI. Funciones Adicionales VII. Seguridad Septiembre 2010 Joomla! 89
  • 90. VI. Funciones Adicionales o Global Configuration o Site o Permite configurar parámetros de la Web o Estado, nombre, editor, metainformación,… o System o Permite configurar el funcionamiento del servidor o Caché, ficheros, registro de usuarios, sesiones,… o Server o Permite configurar parámetros de Joomla! Server o Base de datos, FTP, SSL, mail, locale,… Septiembre 2010 Joomla! 90
  • 92. VI. Funciones Adicionales o User Manager o Grupos: Front-end y Back-end (admin) o Registrado: Lectores de contenido privado o Autor: Pueden crear y modificar sus artículos o Editor: Puede editor artículos de otros o Publicador: Puede publicar/retirar contenidos o Gestor: Puede gestionar secciones y categorías o Administrador: Puede instalar extensiones, cambiar plantillas y cambiar permisos de usuarios o Super Administrador: root o Bridges o Para autenticar contra otros sistemas o LDAP, AD, Gmail,… Septiembre 2010 Joomla! 92
  • 94. VI. Funciones Adicionales o ACL o Access Control List o Joomla lo implementa complementado con ARO (Access Request Objects) o Muy complicado con tablas raras o Estructura en forma de árbol de los grupos o Recomendado: noixACL o Componente o Adaptadores o Módulo Septiembre 2010 Joomla! 94
  • 97. VI. Funciones Adicionales o Community Builder o Reemplaza el módulo de login y la gestión de usuarios de Joomla (desactivarlos) o Permite añadir campos a la tabla de usuarios o Permite crear listas de los usuarios o Incluye sus propios plugins o Google Maps, IM, PonyGalley, seguimiento de sesiones,… o Incluye herramientas de sincronización y carga de datos o Extensiones o Compofiler: Componente principal o CBlogin: Módulo de registro y login o mod_comprofileronline: Módulo de usuarios conectados Septiembre 2010 Joomla! 97
  • 99. VI. Funciones Adicionales o Community Builder o Gestión de usuarios o Gestión de campos o Gestión de listas (grupos de usuarios) o Gestión de plugins o Herramientas o Carga de datos de prueba o Sincronización de usuarios o Tests de integridad o Configuración Septiembre 2010 Joomla! 99
  • 101. VI. Funciones Adicionales o Creación de Módulos o Al igual que las plantillas se componen de o un fichero de código PHP o un XML de configuración o El fichero XML es similar al de la plantilla o El nombre no es relevante (mod_modulo.xml) o El fichero PHP es directamente código ejecutable o Clase JText::_('texto') permite que se intercepte el texto con un plugin de traducción o Clase JFactory permite crear objetos (patrón factoría) o Concatenación con punto '.' Septiembre 2010 Joomla! 101
  • 102. VI. Funciones Adicionales o mod_mimodulo.xml <?xml version="1.0" encoding="utf-8" ?> <install version="1.5" type="module"> <name>Módulo de prueba</name> <author>Yo mismo</author> <creationDate>Jul 7, 2010</creationDate> <version>1.5</version> <description>Un plugin de autenticación</description> <files> <filename module="MiModulo">mod_mimodulo.php</filename> </files> <params> <param name="campo" type="text" default="username"/> </params> </install> Septiembre 2010 Joomla! 102
  • 103. VI. Funciones Adicionales o mod_mimodulo.php <?php defined('_JEXEC') or die('Acceso restringido'); $db =& JFactory::getDBO(); //accedo a la BBDD de Joomla! $query = 'SELECT * FROM #__users'; $db->setQuery($query); echo "<table border=1>"; echo "<tr><td>Usuario</td><td>Password</td></tr>"; foreach($db->loadObjectList() as $row){ echo "<tr><td><a href='mailto:". $row->email . "'>"; echo $row->username ."</a></td>"; echo "<td>". $row->password ."</td></tr>"; } echo "</table>"; ?> Septiembre 2010 Joomla! 103
  • 104. VI. Funciones Adicionales o Creación de Plugins o Clase PHP que extiende la clase JPlugin o Con un nombre especial o <tipo de plugin><nombre del plugin> o Para autenticación: plgAuthentication + MiPlugin o Debe tener un constructor o function plgAuthenticationMiPlugin(& $subject) o Y al menos un método según el tipo de plugin o Para autenticación: o function onAuthenticate($creds, $opts, &$resp) o Fichero XML de configuración o Similar al de templates Septiembre 2010 Joomla! 104
  • 105. VI. Funciones Adicionales o miplugin.xml <?xml version="1.0" encoding="utf-8" ?> <install version="1.5" type="plugin" group="authentication"> <name>Authentication - Myauth</name> <author>Yo mismo</author> <creationDate>Jul 7, 2010</creationDate> <version>1.5</version> <description>Un plugin de autenticación</description> <files> <filename plugin="miplugin">miplugin.php</filename> </files> </install> Septiembre 2010 Joomla! 105
  • 106. VI. Funciones Adicionales o miplugin.php <?php defined('_JEXEC') or die(); jimport('joomla.event.plugin'); class plgAuthenticationMiPlugin{ function plgAuthenticationMiPlugin(& $subject){ parent::__construct($subject); } function onAuthenticate($creds, $opts, &$resp){ $db =& JFactory::getDBO(); $query = 'SELECT ... user='.$db->quote($creds['usuario']); $db->setQuery($query); $result = $db->loadResult(); if(/* comprobación del password correcta */){ $email = JUser::getInstance($result); $response->email = $email->email; $response->status = JAUTHENTICATE_STATUS_SUCCESS; }}} ?> Septiembre 2010 Joomla! 106
  • 107. Contenidos I. Instalación de Joomla! II. Gestión y organización de contenidos III. Instalación de extensiones IV. Diseño y aspecto estético de los sitios Joomla! V. Menús de Navegación VI. Funciones Adicionales VII. Seguridad Septiembre 2010 Joomla! 107
  • 108. VII.Seguridad o Premisas o Joomla! es fácil de instalar y administrar o Es fácil dejar puertas abiertas o Permisos sobre directorios o Carpeta installation o Fichero configuration.php o phpInfo() o Cuenta admin de Joomla! o Utilidades o PHP mod_security y mod_rewrite (en Apache) o SEF o Joomla! Tools Suite Septiembre 2010 Joomla! 108
  • 110. VII.Seguridad o Joomla! Tools Suite o Web que comprueba distintas configuraciones de seguridad o Copiar a <joomla>/jts o Existe un componente para Joomla! 1.0 o Modo “heredado” (legacy) para poder usarlo o Plugin “System – legacy” o Añade distintas auditorías del sistema o No repara los agujeros de seguridad o La compatibilidad hacia atrás puede afectar a otros módulos y componentes Septiembre 2010 Joomla! 110
  • 113. VII.Seguridad o Joomla Authentication Tools (plugins LDAP) o Authentication – LDAP o Configuración básica contra el servidor o Authentication – Advanced LDAP o Habilita/deshabilita sincronización de usuarios o User – LDAP o Configuración de parámetros DN, CN, GID, UID,… o User Source – LDAP o Mapeo configurable de grupos usuarios LDAP-Joomla! o User Source – Session o Para usar con SSO y obtener datos del usuario de la sesión o JDiagnostics Septiembre 2010 Joomla! 113
  • 118. VII.Seguridad o Notas AD o En AD se usa el nombre de usuario como DN o Configuración recomendada: o host=ad.joomla.org o port=389 (o 3268 si aloja varios dominios) o use_ldapV3=1 o negotiate_tls=0 o no_referrals=0 o auth_method=search o base_dn=DC=joomla,DC=org o search_string=sAMAccountName=[search] o users_dn=CN=[username],CN=Users,DC=joomla,DC=org o username=admin o password=password o ldap_fullname=displayName o ldap_email=mail o ldap_uid=sAMAccountName Septiembre 2010 Joomla! 118
  • 119. VII.Seguridad o Notas AD o En Authentication – LDAP o Configurar los parámetros del plugin tal y como se indica en la página anterior o Válido para Joomla! 1.5 Septiembre 2010 Joomla! 119
  • 120. VII.Seguridad o Notas OpenLDAP o Configuración de ejemplo: o host=horloge.pasamio.homelinux.net o port=389 (o 3268 si aloja varios dominios) o use_ldapV3=1 o negotiate_tls=0 o no_referrals=0 o auth_method=search o base_dn=dc=pasamio,dc=homelinux,dc=net o search_string=uid=[search] o users_dn=uid=[username],ou=users,dc=pasamio, dc=homelinux,dc=net o username= o password= o ldap_fullname=fullName o ldap_email=mail o ldap_uid=uid Septiembre 2010 Joomla! 120
  • 121. VII.Seguridad o Notas OpenLDAP o En Authentication – LDAP o Configurar los parámetros del plugin tal y como se indica en la página anterior o Válido para Joomla! 1.5 Septiembre 2010 Joomla! 121
  • 122. VII.Seguridad o Notas Mapeo de Grupos (User Source – LDAP) o Formato grupoLDAP;IDgrupoJoomla;TipoUsuarioJoomla;Prioridad o Un usuario miembro de 2 grupos se resuelve por prioridad o Tabla de grupos Joomla! por defecto Septiembre 2010 Joomla! 122
  • 123. Muchas Gracias Óliver Centeno Álvarez Julio 2010 Joomla! 123