Inicio de sesión

Aprende Drupal

Suscríbete para recibir por email el nuevo contenido de Aprende Drupal con E-duca.eu.
Disfrutarás aprendiendo Drupal.

Introduce tu email:

Delivered by FeedBurner

Blog de e-duca

CURSO DRUPAL ABRIL 2011 - DIA 14: PRACTICA: CREACIÓN DE UN SITIO WEB COMPLETO

  Hoy vamos a empezar con la creación de un sitio web completo como práctica.
Los alumnos irán creando el sitio web y el profesor irá resolviendo las dudas y asistiéndoles en el desarrollo.
En los apuntes anotaremos los pasos que vamos dando cada día y explicando la teória o cómo hacer cuando se necesite.

 

1. Elegimos el tema CTI Flex que está basado en Zen.

Instalamos el tema, para este tema necesitamos instalar:
El propio tema: http://drupal.org/project/cti_flex
Necesitamos el tema Zen instalado: http://drupal.org/project/zen
Adicionalmente utiliza el módulo Color Picker: http://drupal.org/project/colorpicker, y de Cck: http://drupal.org/project/cck necesita content y text.
Así que los intalamos y activamos:
- Content
- Text
- ColorPicker
- ColorPicker Widget

2. Activamos el tema Zen que lo necesita CTI Flex, y también activamos CTI Flex y lo ponemos por defecto.
3. El tema de administración lo establecemos en Garland.
4. Instalamos Ckeditor + ckfinder cómo editor para los nodos.
Seguimos los pasos que ya explicamos en http://www.e-duca.eu/2011/04/30/e-duca/Blog/curso-drupal-abril-2011-dia-...

CURSO DRUPAL ABRIL 2011 - DIA 13: PANELS, PANELES EN DRUPAL

Hoy vamos a estudiar los siguientes módulos o conceptos:

  • Panels 3: Aprenderemos a usar el módulo para crear útiles paneles en nuestro sitio web.

  Paneles en Drupal (Versión 3):

Nota: para el módulo panels es más claro usar la terminología inglesa ya que diferencia Panel principal de paneles hijos, en la terminlogía original en inglés Panel es el contenedor de paneles y Pane es cada elemento que se incluye dentro de un panel, es decir un panel hijo. Sin embargo en la traducción al castellano se ha traducido tanto Panel como Pane por panel haciendo los conceptos menos claros.

¿Qué son los Paneles en Drupal?:
Panels es un módulo enorme que lleva años de desarrollo mejorado y ha evolucionado mucho, pero lo primero es entender qué es y para qué sirve.
Como sabemos en Drupal todo son nodos, mostramos la información en el centro de la página en nodos, y nuestro contenido está guardado en nodos, luego en los laterales tenemos bloques, y los usamos como complemento a la información central de los nodos, cuando queremos mostrar consultas de tipo listado que conciernen a un conjunto de nodos creamos vistas y las mostramos al usuario, pero qué pasa si queremos mostrar una página con 3 nodos en forma de T, uno a la izquierda, otro a la derecha y otro más ancho debajo, o 4 nodos en forma de 2x2 nodos, o si queremos mostrar un nodo, debajo una vista, al lado un trozo de html personalizado, y debajo un formulario. Bien pues para esto están los paneles para que podamos construir páginas en nuestro sitio con las piezas de contenido, nodos, vistas, contenido personalizado, lo que queramos todo en un diseño que daremos forma usando estas piezas como si fueran ladrillos, donde pondremos uno a la izquierda de otro, otro debajo, otros dos más abajo o como queramos.
Drupal está pensado en si como un puzle de piezas que nosotros montamos a nuestro antojo, cada módulo es un ladrillo de programación manteniendo el simil, pero ahora que vamos a conocer Panels el diseño del contenido de una página también podremos dividirlo tanto como queramos en ladrillos de contenido según necesitemos. 

Panels surgió para cubrir la necesidad de poder mostrar información en los nodos que no fuera solamente el propio nodo, al principio se hacía incluyendo código php en el nodo para que sacara lo que necesitaramos, incluir otros nodos en la forma que quisieramos, incluir alguna vista debajo, formulairos, lo que fuera, con el tiempo se creo panels y se fue mejorando para que cubriera todo tipo de necesidades de este tipo, ahora es un módulo muy completo que cubrirá sobradamente nuestras demandas, y aún así el módulo sigue avanzando para tener cada vez una interfaz más sencilla de usar y visual.

Una vez presentados los paneles, vamos a conocer su terminología, como Drupal llama a cada cosa en Panels.

Términología usada en Panels:

    •    Panel Page: Es una página que visualiza a los panels. Por ejemplo frontpage, news page, o lo que sea. Tiene un path como puede tenerlo un nodo.

    •    Panels: Es un contenedor para albergar contenido. Un panel puede tener varias piezas de contenido dentro de él, situadas en regiones, y puede ser estilizado.

    •    Pane: Es una unidad de contenido dentro de un panel. Esto puede ser un nodo, una vista, un trozo de código HTML, o lo que queramos. Los Panes pueden ser movidos arriba o abajo de un panel o movidos de un panel a otro.

    •    Layout: Proporcionan una colección de panels predefined que el administrator puede seleccionar para construir su panel. Un layout puede tener dos columas, cabecera, pie, o tres columnas en medio, o incluso siete paneles apilados como si fueran ladrillos.

    •    Mini panels: Son paneles que se usan para ser colocados dentro de blocks, o como panales dentro de paneles.

    •    Panel Nodes: Es un nodo que visualiza un panel. Es cómo Panal Page per más limitado y con menos opciones.

Cómo vemos un panel puede crearse:
- De tipo página, que es lo más habitual porque es el más completo
- De tipo nodo, que es más restringido ya que solo puede ocupar el area de un nodo y tiene menos opciones.
- De tipo minipanel, que es cuando pensamos crear el panel para ponerle en un block o para incluirle dentro de otro panel como puede pasar en diseños más complejos.

Ahora vamos a aprender a crear un panel:

Lo primero es instalar el módulo Panels:
- Descargamos la última versión de panels 3 de: http://drupal.org/project/panels
- Descargamos Chaos Tools si no lo tenemos ya instalado: http://drupal.org/project/ctools
Ambos módulos son del mismo creador y gran aportador a la comunidad Drupal, Merlin of Chaos, también él fue el inventor de Views, así que nos resultará familiar la similitud de la interface de Views con la de Panels.

- Módulos a activar:
Del paquete Chaos tool suite:
Chaos tools
Page manager
Views content panes

Del paquete Panels:
Mini panels
Panel nodes
Panels

 

Vamos a ver como se hace para crear un panel nuevo de tipo página

  1. Administer -> panels -> create panel page
    (Ahora vienen una serie de pantallas que son un wizard, una ayuda para rellenar los datos básicos del panel)
  2. Rellenamos Título administrativo, Nombre de Máquina, y Path. Pulsamos Continuar.
  3. Elegimos Columns 1: single columna para nuestro primer panel de ejemplo. Pulsamos Continuar.
  4. Dejamos todo por defecto y Continuar.
  5. En título le llamamos Panel de Prueba y Finalizar.
  6. Ahora lo que vemos es la verdadera página de administración de panels.
    (vamos a definir el contenido del panel)
  7. Vamos a content y allí hacemos click sobre el icono de engranaje que está en Middle column.
  8. Si queremos dar un estilo a esta region de contenido elegimos en el engranaje Cambiar estilo, podremos darle estilo de caja redondeada o incluso cambiar el color de fondo. De momento se puede dejar por defecto.
  9. Elegimos Añadir contenido en el engranaje.
  10. Aqui tenemos una pantalla donde está todo el contenido que podemos añadir, hay que explorar las opciones tranquilamente porque podemos añadir practicamente cualquier contenido que tenemos en nuestro sitio, tanto generado por nosotros como generado por el sistema, como trozos de bloques que llama Activities, Menus, Miscelaneos, Elementos de página, también podemos incluir Vistas que tengamos hechas y las que vienen con el sistema, podemos incluir algunos otros elementos que llama widgets,  y dos de los contenidos más usados que son Cualquier nodo existente o un Nuevo contenido personalizado, como puede ser algo que escribamos manualmente en texto plano, html o php.
  11. Podemos agregar tanto contenido como queramos al panel y organizarlo en la zona que queramos encima o debajo de los otros contenidos o en otra región del panel si tuvieramos varias.

Las posibilidades son practicamente ilimitadas.
Tenemos que acordarnos siempre de grabar el trabajo que vayamos haciendo.
Y lo mejor es practicar creando paneles para irnos familiarizando con el manejo. 

Ahora vamos a comprender cada una de las partes principales de la pantalla más importante de Panels:

- Summary nos da un resumen informativo de como está configurado nuestro panel.

- Settings:
      - Basic: configuramos lo básico del panel.
      - Access: decimos quien puede ver el panel.
      - Menu: si queremos asignar un menu al panel es aqui.
- Variants: podemos tener varias variantes del panel lo normal es tener sólo una pero si vamos a hacer varios paneles muy parecidos y mostrar unos en unas ocasiones y otros en otras puede ser buena idea crear variantes de un panel en lugar de como nuevos paneles y configurar cuando se mostrará cada uno.
      - Panel: esta es nuestra variante de panel por defecto, podemos darle otro nombre.
            - Summary: resumen de la configuración de esta variante.
            - General: configuración general de la variante.
            - Selection rules: controla los criterios para decidir cuando esta variante de panel será usada y cuando no.
            - Contexts: añade objetos adicionales a esta variante para ser usados en el contenido.
            - Layout: definimos con que forma de diseño queremos que se muestren los paneles de esta variante. Vemos las regiones de contenido que tiene el Panel. Como se ven tienen forma de ladrillos. Por ejemplo:

            - Content: definimos aqui las piezas de contenido que pondremos en cada Pane, podemos poner más de una pieza de contenido en cada Pane y ordenar arriba o abajo cada una. Por ejemplo, aqui vemos una región de contenido con un par de piezas dentro, una muestra un listado de los últimas entradas de blog y debajo una vista de usuario:

Podemos ver el icono del engranaje que es donde hacemos click para agregar contenido.
            - Preview: aqui es donde veremos la vista previa de como se verá el panel.

 

 

Video del día 13:

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.

CURSO DRUPAL ABRIL 2011 - DIA 12: VIEWS (VISTAS), PRACTICA, CREANDO VISTAS

Hoy vamos a estudiar los siguientes módulos o conceptos:

  • Crearemos algunas vistas para ver como se trabaja con ellas y familiarizarnos.

  Creando Vistas:

Enunciado del jercicio:

Vamos a crear tres vistas como ejercicio: dos de tipo página que las mostraremos en forma de Lista Html y Tabla Html respectivamente. Después crearemos también una vista presentada en forma de block que ubicaremos en nuestro lateral izquierdo.

  1. Vista 1: Mostraremos un listado con los Ultimos nodos que no estén promocionados en la home,, llamaremos a la vista con la url ultimos_nodos_nohome, el estilo será en forma de Lista Html, los campos que mostraremos serán, Titulo, Body, Autor, y Fecha de creación. La etiqueta del campo Usuario se mostrará con el texto Creado por, y la etiqueta de la fecha de envío se mostrará como Enviado el. Mostraremos los resultados en una sola página sin paginación, y ordenador por fecha de envío de más nuevo a más antiguo. Con esto ya podemos practicar nuestra primera vista.
     
  2. Vista 2: Será como la primera pero visualizada en forma de Tabla, el campo Body no lo mostraremos porque ocuparía demasiado, y las columnas las pondremso que sean ordenables haciendo click en el título de cada columna. También le vamos a añadir un filtro expuesto, visible para el usuario donde podrá escribir el Autor del que quiere sacar el listado así practicamos también filtros expuestos.
     
  3. Vista 3: Ahora practicaremos haciendo una vista de tipo Block en la que mostraremos los últimos comentarios que han publicado en el sitio, como en el bloque hay poco espacio solamente mostraremos el Título del comentario y la fecha del envío que la pondremos en formato de Hace x tiempo que resultará más natural.

Video del día 12:

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.

CURSO DRUPAL ABRIL 2011 - DIA 11: VIEWS (VISTAS), TEORIA, COMPRENDIENDO EL MODULO Y LOS CONCEPTO

Hoy vamos a estudiar los siguientes módulos o conceptos:

  • VIEWS: Vistas en Drupal es uno de los módulos más utilizados y sirve para visualizar un conjunto de nodos en un orden determinado, podemos filtrar, ordenar, y paginar la información.
  • Teoría de Views: Comprenderemos que hace el módulo Views, que son las Vistas en Drupal y en que se fundamentan.

 

Cada alumno instalará los módulos o aplicaciones siguiendo la documentación de la página del módulo o aplicación, y las explicaciones del profesor, resolveremos juntos las dudas que vayan surgiendo en cuanto a instalación, funcionamiento y configuración.

 

  Aprendiendo VIEWS:

Drupal llama Vista a una consulta a la base de datos, (query), que devuelve un listado de nodos o registros de forma ordenada. Podemos configurar todos los parametros de la consulta a través de la pantalla de administración de Views.
Una vez creada la vista, ésta tiene una url y podemos llamarla siempre que queramos para que nos saque el listado que hayamos configurado.
Vamos a aprender a usar el módulo y a configurarlo para crear nuestras vistas, nos vamos a familiarizar con el módulo a través del siguiente recorrido:

  1. Lo primero descargamos el módulo Views y lo activaremos: http://drupal.org/project/views. Lo instalamos y en administrar -> módulos, activamos Views y Views UI.
     
  2. Ahora vamos a Administrar -> Construcción del sitio -> Views, y habilitamos la vista Frontpage, que es una vista completa que nos servirá para ver su funcionamiento.
     
  3. Pulsamos Editar en la vista Frontpage.
     
  4. Aqui vemos un cuadro importante que son los tipos de presentación: Defaults, page, feed, etc.

    Defaults muestra la configuración por defecto para todas las otras presentaciones en caso de que no las modifiquemos expresamente.
     
  5. Una vista se puede presentar al usuario principalmente de tres formas distintas:
    - Como página, la vista se presenta en el area principal del sitio donde lo hacen los nodos. Una vista presentada como página tiene un path o ruta, y también se le puede asignar una entrada en algún menú, también puede tomar argumentos que se le pasen por su url, éstos se representarán con el caracter %.
    - Como Bloque, será un block disponible que podremos activar y situar en nuestra página de administración de bloques.
    - Como Feed, generará a partir de la vista un feed RSS que podrá ser léido con un lector de Feeds RSS.
     
  6. Vamos a ver las opciones que tiene una vista presentada como página que es la más importante y utilizada:

    1. OPCIONES BÁSICAS:
      - Nombre: es el nombre administrativo de la vista.
      - Título: es el título que tendrá la página de la vista.
      - Estilo: es un formato básico que podemos dar a los datos de la vista, por defecto está en sin formato, que muestra un registro debajo del otro separados cada uno por una etiqueta <div> que luego podemos darle un estilo personal usando CSS.
      Lista Html: muestra los registros como lista ordenada o sin ordenar.
      Rejilla: muestra los registros en forma de grid o rejilla donde podemos indicar cuantas columnas queremos que tenga la rejilla y cada registro se mostrará en una celda de la rejilla.
      Tabla: muestra los registros como una tabla de resultados, cada registro es una fila, las columnas tienen su título y los datos pueden ser ordenados haciendo click en los títulos de las columnas.
      - Usar AJAX: determina si usaremos ajax para la ordenación de tablas y para la paginación, ajax hace cambios en la página sin tener que recargarla entera sino solamente la zona a cambiar.
      - Usar paginador: determina si mostraremos x elementos por página o todos seguidos sin paginación.
      - Elementos por página: elementos por página en caso de paginación.
      - Único(s): mostrar solamente elementos únicos y no duplicados en caso de que los hubiera.
      - Acceso: por si queremos establecer permisos de acceso a la vista basándonos en algún permiso o por rol.
      - Caché: establece mecanismos de cache para las vistas.
      - Formulario expuesto en bloque: si la vista tiene controles de formulario expuestos, éstos se mostrarían en un bloque en lugar de en la zona principal.
      - Encabezado: si queremos establecer un encabezado para la vista.
      - Pie de página: si queremos establecer un pie de página para la vista.
      - Texto vacío: si queremos mostrar algún resultado en caso de que la vista no tenga resultados.
      - Clase CSS:  si queremos que la vista usa algún estilo css particular.
      - Tema: si queremos que la vista use algún tema específico.
       
    2. OPCIONES DE PAGINA:
      - Ruta: es url de la vista.
      - Menú: se le puede asignar un título de menú y colgarlo de un menú.
       
    3. RELACIONES:
      Permite decir que entidades queremos relacionar para que vayan incluirlas en la consulta y mostrar datos de ellas en la vista. Por ejemplo un nodo con su autor, o un nodo con sus archivos, o un nodo con sus revisiones. A través de la ayuda avanzada se puede obtener información más detallada sobre los detalles de las relaciones.
       
    4. ARGUMENTOS:
      Los argumentos son parametros de entrada que recibe la vista.
      Generalmente los parametros de entrada se cogen de la url.
      Normalmente los argumentos se suelen usar para filtrar la vista y que muestre solo un único resultado como puede ser el nodo recibido como argumento o el usuario. Hay ayuda avanzada sobre argumentos que se puede consultar
       
    5. CAMPOS:
      Permite indicar los campos que queremos visualizar en la vista, y los campos aparecerán en la vista en el orden que los pongamos en este apartado.
       
    6. CRITERIOS DE ORDENACIÓN:
      Permite que indiquemos en que orden los registros serán recuperados de la base de datos en la consulta, es decir, por que campo o campos ordenadoremos la consulta.
       
    7. FILTROS:
      Los filtros se usan para reducir el conjunto de datos que la vista proporciona.
      Por ejemplo podemos filtrar la consulta para que sólo nos muestre los nodos publicados o no publicados, según el tipo de nodo, o según su fecha si están en un intervalo o es mayor o menor que algo.
       

Video del día 11:

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.

CURSO DRUPAL ABRIL 2011 - DIA 10: INSTALAR XAMPP EN LOCALHOST, MIGRACION DE DRUPAL A OTRO SERVIDOR, DANDO FORMA AL NUEVO SITIO

Hoy vamos a estudiar los siguientes módulos o conceptos:

  • Instalando XAMPP en Windows: Aprenderemos a instalar un servidor web en nuestro ordenador local y aprenderemos a configurarlo para poder enviar correo. En nuestro caso lo haremos con XAMPP para windows y usaremos sendmail para el envío de correo.
  • Migración de una web Drupal a otro servidor: Vamos a aprender a migrar un sitio Drupal, en nuestro caso lo haremos migrando el sito actual que hemos empezado poníendolo en el nuevo servidor Xampp que hemos instalado y optimizado.
  • Instalando Acquia Drupal Stack Installer como servidor web Drupal ligero para localhost: este servidor web que viene con php y mysql, está muy optimizado para trabajar con Drupal en localhost y resulta muy ágil su ejecución si nuestro ordenador aunque disponga de pocos recursos de Ram y Procesador. Veremos como se instala y como se usa el primer sitoi web drupal que incluye con la instalación. Después permite instalar tantos sitios como queramos.

Cada alumno instalará los módulos o aplicaciones siguiendo la documentación de la página del módulo o aplicación, y las explicaciones del profesor, resolveremos juntos las dudas que vayan surgiendo en cuanto a instalación, funcionamiento y configuración.

 

CURSO DRUPAL ABRIL 2011 - DIA 9: BLOGS CONTINUACION, BOOKS, Y CONTACT

Hoy vamos a estudiar los siguientes módulos o conceptos:

  • Seguimos trabajando con el módulo Blogs: Aprenderemos a crear un blog para cada usuario y a configurar sus permisos, urls y a administrarlos.
  • Módulo Book: Aprenderemos qué es un libro en Drupal, veremos como se administra y cuales son sus urls fundamentales, cómo ejercicio crearemos un libro.
  • Módulo Contact: Aprenderemos a crear un formulario de contacto para el sitio y lo configuraremos. Aclararemos las categorías de formularios. Después crearemos uno para nuestro sitio y lo pondremos en el menú principal primary links.

 

Cada alumno instalará los módulos siguiendo la documentación de la página del proyecto del módulo, y las explicaciones del profesor, resolveremos juntos las dudas que vayan surgiendo en cuanto a instalación, funcionamiento y configuración.

 

  Seguimos trabajando con los Blogs:

Ayer terminamos activando el módulo blogs y dando permisos a los usuarios autenficados para usarlo.
Seguimos con el ejercicio de práctica haciendo los siguientes pasos:

  1. Hoy configuraremos las alias de url automáticas para que las entradas de blog tengan la forma: blogs/[author-name-raw]/[title-raw]
  2. Después crearemos un blog para nuestro usuario admin con 3 artículos de ejemplo, artículo 1, artículo 2, y artículo 3.
  3. Después crearemos un nuevo usuario y crearemos una entrada para su blog.
  4. A continuación veremos el blog de cada usuario a través de su url sitioweb/blogs/nombreusuario
  5. Por último vamos a permitir a los usuarios categorizar el blog, en términos de Drupal aplicaremos una taxonomía al blog. Para esto:
    a) Crearemos un nuevo vocabulario mediante administrar -> taxonomía -> agregar vocabulario
    b) Lo llamaremos “Etiquetas blog”.
    c) Marcaremos Blog como el tipo de contenido que va a categorizar nuestro vocabulario.
    d) Marcaremos Etiquetas para que el usuario pueda definir sus propias etiquetas libremente separadas por coma para las entradas de Blog.

 

 

  Módulo Book: El módulo book nos va a permitir crear lo que Drupal denomina libros, que están formados por un índice principal con páginas hijas, las páginas hijas pueden estar anidadas y siempre tienen la propiedad de pertenecer a una página padre.
Las páginas hijas de un libro aparecen listadas debajo del índice o raíz para poder hojearlas.
En cada página del libro aparece debajo el enlace a su página anterior y a su página siguiente.
Los libros son muy útiles para publicar documentación jerarquizada.
Podemos ver los libros publicados en nuestro sitio a través de la url /book.
Y desde administrar -> libros podemos ordenar las páginas de los libros de forma visual muy cómoda.
 

Aprenderemos a manejar los libros haciendo el siguiente ejercicio:

  1. Activaremos el módulo book que viene instalado en el Core.
  2. Configuraremos los nombres de url automáticos(pathauto) para que nombre los nodos de libros como: libro/[bookpath-raw]/[title-raw]
  3. Crearemos un libro que llamaremos Libro 1.
  4. Añadiremos dos páginas hijas que llamaremos página hija 1 y página hija 2. De la página hija 1 colgaremos una página hija que llamaremos página hija de 1.
  5. Abriremos en el navegador la url /book para ver nuestros libros del sitio.
  6. Iremos a administrar -> libros y haremos click en editar y ordenar hojas para revisar el orden de las páginas de nuestro libro.

 

 

  Módulo Contact: Con este módulo podremos crear un formulario general de contacto para el sitio.
La url por defecto para el formulario de contacto es /contact

Cómo ejercicio haremos lo siguiente:

  1. Activaremos el módulo Contact que viene en el Core de Drupal.
  2. Administraremos el formulario de contacto para el sitio en administrar -> formulario de contacto.
  3. Crearemos una categoría para el formulario que será la única y predeterminada y llamaremos “General”. En destinatarios añadiremos nuestro correo que es donde recibiremos los datos del formulario que los usuarios nos envíen.
  4. En opciones podemos prefijar el máximo número de mensajes por hora que un formulario puede recibir. Lo cambiaremos de 3 a 100.


 

Video del día 9:

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.

CURSO DRUPAL ABRIL 2011 - DIAS 7 Y 8: ESTUDIAREMOS CCK (CONTENT CONSTRUCTION KIT), FILTROS, Y BLOGS

Hoy vamos a estudiar los siguientes módulos o conceptos:
 

  • Módulo Cck (content construction kit): Nos va a permitir crear nuevos tipos de contenido.
  • Filtros de contenido Vs Formatos de Entrada: Veremos la diferencia entre Los formatos de entrada y sus filtros (análisis de la entrada de información Vs análisis de la salida de información en Drupal).
  • Módulo Code Filter: Se pueden descargar filtros adicionales y Code filter es uno de los más usados. Este filtro nos permitirá usar las etiquetas <code> y </code> en nuestros posts para mostrar al usuario trozos de código de programación de ejemplo.
  • Módulo Blog: Aprenderemos a usar uno de los módulos más usados en Drupal, blogs. Podremos crear un blog para cada usuario y configurar los permisos de forma muy detallada para nuestras necesidades.

 

Cada alumno instalará los módulos siguiendo la documentación de la página del proyecto del módulo, y las explicaciones del profesor, resolveremos juntos las dudas que vayan surgiendo en cuanto a instalación, funcionamiento y configuración.


  Módulo Cck (content construction kit):
Drupal por defecto viene con los tipos Page e History.

Un tipo de contenido es un conjunto de nodos que comparten unas mismas características funcionales.

Al crear un nuevo tipo de contenido podemos crear nuevos campos (fields) para ese tipo de contenido.
Por defecto CCK viene con los siguientes tipos de campos:
• Text: permite crear campos de tipo texto.
• Number: permite crear campos numéricos, enteros y decimales. Controla rangos y valores enumerados.
• Options: permite crear opciones para seleccionar de una lista de valores, el usuario puede elegir el valor mediante, check lists, radio buttons, listas desplegables drop-down, y listas de selección múltiple.
 

Adicionalemente se pueden descargar nuevos tipos de campos para CCK, algunos de los más usados son:
• Date
• Link
• Email
• Filefield e ImageField.

En la clase de hoy:

 

  1. Instalaremos y configuraremos CCK, http://drupal.org/project/cck,  creando un nuevo tipo de contenido llamado Tipo Ejemplo en el que tendremos un campo de cada tipo básico, text, number, y options.
  2. Instalaremos el módulo Date, http://drupal.org/project/date,  para poder crear campos de tipo fecha. Crearemos un nuevo campo de tipo Date para el ejemplo.
  3. Instalaremos el módulo Link, http://drupal.org/project/link,  para poder crear campos de tipo url, donde la url que creemos se validará y se visualizará como un enlace. Crearemos un campo de tipo Link para el tipo de contenido ejemplo.
  4. Instalaremos el módulo Email,  http://drupal.org/project/email, para poder crear campos de tipo email, donde se validará la entrada de un email correcto sintácticamente. Crearemos un campo de tipo Date para el tipo de contenido ejemplo.

 

 

  Filtros de contenido en Drupal:
Filtros vs Formatos de entrada:
Los formatos de entrada están en Administrar -> Formatos de entrada.

Los filtros están en Administrar -> Formatos de entrada -> Click en “Configurar” del formato de entrada que queramos administrar sus filtros.

  

Aunque están relacionados son muy diferentes. En Drupal un Filtro controla la forma en que se muestra la información de un campo, mientras que un Formato de entrada controla el tipo de información que introducimos en un campo.

Por ejemplo Full Html es un formato de entrada que en su configuración puede tener activado el filtro Html que mostrará como html el código html que introduzcamos. Y también puede tener activado el filtro url de forma que cuando introduzcamos una url nos lo muestre como un enlace.


 

  Módulo Code filter: http://drupal.org/project/codefilter. Es el filtro adicional más usado por los programadores, nos permite mostrar al usuario de forma diferenciada un trozo de código de programación.

Vamos a instalar el módulo y activarlo para el formato de entrada que queramos, después en los campos de entrada del nodo, el texto que escribamos entre <code> y </code> se mostrará al usuario de forma diferenciada del resto como líneas de un lenguaje de programación.

 

 

  Blog: con el módulo Blog podremos crear entradas de blog en nuestro sitio web. Es un módulo que viene en el Core de Drupal.
Cada usuario podrá crear su propio blog con sus propias entradas.
Consideramos Blog a un conjunto de nodos generalmente visualizados en orden cronológico inverso que comparten la funcionalidad de servir de diario de notas o de artículos.

 

Activaremos el módulo y daremos permisos a los usuarios autentificados para crear su blog.

 

Video de los días 7 y 8:

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.

CURSO DRUPAL ABRIL 2011 - DIA 6: ESTUDIAREMOS LIGHTBOX2 y PRINT (DESCARGAR NODO EN VERSION PDF)

Hoy vamos a estudiar los siguientes módulos:
  Lightbox2: para ampliar de forma vistosa las imágenes de nuestro sitio web.
  Print: añade a cada nodo la funcionalidad de mostrar una versión en Pdf y una versión para imprimir del mismo.


Cada alumno instalará los módulos siguiendo la documentación de la página del proyecto del módulo, y las explicaciones del profesor, resolveremos juntos las dudas que vayan surgiendo en cuanto a instalación, funcionamiento y configuración.

 

 Lightbox2: Nos va a permitir ampliar las imágenes de nuestro sitio de forma elegante al hacer click en ellas. 

  1. Descargamos el módulo: http://drupal.org/project/lightbox2
  2. Lo copiamos a sites/all/modules y lo activamos en administer > modules
  3. Para ampliar una imagen con el módulo lightbox tenemos que crear un enlace con el el atributo rel=”lightbox” a la imagen pequeña que queramos ampliar, por ejemplo:

<a href=”imagen_grande.jpg” rel=”lightbox”> <img src=”imagen_pequeña.jpg”> </a>
 

  Print: (Nos va a permitir tener cada nodo en versión PDF y sacar una vista para impresión)

  1. Descargamos el módulo: http://drupal.org/project/printy lo instalamos.
  2. Activamos
    - Printer-friendly pages(core)
    - PDF versión
  3. Para que genere pdf necesitaremos instalar la aplicación Tcpdf:
    1. Lo descargamos de: http://sourceforge.net/projects/tcpdf/
    2. Lo descomprimimos y lo copiamos dentro de la carpeta de nuestro módulo de forma que los archivos queden en:
      sites/all/modules/print/tcpdf
    3. Ahora configuramos el módulo para que use el módulo Tcpdf yendo a:
      Administer
      Site configurationPrinter, e-mail and PDF versions
    4. En la pestaña PDF seleccionamos ahora: PDF generation tool:
      sites/all/modules/print/tcpdf/tcpdf.php


 

Video del día 6:

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.

CURSO DRUPAL ABRIL 2011 - DIA 5: ESTUDIAREMOS ADMINISTRATION MENU, LOGINTOBOGGAN, PHP FILTER, PATH AUTO, BACKUP AND MIGRATE

Vamos a estudiar los siguientes módulos:
- Administration menu
- Logintoboggan
- Php filter
- Path auto
- Backup and Migrate

Cada alumno instalará los módulos siguiendo la documentación de la página del proyecto del módulo, y las explicaciones del profesor, resolveremos juntos las dudas que vayan surgiendo en cuanto a instalación, funcionamiento y configuración.

 Administration menú: Instalaremos este módulo para mejorar el menú de administración que trae drupal, este menú es drop-down en cascada y se coloca en la parte superior permanentemente para todos los usuarios que tienen permiso para administrar el sitio y para usar este módulo.
http://drupal.org/project/admin_menu

  Logintoboggan: Usaremos este módulo porque el módulo de login de drupal no permite inicio de sesión con el email, y tampoco permite asignar un rol temporal a los nuevos usuarios pendientes de aprobación. Este módulo también nos permitirá elegir la contraseña justo en el momento de registrarnos y no después de validar la cuenta por email como ocurre por defecto. También da la posibilidad de mostrar mensajes de inicio de sesión correcto y fallido y redirigir a una página especificada después de hacer login.
http://drupal.org/project/logintoboggan

  Php input format: Aprenderemos Php filter porque es un un módulo que nos crea un nuevo tipo de formato de entrada que permite escribir código php en el cuerpo de los nodos, muy útil para que los admin puedan poner trozos de código en los nodos para hacer funcionalidades avanzadas.
Viene en Core-Optional modules.

  Path auto: Aprenderemos a usar y configurar Path auto para crear urls automáticamente para los nodos en el momento de crearlos basadas en el título del nodo o en diversos patrones llamados tokens (necesita el módulo token).
http://drupal.org/project/token
http://drupal.org/project/pathauto

  Backup and Migrate: Aprenderemos a usar Backup and Migrate para hacer backup de la base de datos de forma automática o manual, pudiéndose guardar el backup en el servidor o descargándolo el usuario en su ordenador.
http://drupal.org/project/backup_migrate
Adicionalmente podemos añadir el complemento Backup and Migrate Files para incluir también copia de los archivos y no solo de la base de datos.
http://drupal.org/project/backup_migrate_files

Video del día 5:

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.

CURSO DRUPAL ABRIL 2011 - DIA 4: ESTUDIAREMOS CAPTCHA, ROLES, PERMISOS Y CKEDITOR + CKFINDER

Vamos a instalar y familiarizarnos con los siguientes módulos:
- Captcha
- Roles
- Permisos
- Ckeditor + ckfinder (pasos)

Cada alumno instalará los módulos siguiendo la documentación de la página del proyecto del módulo, y resolveremos juntos las dudas que vayan surgiendo en cuanto a instalación, funcionamiento y configuración.

Aprenderemos que Captcha es una tecnología que se incluye en los formularios donde un usuario tiene que introducir datos en el sitio web, de forma que añade una pregunta al usuario para confirmar que no es un robot que enviará Spam y que es humano. Generalmente Captcha muestra una imagen con unos caracteres que el usuario tiene que copiar. Opcionalmente captcha puede hacernos una pregunta matemática que debemos responder en lugar de mostrarnos la imagen.

Aprenderemos que Drupal permite tener varios tipos de usuario cada uno con unos permisos diferentes y que a estos tipos los llama Roles. Veremos los roles por defecto y la posibilidad de crear nuevos roles. Junto a los roles repasaremos también los permisos más importantes que se asignan a cada rol.

Veremos que Drupal no viene con un editor de texto enriquecido para escribir los posts, artículos o nodos. Elegiremos Ckeditor como editor wysiwyg más actualizado y le añadiremos la la aplicación Ckfinder para subir imágenes al servidor y redimensionarlas si es necesario.
Aprenderemos que un módulo de Drupal puede usar aplicaciones libres de terceros que no incluye en la descarga del módulo y que hay que descargarla y añadírsela al módulo, para ello hay que leer bien la documentación más actualizada y si no es suficiente aprenderemos a encontrar algún tutorial en internet para hacer la configuración.


Este es el resumen de los pasos para instalar y configurar Ckeditor con la funcionalidad Ckfinder y los detalles para configurar todo el conjunto para tener listo un editor wysiwyg con módulo de subida de imágenes y edición básica en nuestros nodos.

1. Descargamos el módulo ckeditor: http://drupal.org/project/ckeditor y copiarle de tal forma que quede en sites/all/modules.

2. Descargamos la aplicación ckeditor de: http://ckeditor.com/download.

3. Copiamos los contenidos de la carpeta de la aplicación a /sites/all/modules/ckeditor/ckeditor.

4. Descargamos el módulo de imágenes ckfinder: http://ckfinder.com/download.

5. Extraemos ckfinder y lo copiamos en /sites/all/modules/ckeditor/ckfinder.

6. Las habremos colocado bien en su sitio si las dos aplicaciones ckeditor y ckfinder son hermanas y dentro de sus carpetas vemos los archivos quedando así:
- sites/all/modules/ckeditor (vemos los archivos del modulo ckeditor de drupal).
- sites/all/modules/ckeditor/ckeditor (vemos los archivos de la aplicación ckeditor).
- sites/all/modules/ckeditor/ckfinder (vemos los archivos de la aplicación ckfinder).

7. Editamos el archivo config.php de ckfinder ubicado en /sites/all/modules/ckeditor/ckfinder/config.php para borrar la función CheckAuthentication() de las línea 21-34 aproximadamente.

8. Después de la línea 48 justo debajo de $baseUrl = '/ckfinder/userfiles/';
añadimos la línea:
require_once '../../../../includes/filemanager.config.php';

9. Habilitamos los permisos de escritura en /sites/default/settings.php y lo editamos para descomentar la línea de cookie domain poniendo $cookie_domain = "nuestrodominio.com"; (si es localhost ponemos localhost).

10. Grabamos settings.php y volvemos a habilitar el permiso de solo lectura para que archivo quede seguro.

11. Vamos al menú de administración y le damos permisos a los usuarios autentificados para las acciones siguientes:
- Access ckeditor
- Allow CKFinder file uploads

12. Vamos a la configuración de ckeditor en /admin/settings/ckeditor y editamos advanced profile cambiando las siguientes líneas:
Filebrowser type:
(link dialog)
(image dialog)
(flash dialog)
Seleccionando ckfinder para estos diálogos.

Video del día 4:

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.

CURSO DRUPAL ABRIL 2011 - DIA 3: DESCUBRIENDO DRUPAL, CONCEPTOS BASICOS Y TERMINOLOGIA EN DRUPAL

Conoceremos como es el mundo de Drupal.

Inicialmente descubriremos:

1.- Los Nodos.

2.- Tipos de contenido.

3.- Las Taxonomías categorizan el contenido.

4.- Mi cuenta de usuario

5.- El menú de administración.

6.- Como se crea contenido.

7.- Los menús en Drupal (navegación, primary links y secondary links).

8.- Los bloques y las regiones de contenido.

9.- Modificando la Información general del sitio.

10.- Los módulos amplian la funcionalidad del sitio.

11.- El Cron ejecuta las tareas programadas.

12.- Los Temas cambian y definen el aspecto y estilo de nuestro sitio.

13.- Veremos como se contrata un alojamiento web, como se registra un dominio en internet.

14.- Temas y módulos en drupal.org.

15.- Los nodos que tienen nuestro sitio y las propiedades de cada nodo.

16.- Administrar comentarios.

17.- Las vistas permiten hacer listados personalizados de los nodos.

Caso práctico.- Instalación de un módulo en Drupal.

Después los alumnos podrán navegar por el menú de administración de su instalación de Drupal para familiarizarse con estos conceptos y podrán instalar el módulo de traducción de Idioma para poner su Drupal en castellano.

Video del día 3:

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.

CURSO DRUPAL ABRIL 2011 - DIA 2: DOMINIO, HOSTING E INSTALACION DE DRUPAL EN UN SERVIDOR REAL DE ALOJAMIENTO.

Veremos como se contrata un alojamiento web, como se registra un dominio en internet, configuraremos el alojamiento para instalar Drupal y haremos la instalación.
Video de la clase 2:

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.

Contenido de la clase 2:

1.- Veremos como contratar alojamiento web en una empresa de hosting.
2.- Aprenderemos como se registra un dominio en un registrador de dominios.
3.- Aprenderemos a modificar las DNS del dominio para que apunten al alojamiento web. Daremos de alta nuestro dominio en el panel del alojamiento web.
4.- Aprenderemos a crear la base de datos MySql y el usuario para nuestro sitio Drupal en el servidor de alojamiento web contratado a través de Cpanel que es un estándar en administración de hosting Linux.
5.- Aprenderemos a Instalar Drupal en el servidor web.

CURSO DRUPAL ABRIL 2011 - DIA 1: DESDE INTERNET HASTA DRUPAL

Video del Día 1.

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.

Desde Internet a Drupal:

Se pregunta a los alumnos que describan los siguientes conceptos y se explican:

INTERNET:
1.- Qué es una dirección IP
2.- Que es un puerto TCP-IP
3.- Que servicios ofrecen los puertos TCP 80, 21, 25, y 110
4.- Qué es un nombre de Dominio en internet
5.- Qué es una DNS

LA WEB:
6.- Qué es un Servidor Web
7.- Qué es Html? Hipertext Markup Language
8.- Qué es Javascript
9.- Qué es Css
10.- Qué es Php
11.- Qué es MySql
12.- Qué diferencias hay entre jpg, gif, png, y bmp
13.- Qué diferencia hay entre una imagen de mapa de bits y una imagen vectorial
14.- Qué es Apache

GESTORES DE CONTENIDO:
15.- Qué es un Gestor de contenido web
16.- Cita algunos gestores de contenido conocidos en internet
17.- Qué diferencia encuentras entre los diferentes gestores de contenido que has nombrado

DRUPAL:
18.- Por qué te interesa Drupal y que te gustaría aprender en el curso de Drupal

Drupal - Special Menu Items - Como crear elementos de menu padre con link deshabilitado o sin enlace

Veremos como instalar el módulo Special Menu Items para poder tener opciones de menú no clickables, que sirvan para desplegar las opciones hijas de menu pero no tengan funcionalidad.
También se pueden crear separadores de menú.
El módulo se instala, se activa y se configura diciéndole que etiqueta html queremos que añada a los elementos de menú no clickables, puede ser span, a, o cualquier otra que nos interese.
Para los separadores podemos usar hr o cualquier otra personalizable.
En el video de ejemplo yo uso la etiqueta a para las opciones no clickables porque span que es la que trae por defecto hace que se pierda el aspecto css de la opción de menú.

www.e-duca.eu
Asociación de Diseño y Desarrollo web basado en Drupal.
La asociación E-duca.eu crea páginas web para sus asociados usando Drupal.
Da apoyo permanente a las asociaciones y emprendedores para crear y mejorar su sitio web usando Drupal
Nuestra cuota de socio de 15 euros mensuales incluye diseño, creación y mejora de tu sitio web.
Nuestra cuota de socio de 39 euros mensuales incluye tienda online y web en varios idiomas.
Hazte socio en http://www.e-duca.eu/hazte-socio
Infórmate de nuestras cuotas en http://e-duca.eu/diseno-web/web-empresarial-drupal

FACEBOOK: COMO CREAR UNA PAGINA PERSONALIZADA DE BIENVENIDA CON IFRAMES PARA EL NUEVO FACEBOOK

 

Create a custom welcome page for new fans.

  1. Use Facebook as yourself (not as page)
  2. Create a folder on your server called iFrames.  Add your index.html file and images to this folder. Publish to the web.
  3. Create your iFrames page by going to http://facebook.com/developers
  4. Click on Set up New App. Name it and Create.
  5. Edit info on the About tab
  6. Click on Facebook Integration. In the  Canvas URL field, enter the complete URL to your iFrames folder on the server.
  7. Disable discovery.
  8. Under Page Tabs, name the page “Welcome.” and choose iframes. The tab URL is index.html. Click Save.
  9. Click on the Application Profile Page link on the right side of your application page.
  10. On the left, click on Add to my Page.
  11. Choose the Page .
  12. Hit Close
  13. From your Fan Page, click on the Edit Page link.
  14. Then click on Apps and find the application that you just added.
  15. Click on the Edit Settings link next to the app and Add link.

Thanks to:

http://www.hyperarts.com/blog/adding-iframe-application-to-facebook-fan-page/#ixzz1Ev8rU5CN

Asociación de apoyo al diseño y desarrollo web para empresas y organizaciones

Cómo usar gmail para mandar correo desde otras direcciones

¿Tienes varias cuentas de correo y además usas habitualmente gmail?, Ahora puedes configurar tu cuenta de gmail para enviar desde ahi correo en nombre de las otras cuentas.

Además si junto a este truco configuras el correo de las otras cuentas para que te lo reenvie siempre a tu cuenta de gmail, tendrás en gmail una herramienta de correo centralizada, muy potente, gratuita y en entorno web, que te permitirá gestionar tus cuentas desde cualquier ordenador.

¿Útil verdad?

Esta es la configuración que habría que hacer en gmail para añadir una cuenta externa que tengamos y podemos enviar correos con su nombre.

- Entramos en nuestra cuenta de gmail.

- Vamos a Configuración (arriba a la derecha)

- Click en pestaña de Cuentas e importación.

- En el area de enviar mensaje como hacemos click Enviar desde otra dirección.

Veremos esto:

enviar mensaje como

Escribimos el nombre que nos guste que aparezca al enviar desde esta cuenta y su dirección de email.

Click en siguiente.

Ahora nos da dos opciones: Elegimos la primera y más sencilla que es hacerlo desde Gmail.

enviar desde gmail

Click en Paso siguiente

Ahora el sistema nos enviará un correo de confirmación a la cuenta que queremos añadir, lo apuntamos porque nos lo pedirá para terminar el proceso. (Este proceso lo hace gmail por seguridad, de esta forma gmail se asegura que esa cuenta es nuestra y no de otro)

Click en Enviar Verificación.

verificar que la cuenta que queremos añadir es nuestra

Leemos desde la cuenta que queremos añadir el mensaje con el código que nos habrá envíado gmail y lo activamos. Con esto nuestra cuanta ya está añadida y confirmada a nuestra de gmail. Simple y muy efectivo.

Ahora siempre que vayamos a enviar un correo tendremos en el campo De: la posibilidad de elegir desde que cuenta queremos enviar nuestro correo.

 

Para contar con asesoramiento permanente con tu página web y todo lo relacionado con internet, hazte socio de e-duca.eu en http://www.e-duca.eu/hazte-socio.

 

NEW - Ninguna empresa sin web - E-duca.eu


Si te estás preguntando las ventajas que puede darte tener tu página web, aqui tienes los argumentos oficiales que el el gobierno está promocionando.
Informáte de nuestras cuotas asociado de 15 y 39 euros en http://www.e-duca.eu/hazte-socio
Te ayudaremos a poner tu negocio en internet subvencionando tu inversión y contarás con apoyo permanente para el éxito de tu proyecto y la mejora de tu competitividad.
Asociación de apoyo al desarrollo Web E-duca.eu
http://www.e-duca.eu

Drupal - Añadiendo imágenes con ckeditor+ckfinder y redimensionandolas online, creando menu

En este tutorial vemos como:

1. Creamos un post de tipo página en Drupal

2. Subimos imágenes desde nuestro pc para el post con ckeditor + ckfinder

3- Redimensionamos la imágen desde el propio editor online.

4- Aprendemos la diferencia entre alineación izquierda y derecha float y no alineación.

5- Aprendemos la importancia de escribir el texto ALT para las imágenes.

6- Creamos una nueva opción en el menú principal para nuestro post y la reordenamos.

 

Este tutorial es para enseñar a nuestro asociado CoopMed a manejar su contenido pero es muy útil para enseñar a cualquier usuario de Drupal con el módulo Ckeditor+Ckfinder instalados.

 

Diseño web www.e-duca.eu

Asociación de apoyo al desarrollo web basado en Drupal.

Drupal - Instalacion en windows, cual es la herramienta para ejecutar mas rapido en localhost

Después de probar WAMP Server 2.1, Acquia Stack Installer, y XAMPP para windows, el más rápido con diferencia es XAMPP 1.7.1, carga rápido el menú modules que es el más lento de cargar, para cargar el menu con los otros sistemas tardaba unos 5 segundos de media, con XAMPP 1.7.1 carga entre 1 y 2 segundos. Creo que esto se debe a que XAMPP 1.7.1 viene con php eaccelerator incluido y el rendmiento es espectacularmente bueno. También he ajustado el archivo c:\windows\system32\drivers\etc\hosts, comentando la linea que dice ::1 localhost con una almohadilla delante para que no ralentice las búsquedas de la url http://localhost ya que esto era un problema con vista. He instalado la versión 1.7.1 de XAMPP para windows en lugar de una más moderna porque drupal aconseja para la versión 6 un php no mayor a 5.2.x y esta versión viene con 5.2.9, las posteriores ya traen 5.3 y puede dar problemas con drupal 6. Totalmente aconsejable para cualquier persona interesada en probar Drupal, o ejecutarlo en su pc para desarrollar más rápido sin necesidad de trabajar en un servidor web remoto. El link de descarga para XAMPP 1.7.1 es: http://sourceforge.net/projects/xampp/files/XAMPP%20Windows/1.7.1/xampp-...

Drupal - Creando opciones de menu y usando ckeditor para el nuevo sitio de coopmed.org

Drupal - Creando opciones de menu y usando ckeditor from Asociacion E-duca.eu on Vimeo.

How to:
Enseñando a manejar el nuevo sitio Coopmed.org
Asignando contenido a las opciones de menu
Creando nuevas opciones de menu
Usando ckeditor
Drupal 6
Diseño web www.e-duca.eu
Asociación de apoyo al desarrollo web e-duca.eu

www.coopmed.org

Facebook: Que es mejor crear en facebook, un perfil, una pagina, o un grupo

Ante esta duda, verás que sencillo te resulta decidirte una vez que sepas las diferencias entre perfiles, grupos y páginas de facebook:

- Un perfil de Facebook: es para las personas. En un perfil encontrarán todas las actividades que ha desarrollado una persona dentro de Facebook y también las relaciones sociales que establece con otros usuarios de la misma plataforma. El perfil muestra la personalidad y los intereses de cada persona. Muestra sus intereses y también cómo es su vida on line.

- Una página de Facebook: sirve para promocionar productos, instituciones o figuras públicas. Una página no “pide ser tu contacto o amigo”, sino que una página recibe admiradores, seguidores y partidarios de lo que se están proponiendo o dando a conocer. La otra gran diferencia es que la página en Facebook tiene una dirección única que se puede ver desde fuera de facebook. Es decir, cualquier persona puede ver esa página en Facebook sin tener que estar inscrito en facebook.

- Un grupo de Facebook: es creado por usuarios que desean reunir a personas en un tema en común. A diferencia de un perfil, donde los contactos son tus amigos y conocidos, en un grupo se pueden sumar personas de diferentes partes y que no se conocen. Un grupo es un punto de encuentro para que la gente se conozca y establezca nuevas relaciones.

Para una empresa u organización como puede ser una asociación, ong, o fundación es bueno crear una página y más adelante si lo consideras convieniente para causas o acciones concretas puedes ir creando grupos.

Primero debes crearte un perfil o usar uno que tengas antes de crear tú página, ya que este usuario será el creador y administrador inicial de la página, y de los grupos que crees posteriormente.

Resumiendo:

1. El primer paso es crear un perfil de usuario si no lo tienes para poder crear tu página:

http://www.facebook.com y ahi mismo registras el nuevo usuario o haces login si ya lo tienes.

2. El segundo paso es crear tu página para la fundación a través del enlace:

http://www.facebook.com/pages/create.php

Vas rellenando los datos de la fundación que te vaya pidiendo.

Después que la tengas es muy bueno integrar la página de facebook en vuestra página web institucional con dominio propio, ya que así puedes difundirla y hacer que se agreguen más fans. Puedes mostrar los comentarios o las noticias de tu página de facebook en tu página web.

E-duca.eu es una asociación especializada en dar apoyo en el desarrollo web de las organizaciones, puedes preguntarnos cualquier duda sin ningún coste y te daremos asesoramiento. Para ser socio tenemos cuotas mensuales muy asequibles de 15 y 39 euros, y como socio dispones de servicios a la medida de creación, mantenimiento y mejora de tu página web, y creación y promoción de imagen en redes sociales.

Todos los servicios están incluidos en la cuota mensual de socio.

Puedes visitar nuestra web para informarte o consultarnos cualquier duda en www.e-duca.eu

Y si deseas hacerte socio puedes hacerlo en http://www.e-duca.eu/hazte-socio

Laura Martín

Asesora de proyectos web de E-duca.eu

Asociación de apoyo al desarrollo web E-duca.eu

Drupal: Instalando Jquery UI, un interface de usuario para jquery que algunos módulos necesitan

El módulos lo podemos bajar de http://drupal.org/project/jquery_ui

La versión 1.6 es la última que está disponible, requiere que bajemos la libería Jquery de google: http://code.google.com/p/jquery-ui/downloads/list?q=1.6*

Debemos descomprimirlo dentro de la carpeta jquery_ui llamando a la carpeta jquery.ui para quede de la forma /jquery_ui/jquery.ui/ui donde aqui dentro deben estar los js.

Después solo queda subir y activar el módulo normalmente.

 

Drupal: Cómo añadir una firma automaticamente a todos nuestros posts

Solución sólo para firmas de comentarios:

Vamos a admin/user/settings
En Signatures, habilitamos Signature support
Editamos nuestro usuario, por ejemplo: user/1/edit
En el campo signature ponemos la firma que queremos que aparezca al final de todos nuestros envíos.

Solución para todos los posts:
Añadimos la firma que queremos que aparezca abajo en el node.tpl.php
Ejemplo: Ver la firma en todos los nodos de e-duca.eu

Drupal: Caso real: Actualizando www.e-duca.eu de Drupal 5.x a Drupal 6.x

Diseño web E-duca.eu | Drupal | Actualizando un sitio real de Drupal 5.x a Drupal 6.x from Asociacion E-duca.eu on Vimeo.

Tutorial, Screencast. Caso de uso real.
En este video vemos como se actualiza el sitio www.e-duca.eu de la versión 5.x a la versión 6.x de Drupal.
Diseño web.

Caso práctico: Sitio www.e-duca.eu.

Pasos a reproducir:

1: Hacemos copia de seguridad de archivos y base de datos.

2: Desactivamos todos los módulos que no sean del Core y anotamos los que hemos desactivado.

3: Eliminamos todos los archivos del sitio drupal.

4: Subimos los archivos de la nueva versión de drupal.

5: Subimos la carpeta files de la copia de seguridad y los archivos que tuvieramos modificados como el archivo .htaccess o robot.txt si lo teníamos modificados.

6: Editar el settings.php con los datos del anterior fichero.

7: Ejecutamos update.php.

8: Subimos los módulos contribuidos de la nueva versión, los activamos uno a uno y hacemos el update de cada uno (así si hay algún error al actualizar alguno podemos ver claramente donde está).

9: Instalamos el módulo de traducciones automáticas y lo habilitamos para que nos traduzca todo a español.

10: Configurar la nueva versión de los módulos que sea necesario.

Mysql: Cómo cambiar el collation a todas las tablas y campos de una base de datos.

Este script php está funcionando muy bien para cambiar los collation de una base de datos. Cambia todo los collation no solo de las tablas sino también de los campos por lo que es muy completo.

<?php

function MysqlError()
{
if (mysql_errno())
{
echo "Mysql Error: " . mysql_error() . "\n";
}
}

$username = "username_de_bd";
$password = "password_de_bd";
$db = "base_de_datos";
$host = "localhost";

$target_charset = "utf8";
$target_collate = "utf8_general_ci";

echo "

";

$conn = mysql_connect($host, $username, $password);
mysql_select_db($db, $conn);

$tabs = array();
$res = mysql_query("SHOW TABLES");
MysqlError();
while (($row = mysql_fetch_row($res)) != null)
{
        $tabs[] = $row[0];
}

// now, fix tables
foreach ($tabs as $tab)
{
        $res = mysql_query("show index from {$tab}");
        MysqlError();
        $indicies = array();

        while (($row = mysql_fetch_array($res)) != null)
        {
                if ($row[2] != "PRIMARY")
                {
                        $indicies[] = array("name" => $row[2], "unique" => !($row[1] == "1"), "col" => $row[4]);
                        mysql_query("ALTER TABLE {$tab} DROP INDEX {$row[2]}");
                        MysqlError();
                        echo "Dropped index {$row[2]}. Unique: {$row[1]}\n";
                }
        }

        $res = mysql_query("DESCRIBE {$tab}");
        MysqlError();
        while (($row = mysql_fetch_array($res)) != null)
        {
                $name = $row[0];
                $type = $row[1];
                $set = false;
                if (preg_match("/^varchar\((\d+)\)$/i", $type, $mat))
                {
                        $size = $mat[1];
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} VARBINARY({$size})");
                        MysqlError();
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} VARCHAR({$size}) CHARACTER SET {$target_charset}");
                        MysqlError();
                        $set = true;

                        echo "Altered field {$name} on {$tab} from type {$type}\n";
                }
                else if (!strcasecmp($type, "CHAR"))
                {
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} BINARY(1)");
                        MysqlError();
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} VARCHAR(1) CHARACTER SET {$target_charset}");
                        MysqlError();
                        $set = true;

                        echo "Altered field {$name} on {$tab} from type {$type}\n";
                }
                else if (!strcasecmp($type, "TINYTEXT"))
                {
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} TINYBLOB");
                        MysqlError();
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} TINYTEXT CHARACTER SET {$target_charset}");
                        MysqlError();
                        $set = true;

                        echo "Altered field {$name} on {$tab} from type {$type}\n";
                }
                else if (!strcasecmp($type, "MEDIUMTEXT"))
                {
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} MEDIUMBLOB");
                        MysqlError();
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} MEDIUMTEXT CHARACTER SET {$target_charset}");
                        MysqlError();
                        $set = true;

                        echo "Altered field {$name} on {$tab} from type {$type}\n";
                }
                else if (!strcasecmp($type, "LONGTEXT"))
                {
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} LONGBLOB");
                        MysqlError();
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} LONGTEXT CHARACTER SET {$target_charset}");
                        MysqlError();
                        $set = true;

                        echo "Altered field {$name} on {$tab} from type {$type}\n";
                }
                else if (!strcasecmp($type, "TEXT"))
                {
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} BLOB");
                        MysqlError();
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} TEXT CHARACTER SET {$target_charset}");
                        MysqlError();
                        $set = true;

                        echo "Altered field {$name} on {$tab} from type {$type}\n";
                }

                if ($set)
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} COLLATE {$target_collate}");
        }

        // re-build indicies..
        foreach ($indicies as $index)
        {
                if ($index["unique"])
                {
                        mysql_query("CREATE UNIQUE INDEX {$index["name"]} ON {$tab} ({$index["col"]})");
                        MysqlError();
                }
                else
                {
                        mysql_query("CREATE INDEX {$index["name"]} ON {$tab} ({$index["col"]})");
                        MysqlError();
                }

                echo "Created index {$index["name"]} on {$tab}. Unique: {$index["unique"]}\n";
        }

        // set default collate
        mysql_query("ALTER TABLE {$tab}  DEFAULT CHARACTER SET {$target_charset} COLLATE {$target_collate}");
}

// set database charset
mysql_query("ALTER DATABASE {$db} DEFAULT CHARACTER SET {$target_charset} COLLATE {$target_collate}");

mysql_close($conn);
echo "

";