Como crear un campo de video (youtube) a medida en Drupal 7

  • Posted on: 4 October 2011
  • By: dani

Vamos a ver paso por paso como podemos crear un campo personalizado en un tipo de contenido de Drupal, de manera que traduzca el enlace de un video de youtube en la miniatura del video (en formato teaser) y el player de vídeo (en el formato de página única)

Conceptualmente lo que hay que hacer es traducir el contenido del campo:

http://www.youtube.com/watch?v=AhM4tyL5d6I&feature=feedwll&list=WL

Si conseguimos el id del vídeo, en el caso anterior "AhM4tyL5d6I" el resto es muy fácil, la miniatura será

http://img.youtube.com/vi/AhM4tyL5d6I/default.jpg

y el reproductor de video <iframe src='http://www.youtube.com/embed/$youtube_id'
width='480' height='360' frameborder='0'></iframe>

El resto depende de Drupal 7. Para conseguirlo deberemos seguir los siguientes pasos:

  • Crear un tipo de contenido llamado por ejemplo "video"
  • En este tipo de contenido añadir un campo de texto llamado "field_video"
  • En la carpeta del tema que estemos utilizando crear una plantilla para el tipo de contenido "video", que se deberá llamar, node--video.tpl.php
  • En el código de esta plantilla escribir:
  • <?php
    foreach( $field_video as $key=>$val){
        $url=$val['value'];
     //esto se podria mejorar, estamos suponiendo url del tipo  http://www.youtube.com/watch?v=CAjwCCS8l8g
     parse_str( parse_url( $url, PHP_URL_QUERY ), $my_array_of_vars );
    $youtube_id=$my_array_of_vars['v'];

     if($teaser){
        //poner thumb linkado a nodo
        print "<a href='$node_url'><img src='http://img.youtube.com/vi/$youtube_id/default.jpg' alt='video'/></a>";
     }else{
        print "<iframe src='http://www.youtube.com/embed/$youtube_id'
    width='480' height='360' frameborder='0'></iframe>";

     }

    }
          // resto del nodo
          hide($content['comments']);
          hide($content['links']);
    hide($content['field_video']);
          print render($content);

    ?>

  • Borrar la caché en "settings/performance", cada vez que queremos probar el resultado
  • Dar permisos al rol que queramos para poder crear este tipo de contenido
Definición del campo de texto que guarda la dirección del video
Resultado del contenido en formato "página única"

Contenido relacionado

10 motivos por los cuales Wordpress es mejor que Drupal

  • Posted on: 6 June 2014
  • By: dani
Tendencia Wordpress Drupal Joomla

Ya hace más de 7 años que hicimos en pimpampum nuestro primer proyecto en Drupal, http://antropologia.cat/ (un Drupal versión 4 que todavia funciona).

En aquella época valoramos que CMS escoger para los proyectos de nuestros clientes, nos pareció una buena alternativa, y por tanto fué el elegido. Todavia lo seguimos utilizando hoy en dia, y nos parece la mejor alternativa para cierto tipo de aplicaciones.

Checklist para crear un tema de Wordpress y no morir en el intento

  • Posted on: 13 March 2012
  • By: dani

Preparando clases se me ha ocurrido escribir un "check-list", un listado de los pasos de decisiones que debemos tomar antes de crear un tema en Wordpress a partir de una propuesta de diseño y navegación del proyecto.

La creación de temas para Wordpress es tan compleja como queramos por eso es importante tomar los pasos menos costosos antes de ir por los más complejos.

La guia puede ser perfectamente aplicable a otros CMS como Drupal, aunque no en los detalles.

Google CardBoard

  • Posted on: 15 February 2015
  • By: dani
cardboard

Está a años luz de la Oculus Rift, pero por menos de 10€ no está nada mal. Se trata de la Google CardBoard, unas gafas de visionado 3d de cartón que utilizan cualquier móvil android como pantalla. Las gafas incluyen unas lentes bastante simples pero efectivas y permiten alojar la pantalla del móvil, en mi caso un Galaxy Note 3.