Dar permisos proyecto Drupal 7 en Linux (Ubuntu 14.04)

Cuando importamos un proyecto de Drupal 7 en linux (en mi caso ubuntu 14.04) nos podemos encontrar con problemas en los permisos y en el autor de los archivos.

Si tenemos algún problema podemos hacer lo siguiente:

1. Revisar el autor situándonos en la raíz de la web y escribiendo en la consola

ls -la

Ahí podemos ver que usuario es el autor de los archivos, si no esta www-data tenemos que cambiarlo para que esté sea el autor ya que es el usuario por defecto de la web, nos situamos en un nivel por encima de nuestra web y ponemos:

chown victor:www-data directorio-web/ -R

Con esto hemos cambiado el usuario en todos los archivos de la carpeta donde está drupal: directorio-web

2. Permisos en toda la web (después afinamos)

chmod 755 directorio-web/ -R

3. Permisos en settings.php

chmod 444 sites/default/settings.php

4. Permisos en la carpeta /files

chmod 775 sites/default/files/ -R

En el punto 4 también puede valer en algunos tutoriales 777

Ocultar intercambiar idiomas debajo del contenido en Drupal 7

Si estamos utilizando i18n con Drupal 7 puede que tengamos el intercambio de idiomas debajo del contenido. Por ejemplo, si tenemos los idiomas español, inglés y francés y estamos en un nodo con idioma español puede que veamos abajo: inglés francés, con hipervínculo a su traducción.

Si queremos ocultarlo o esconderlo se comentan en la red diferentes opciones como ocultarla por CSS o cambiar la plantilla, pero al final son parches. La solución es mucho más sencilla:

  1. Vamos a admin/config/regional/i18n/node
  2. Marcamos el check Esconder enlaces de traducción de contenido y guardamos

Con esto habremos eliminado el intercambiador de idiomas en la parte inferior de los nodos.

Salto de línea en texto sin formato con Drupal 7

Cuando tenemos un campo Área de texto y elegimos texto sin formato vemos que al crear líneas pulsando en el enter en el editor nos lo guarda pero en el frontend no. Es decir, no vemos en el frontend saltos de línea por cada vez que hemos dado al enter cuando escribimos.

Para solucionarlo tenemos que editar el archivo css de la plantilla que utilizamos y añadir lo siguiente:

.field-type-text-long .field-item.even {
    white-space: pre-line;
}

Borramos cache si fuera necesario y al recargar la página vemos que si muestra saltos de línea.

Cómo quitar título en la página principal con Drupal 7

Si con Drupal 7 utilizamos una plantilla que estamos creando a medida como un subtheme de Zen puede que nos encontremos algunos problemas de configuración. Uno de ellos puede ser que nos muestre el título de la página en la página de inicio. Eliminarlo es muy sencillo:

.front h1#page-title {
  display: none;
}

Cómo poner una página o nodo como portada o home en Drupal 7

Si queremos poner una determinada página o un nodo como nuestro Home o Inicio de nuestra web con Drupal 7 es muy sencillo.

Si nuestra web en Drupal 7 la tenemos traducida al español seguimos los siguientes pasos:

  1. Vamos a Configuración, y ahí pulsamos en Información del sitio
  2. En Información del sitio vemos en el apartado Portada: Página inicial predeterminada
  3. En el espacio que nos da ponemos la url restante de nuestro nodo en cuestión
  4. Guardamos y vemos el Home o Inicio de nuestra web

Con estos 4 pasos hemos cambiado la página de portada de nuestra web.

Cómo utilizar con Conditional fields el operador lógico OR para campos referencia a término de taxonomías en Drupal 7

Cuando utilizamos el módulo Conditional fields con Drupal 7 queremos que unos campos aparezcan condicionados por, por ejemplo, los valores de otro campo. Cuando los valores de ese campo son términos de una taxonomía y queremos que algunos de estos términos afecten al primer campo (es decir, utilizar el operador lógico OR) tenemos utilizar el número tid de la taxonomía en la pestaña Manage dependencies.

Utilizando un ejemplo, imaginemos que tenemos un campo Nº de botellas que queremos que aparezca cuando en otro campo proveniente de una taxonomía que llamamos Producto tenemos los valores: Leche, Agua y Vino, pero no queremos que aparezca el campo Nº de botellas para el resto de los valores del campo Producto, por ejemplo para Chocolate, Pan, etc.

Cuando vamos a la pestaña “Manage Dependencies” dentro de nuestro Content Type o Tipo de Contenido (que está entre la pestaña Gestionar campos y Gestionar presentación) crearemos una nueva dependencia donde Dependent es el campo “Nº de botellas” y Dependee es “Producto” y dejamos igual lo que viene por defecto (The dependent field is visible when the dependee has value…) y pulsamos el botón “Add dependency”. En Values input mode elegimos “Any of these values (OR)” y ponemos el tid de cada una de los términos de las taxonomías. Para saber este número vamos a la taxonomía y cuando estamos viendo los términos al poner el ratón sobre el enlace Editar veremos que tenemos una url así: nuestaweb/taxonomy/term/numero/edit, el tid de cada término sera el valor número en su url. Dejamos el resto igual y pulsamos en el botón “Guardar las opciones”.

CAPTCHA en cualquier tipo de contenido de Drupal 7

Si queremos que aparezca CAPTCHA en un tipo de contenido en concreto tenemos que ir a Configuración > Usuarios > CAPTCHA

Vemos que sólo utiliza CAPTCHA por defecto en los formularios de contacto:

Comment form CAPTCHA

Para añadir CAPTCHA a un tipo de contenido en concreto vamos a la última fila que esta en blanco añadimos: comment_node_CONTENT_TYPE_form (sustituyendo CONTENT_TYPE por el nombre que le asigna drupal 7 a ese tipo de contenido) y seleccionamos el tipo de pregunta que queramos (en nuestro caso Math).

Haciendo los pasos de arriba, si vamos a cualquier nodo de ese tipo de contenido vemos que el CAPTCHA aparecerá al final.

CAPTCHA en las entradas de Blog de Drupal 7

Cuando instalamos CAPTCHA vemos que por defecto no aparece el CAPTCHA en las entradas de Blog.

Para que aparezca vamos a Configuración > Usuarios > CAPTCHA

Vemos que sólo utiliza CAPTCHA por defecto en los formularios de contacto:

Comment form CAPTCHA

Para añadir CAPTCHA a las entradas por Blog en la última fila que esta en blanco añadimos: comment_node_blog_form y seleccionamos el tipo de pregunta que queramos (en nuestro caso Math), quedando así:

Comment node blog CAPTCHA

Finalmente si vamos a cualquier entrada del blog podemos comprobar que ha añadido el CAPTCHA al final.

Cómo seleccionar Full HTML como formato de texto por defecto en Drupal 7

Si queremos seleccionar “Full HTML” como nuestro formato de texto por defecto en Drupal 7 tenemos que hacer lo siguiente:

  1. Vamos a: Configuración > Formatos de texto
  2. Vemos que por defecto están ordenados primero “Filtered HTML”, después “Full HTML” y por último “Plain text”. Esto quiere decir que la primera opción que mostrará nuestro navegador será “Filtered HTML”, la segunda “Full HTML” y la tercera “Plain text”

    Tipos de formato de texto en Drupal 7
    Tipos de formato de texto en Drupal 7
  3. Si queremos que aparezca primero Full HTML arrastramos su fila hasta ponerla la primera y guardamos los cambios

    Tipos de formato de texto con Full HTML primero
    Tipos de formato de texto con Full HTML primero

También tenemos la opción de desactivar el formato de texto que queramos.