Cómo insertar el selector de idiomas de qTranslate en WordPress en cualquier sitio de la plantilla o template

Si tenemos instalado qTranslate en nuestro WordPress es posible que queramos situar el selector de banderas de los idiomas en el header u en otra zona. Si queremos insertarlo en el header tenemos que ir al archivo de la plantilla de WordPress donde se programa en header, generalmente header.php. Ahí insertamos lo siguiente:

<?php if ( function_exists( 'qtrans_generateLanguageSelectCode' ) ) qtrans_generateLanguageSelectCode( 'image' ); ?>

Después vamos al css de la plantilla, generalmente style.css y ponemos lo siguiente:

#qtranslate-chooser { list-style-type:none; float:right }
#qtranslate-chooser li { float : left; margin-right: 5px; margin-top: 10px; }

Podemos cambiar estos valores como queramos para que quede bien ajustado. Yo tuve que cambiar en una plantilla margin-right y margin-top para que quedara como yo quería.

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 ver .htaccess y otros archivos ocultos en FileZilla

Si queremos ver y editar el archivo .htaccess utilizando Fillezilla tenemos que habilitar «Forzar mostrar archivos ocultos». Para esto hacemos lo siguiente:

  1. Abrimos FileZilla
  2. Pulsamos en la pestaña «Servidor»
  3. Marcamos la opción «Forzar mostrar archivos ocultos»

Como esto ya podremos ver .htaccess y otros archivos ocultos

Cómo recuperar contraseñas guardadas en FileZilla

Si hemos olvidado alguna contraseña que utilizamos en FilleZilla su recuperación es muy sencilla:

  1. Abrimos FileZilla, pulsamos en la pestaña Archivo y pulsamos en Exportar

    Exportar FileZilla
    Exportar FileZilla
  2. Nos aparece un formulario «Exportar opciones» con 3 posibilidades. Si queremos sólo recuperar la contraseña pulsamos la primera «Exportar entradas del gestor de sitios» y pulsamos aceptar. Esto genera un archivo .xml que guardamos donde deseemos

    Exportar opciones FileZilla
    Exportar opciones FileZilla
  3. Abriendo ese archivo .xml podemos buscar nuestro <Host> que nos interese y entre las etiquetas <User></User> estará el usuario y entre <Pass></Pass> estará la contraseña

Cómo leer en un archivo .txt una línea al azar o aleatoria con PHP utilizando rand y count

Si tenemos un archivo .txt podemos leer gracias a PHP una línea aleatoria del mismo.

Imaginemos que tenemos el siguiente archivo 1.txt:

1,primera
2,segunda
3,tercera
4,cuarta
5,quinta
6,sexta
7,septima

Para leer una línea al azar de este .txt podemos crear el siguiente .php:

$contenido = file("1.txt");
$linea_azar = $contenido[rand(0, count($contenido) - 1)];
echo $linea_azar;

Con esto ya podríamos leer las filas del archivo 1.txt al azar.

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.

Cómo solucionar en el campo Body de Drupal 7 «Este campo está desactivado porque no tiene permisos suficientes para editarlo»

En Drupal 7 podemos tener un problema después de crear un nuevo rol pues puede darse la circunstancia que los usuarios que tienen ese rol no puedan editar el campo Body, apareciendo el siguiente mensaje dentro del Body: «Este campo está desactivado porque no tiene permisos suficientes para editarlo.». Esto sucede porque nuestro usuario no tiene permisos suficientes para escribir en un campo que puede que esté en Full HTML o Filtered HTML y ese rol sólo tiene permisos para Plain text.

Para solucionarlo tenemos que hacer lo siguiente:

  1. Vamos a Configuración, y en el bloque Autoría de Contenido pinchamos en «Formatos de Texto»
  2. Nos encontraremos con «Filtered HTML», «Full HTML», «Plain text» y puede que «PHP code». Veremos a la derecha si nuestro rol tiene permiso para utilizar Full o Filtered HTML
  3. Empezamos activando para Filtered HTML nuestro Rol y vemos si con esto ya podemos editar el campo Body.
  4. Si siguiera si verse activamos Full HTML para nuestro rol y ya se podrá editar sin problemas el campo Body

Cómo sumar valores de un field collection en un field computed en Drupal 7

Si tenemos un campo field collection con campos como números decimales, números enteros, etc. es posible que queramos sumar esos valores en otro campo Computed.

Por ejemplo imaginemos que tenemos un campo field collection llamado: field_superf y este tiene campo de texto Nombre y un campo decimal llamado field_constr y tenemos los siguientes datos:

Sotano 50,00 m2

Planta baja 60,00 m2

Los valores del campo field_constr los podemos sumar en otro campo Computed escribiendo lo siguiente en el Computed Code (PHP):

$sum = 0;
$wrapper = entity_metadata_wrapper($entity_type, $entity);
foreach($wrapper->field_superf as $collection) {
$sum += $collection->field_constr->value();
}
$entity_field[0]['value'] = $sum;

Donde hemos puesto field_superf ponemos el nombre del campo field collection y donde hemos puesto field_constr ponemos el nombre del campo del que queremos sumar todos sus elementos.

En el Display Code (PHP) ponemos:

$display_output = $entity_field_item['value'];

Al ver el resultado obtendríamos en este caso: 110,00, que es la suma de 50,00 y 60,00 del ejemplo que hemos visto.

Cómo solucionar el error Maximum execution time of 300 seconds al importar archivos en phpmyadmin

Cuando importamos un archivo muy grande desde phpmyadmin en XAMPP puede que tardemos más de 300 segundos en cargarlo y nos avise del siguiente error:

Maximum execution time of 300 seconds

Para solucionarlo en XAMPP tenemos que ir al archivo config.inc.php que está en la carpeta phpmyadmin/ y añadirle al final (pero antes del símbolo ?>) lo siguiente:

$cfg['ExecTimeLimit'] = 6000;

NOTA: El código $cfg[‘ExecTimeLimit’] = ya no aparece más en las últimas versiones de XAMPP (Gracias por la aportación de Piet Hermans, ver su comentario más abajo).

Con esto ya está hasta 6000 segundos cargando el archivo (si no es suficiente aumentamos el número hasta que lo podamos cargar).

También hay que modificar el php.ini cambiando los valores por los siguientes:

max_execution_time = 5000

max_input_time = 5000

Con esto a mi me ha funcionado perfectamente, de todas formas no se si el último punto es prescindible pero estos han sido los pasos que he seguido para solucionar el problema Maximum execution time of 300 seconds en XAMPP.