Image
Calcular contenedor de texto segun lineas
Calcular contenedor de texto segun lineas

Tutorial para calcular contenedor de texto segun lineas. Hoy explicaremos cómo calcular el tamaño de un contenedor que contiene texto, y sólo queremos que se visualicen unas líneas determinadas.

 

Image
Calcular contenedor de texto segun lineas

En este caso, tenemos varias tarjetas del mismo estilo, y quedaría mal que en cada una aparecieran más o menos líneas, por lo que vamos a hacer lo siguiente:

Inspeccionamos el párrafo, y en el inspector (el de chrome por ejemplo) buscamos qué tamaño de letra tiene, en nuestro caso vemos que tiene un 0.85rem (13.6 píxeles).

Después buscamos en el inspector la propiedad line-height, para los que no lo sepan consiste en establecer la altura de cada línea que forma el contenido de texto de un elemento, por lo que se emplea para controlar el interlineado del texto.

Nuestro párrafo tiene un line-height de 24 píxeles.

Image
Calcular contenedor de texto segun lineas

 

Image
Calcular contenedor de texto segun lineas

Una vez que tenemos el tamaño de letra y el line-height, los multiplicamos entre ellos y así averiguaremos el alto (height) que debe tener nuestro contenedor.

0.85 x 24=20.4 píxeles

Este sería el cálculo para una sola línea, pero en este caso queremos que nos aparezcan dos, por lo tanto multiplicamos por dos nuestro resultado:

20.4 x 2=40.8 píxeles

Hay que tener en cuenta que debemos sumar si el contenedor tuviera algún borde, padding o algo para que el cálculo sea lo más exacto posible, en nuestro caso no tenemos nada así que lo dejaremos así.

Image
Calcular contenedor de texto segun lineas

Vemos que seguimos visualizando más de dos líneas, por lo que añadiremos a nuestro contenedor la propiedad overflow: hidden, así, lo que sobrepase los píxeles que hemos marcado de alto ya no lo veremos y quedará oculto.

Image
Calcular contenedor de texto segun lineas

Ya tendríamos nuestro contenedor a la medida necesaria y todas las tarjetas ocuparían lo mismo.

Image
Calcular contenedor de texto segun lineas

Y esto ha sido el tutorial para calcular el tamaño de un contenedor de texto segun el numero de lineas

Si necesitas más ayuda, visita este enlace o contacta con un desarrollador.

Image
Creacion de Menus en Drupal
Creacion de Menus en Drupal

Tutorial para la Creacion de Menus en Drupal

Nuestro CMS favorito ofrece la posibilidad de crear y configurar menús con diferentes estructuras en nuestro proyecto web, de forma que se pueden situar y visualizar en diferente regiones de la página.
Para ver su funcionalidad, se creará un menú configurando los enlaces más frecuentes de sitio. Para ello, vamos a la zona de administración de creación y edición de menús en /admin/structure/menu
Seleccionamos "Añadir menú". Se asignará el título "Sitios frecuentes".

Image
Creacion de Menus en Drupal

Con el menú anterior ya creado, se procederá a añadir los diferentes enlaces necesarios para construir el menú. Se creará la siguiente estructura de menú con sus correspondientes enlaces:
Sitios frecuentes
 - Inicio (<front>)
 - Login (/user/login)
 - Contacto (/Contact)
 - Artículos (/articles)
   - Primer artículo (/node/1)

Vemos como se pueden asignar jeraquías a la estructura del menú, de forma que tengamos el enlace principal como raíz, y a partir de ahí los demás enlaces que lo forman.
Así, para añadir enlaces al menú se seleciona "Añadir enlace" dentro del menú creado, elegimos una etiqueta para el título y se indica la ruta a la que llevará el enlace.
Para el elace a Inicio usaremos <front>:

Image
Creacion de Menus en Drupal

 Login será un enlace al formulario de acceso al sitio web:

Image
Creacion de Menus en Drupal

Contacto un enlace al formulario de contacto:

Image
Creacion de Menus en Drupal

El enlace Artículos llevará a un listado con todos los contenidos de tipo Artículo del sitio:

Image
Creacion de Menus en Drupal

Dentro del enlace Artículos se creará un sub-enlace al contenido "Primer artículo". Se observa que se podría escribir el título del contenido en el input autocompletable, pues al ser un contenido del sitio se detecta automáticamente sin necesidad de indicar su ruta:

Image
Creacion de Menus en Drupal

 De forma que si la ruta del artículo cambiara el enlace se vería inalterado y continuaría funcionando correctamente.

Image
Creacion de Menus en Drupal

Con el menú "Sitios frecuentes" y sus enlaces ya creados, se sitiuará en el sitio web, para ello iremos a "Diseño de bloques" en /admin/structure/block
Se situará en en la zona "Barra lateral", pare ello se selecciona "Colocar bloque" y se filtra por el nombre del menú creado "Sitios frecuentes", aceptar y guardar.

Image
Creacion de Menus en Drupal
Image
Creacion de Menus en Drupal
Image
Creacion de Menus en Drupal

Si visualizamos el sitio web se observa como el menú con los enlaces configurados se ha posicionado en la barra lateral:

Image
Creacion de Menus en Drupal

De esta forma, se pueden configurar menús personalizados en Drupal y situarlos en la zona del proyecto web que sea necesario.

Y esto ha sido el tutorial para la creacion de menus en Drupal

Si necesitas más ayuda, visita este enlace o contacta con un desarrollador.

Image
Instalación de módulo Admin Toolbar en Drupal
Tutorial de instalacion del modulo Admin Toolbar en Drupal

Hoy vamos a ver este Tutorial de instalacion del modulo Admin Toolbar en Drupal

Drupal nos proporciona una barra de administración  predeterminada para acceder a sus funcionalidades desde el panel de administración:

Image
Tutorial de instalacion del modulo Admin Toolbar en Drupal

Sin embargo, existe la posibilidad de mejorar esta barra de administración por defecto mediante la instalación del módulo llamado “Admin Toolbar”, que dará la opción de trasformar esta barra administrativa en un tipo de menú desplegable. De manera que se ofrece así un acceso más rápido y sencillo a las zonas de administración del sitio web en Drupal.
Para la instalación del módulo “Admin Toolbar”, o de módulos en general, se podría realizar o bien desde la interfaz en la opción de “Ampliar” de la barra de administración, o mediante drush descargando el proyecto admin_toolbar vía composer.

 

Para su instalación vía composer y drush, iremos al repositorio de Drupal donde se encuentre alojado el proyecto admin_toolbar: https://www.drupal.org/project/admin_toolbar
Una vez localizado, se lanzará el comando, el cual añadirá el módulo al sitio web:

Image
Tutorial de instalacion del modulo Admin Toolbar en Drupal

Después, instalaremos el módulo con el siguiente comando:

Image
Tutorial de instalacion del modulo Admin Toolbar en Drupal

Finalmente se vacía caché, quedando así el módulo instalado en el sitio web:

Image
Tutorial de instalacion del modulo Admin Toolbar en Drupal

Otra opción para la instalación de módulos, en esta ocasión “Admin Toolbar”, podría ser desde la interfaz del panel de administración de nuestro proyecto. Para ello, desde el repositorio de Drupal se descarga el fichero del módulo.

Posteriormente, elegiremos la opción “Ampliar” en /admin/modules y seleccionaremos “Add new module”:

Image
Tutorial de instalacion del modulo Admin Toolbar en Drupal

Se observa que se puede añadir el fichero admin_toolbar-3.0.3.tar.gz  / admin_toolbar-3.0.3.zip  o indicar la url del proyecto en Drupal.

Image
Tutorial de instalacion del modulo Admin Toolbar en Drupal

En esta ocasión se elegirá la descarga del fichero admin_toolbar-3.0.3.tar.gz

Image
Tutorial de instalacion del modulo Admin Toolbar en Drupal
Image
Tutorial de instalacion del modulo Admin Toolbar en Drupal

Después, lo añadimos para su instalación desde el panel de administración en /admin/modules

Se seleccionará “Admin Toolbar” y “Admin Toolbar Extra Tools” e instalar.

Image
Tutorial de instalacion del modulo Admin Toolbar en Drupal

 

Cuando finaliza la instalación, si se utiliza la barra de tareas del panel de administración, observamos que ahora aparecen los menú de forma desplegable para una acceso más sencillo y rápido a cada zona de la administración en Drupal.

Image
Tutorial de instalacion del modulo Admin Toolbar en Drupal

Y esto ha sido el tutorial de instalacion del modulo Admin Toolbar en Drupal

Si necesitas más ayuda, visita este enlace o contacta con un desarrollador.

Image
Campo de tipo referencia a termino de taxonomía en Drupal
Campo de tipo referencia a termino de taxonomía en Drupal

Campo de tipo referencia a termino de taxonomía en Drupal. A continuación, se detalla como añadir en Drupal un campo en el que las opciones de selección se autocompletan con términos de taxonomía referenciada. Primero crearemos un vocabulario llamado “Tipos de noticias” desde /admin/structure/taxonomy/add

Image
Campo de tipo referencia a termino de taxonomía en Drupal

Con el vocabulario ya creado se agregarán los términos: Científica, Cultural y Deportiva.

Image
Campo de tipo referencia a termino de taxonomía en Drupal

 

Image
Campo de tipo referencia a termino de taxonomía en Drupal
Image
Campo de tipo referencia a termino de taxonomía en Drupal

Posteriormente, creamos el campo “Tipo noticia” para el tipo de contenido “Artículo” desde /admin/structure/types/manage/article/fields/add-field

Image
Campo de tipo referencia a termino de taxonomía en Drupal

 

Image
Campo de tipo referencia a termino de taxonomía en Drupal


En la edición del campo , seleccionamos el vocabulario de taxonomía creado previamente : Tipos de noticia.

Image
Campo de tipo referencia a termino de taxonomía en Drupal


Una vez tenemos el campo “Tipo noticia” creado y configurado, podemos ir a “Administración de la visualización de formulario” desde /admin/structure/types/manage/article/form-display para aplicar el campo creado al formulario de creación del tipo de contenido “Artículo”.

Image
Campo de tipo referencia a termino de taxonomía en Drupal

 

Así, elegiremos el tipo de control: Lista de selección, un modo ‘select’ que nos nuestra un listado desplegable.

Image
Campo de tipo referencia a termino de taxonomía en Drupal
Image
Campo de tipo referencia a termino de taxonomía en Drupal

 

Si ahora añadimos un contenido de tipo Artículo desde /node/add/article vemos que se puede elegir el término de vocabulario desde el selector.

Image
Campo de tipo referencia a termino de taxonomía en Drupal
Image
Campo de tipo referencia a termino de taxonomía en Drupal

De forma que si en adelante se añade nuevos términos al vocabulario “Tipos de noticias”, aparecerían como posible selección del campo “Tipo noticia”. 

Para mostrarlo, se añadirá un nuevo término “Social” al vocabulario que referencia el campo:

Image
Campo de tipo referencia a termino de taxonomía en Drupal

 

Si ahora editamos el nodo “Primera noticia científica” que se creó con anterioridad, o bien, creamos un nuevo contenido de tipo Artículo, se puede ver como permite seleccionar el nuevo término “Social” que hemos agregado al vocabulario “Tipos de noticia”.

Image
Campo de tipo referencia a termino de taxonomía en Drupal

 

Siendo un tipo de campo que se completa con términos de referencia a un vocabulario (taxonomía), las opciones que permitirá elegir este campo serán los términos que tengamos añadidos al vocabulario en cuestión.

Image
Campo de tipo referencia a termino de taxonomía en Drupal

Para finalizar, señalar que se puede modificar el orden jerárquico con el que se presentan las términos desde el listado de términos, posicionándolos en el orden con el que se prefieran mostrar, en este caso “Social” ha subido una posición

Image
Campo de tipo referencia a termino de taxonomía en Drupal

 

Image
Campo de tipo referencia a termino de taxonomía en Drupal

 

Y esto ha sido el tutorial de como crear un campo de tipo referencia a término de taxonomía en Drupal

Si necesitas más ayuda, visita este enlace o contacta con un desarrollador.

Image
Versión correcta de PHP en Apache, como configurarlo.
Versión correcta de PHP en Apache, como configurarlo.

Una circunstancia que podemos encontrar es que cuando intentemos ejecutar un programa que requiera una versión específica de php, nos dé error porque la versión no es la adecuada, por eso necesitamos saber configurar la  versión correcta de PHP en Apache.

En relación con la instalación de Drupal, las más recientes versiones pueden o son recomendables, gestionarlas con el gestor de paquetes Composer. Composer es un gestor de paquetes php que facilita la gestión de dependencias y librerías.

La versión más reciente de Composer, en el momento de escribir este artículo la 2.1.3, requiere trabajar en un entorno con php 7.3 o superior.

Poniéndonos en un caso práctico, supongamos que hemos instalado Drupal en un servidor Debian 9, lanzamos la url de instalación y nos presenta el siguiente mensaje.

Composer detected issues in your platform: Your Composer dependencies require a PHP version ">= 7.3.0".

Podemos comprobar la versión que tenemos en php con el comando php --version.
 

root@gondor-01:/var/www/html/midrupal/web# php --version
PHP 8.0.8 (cli) (built: Jul  1 2021 16:10:07) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.8, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.8, Copyright (c), by Zend Technologies

Curiosamente podemos observar que nos indica que la versión que tenemos instalada en la 8.0.8, con lo cual, teóricamente debería dejarnos funcionar pero no es el caso.

Realmente no quiere decir que sea la versión que Apache está utilizando. Para ver qué versión está utilizando el apache, creamos un fichero php que podemos llamar miversionphp.php en el mismo directorio con el código:

<?php

phpinfo();

?>

Lanzamos la url llamando al fichero que hemos creado para que no se active el index.php y veremos un cuadro con multitud de información pero la que nos interesa es la siguiente:

Image
versión correcta de PHP en Apache.

Realmente Apache está utilizando otra versión que tenemos instalada porque está activo el módulo de la versión 7.0. Para cambiar la versión del módulo, tenemos que deshabilitar el anterior y habilitar la versión correcta.


En Debian, para poder ejecutar los comandos de activación o desactivación de módulos de apache, tenemos que poner toda la ruta, por ello, para desactivar la versión de php7.0, escribimos:

root@gondor-01:/var/www/html/midrupal/web# /usr/sbin/a2dismod 7.0

Y activamos el módulo de php7.3:

root@gondor-01:/var/www/html/midrupal/web# /usr/sbin/a2enmod 7.3

 

En principio no debemos asustarnos por los mensajes de respuesta ya que son warnings que nos advierten de posibles incompatibilidades entre módulos. Realmente nos deja activado el módulo de php7.3 para el Apache. Sólo nos queda como indica en la última linea, reiniciar el apache2.


Actualizamos la página y ya aparece la versión correcta:

Image
versión correcta de PHP en Apache.

Podemos volver a lanzar la url de instalación de Drupal. 

 

Esto ha sido Versión correcta de PHP en Apache, como configurarlo.

Si necesitas más ayuda, visita el blog

Image
Restablecer la contraseña de admin de Drupal 8
Restablecer la contraseña de admin de Drupal 8

Seguro que conocéis los scripts incluidos en el core de Drupal 8 para restablecer la contraseña del admin, pero no todos los servicios de alojamiento permiten el acceso SSH necesario para ejecutarlos, lo que hace que sea imposible recuperar la contraseña de la cuenta de administrador de Drupal 8 a través de la línea de comandos.
Este método solo debe emplearse como última opción cuando todo lo demás falla.
Esta forma de restablecer la contraseña, usa un script PHP que debe cargarse en el servidor web, por lo que debemos poseer la capacidad de cargar dicho PHP en el servidor donde está alojado el sitio web.
En esencia, el script PHP ejecuta un bootstrap completo de Drupal para obtener acceso a las funciones necesarias que generan la contraseña administrativa y luego actualiza la base de datos con la nueva contraseña que especificamos desde de la URL cuando ejecutamos el script mediante el navegador web.


OJO: dejar este script en el servidor después de restablecer la contraseña constituye un agujero de seguridad muy grave que permite a cualquier persona restablecer la contraseña de administrador. Úsalo con cuidado y elimínalo siempre que hayas terminado de usarlo.

Empecemos:

1.    Primero, crea un archivo con un nombre cualquiera (auladrupal.php por ejemplo).
2.    Copia y pega el siguiente código de Drupal en el archivo y guárdalo.

<?php
use Drupal\Core\DrupalKernel;
use Symfony\Component\HttpFoundation\Request;

if (pathinfo(__FILE__, PATHINFO_FILENAME) == 'admin-pass-reset') {
  die('Please change your file name to a random string to continue');
}

// Boot Drupal.
$autoloader = require __DIR__ . '/autoload.php';

$request = Request::createFromGlobals();
$kernel = DrupalKernel::createFromRequest($request, $autoloader, 'prod', FALSE);
$kernel->boot();

// Get password hasher service.
$password_hasher = $kernel->getContainer()->get('password');

// Hash password.
if (isset($_GET['pass']) && !empty($_GET['pass'])) {
 $newhash =  $password_hasher->hash($_GET['pass']);
}
else {
  die('Retry with ?pass=PASSWORD set in the URL');
}

// Update user password.
$updatepass = Drupal::database()->update('users_field_data')
  ->fields(array(
    'pass' => $newhash,
//  'name' => 'admin',
//    'mail' => 'yourmail@example.com'
  ))
  ->condition('uid', '1', '=')
  ->execute();

// Clean user 1 cache.
Drupal::cache('entity')->delete('values:user:1');

print "Listo. Por favor, borra este archivo lo antes posible";

 

3.    Sube el archivo a la raíz del directorio de instalación de Drupal (es decir, donde existen index.php, update.php, robots.txt y otros archivos y directorios).
4.    Ejecuta el script, solicitando el archivo en un navegador web utilizando el siguiente patrón de URL:

http://auladrupal.com/auladrupal.php?pass=mypassword

5.    En la URL anterior:

  • cambia auladrupal.com con tu nombre de dominio real.
  • cambia auladrupal.php con el nombre de archivo real que especificó en el paso uno anterior,
  • cambia mypassword con la nueva contraseña deseada.


6.    Nota: Te recomiendo que elijas una contraseña que contenga letras y números en mayúsculas y minúsculas, y que tenga al menos 12 caracteres.
7.    Si la secuencia de comandos se ejecuta correctamente, verás el texto "Listo" en tu navegador web. La contraseña de la cuenta administrativa creada al instalar Drupal (es decir, usuario / 1) se cambiará a "mypassword" (o cualquier valor que especifiques).
8.    Finalmente, elimina el archivo del directorio raíz de instalación de Drupal.

Cambiar el nombre de usuario de la cuenta de administrador

Si no recuerdas (o simplemente no sabes) el nombre de usuario de la cuenta de administrador, en el script anterior, descomenta la linea // 'name' => 'admin', a 'name' => 'admin', y el nombre de usuario también se cambiará a "admin".
También puedes restablecer la dirección de correo electrónico del administrador de la misma manera, descomentando (elimina las //) la línea de la dirección de correo electrónico en el script anterior.

Por último, no olvides eliminar el archivo tan pronto como hayas cambiado la contraseña.

Y este es el método para restablecer la contraseña del admin en Drupal 8

Si necesitas más ayuda, visita este enlace o contacta con un desarrollador.