I use Advanced Custom Fields to show Vimeo videoes on a site I am creating for a client - The client pastes the vimeo ID (the last letters in the url) in a field, and the video is shown. But I would also like to show thumbnail of the video, I am using the following (not working code) for this:

$imgid = the_field('video_link');
$hash = unserialize(file_get_contents("http://vimeo.com/api/v2/video/$imgid.php"));
echo $hash[0]['thumbnail_medium'];  

This code only shows the video-ID on the page. But if I, instead for "the_field('video_link')" writes the video-ID in the code - the thumbnail URL is displayed. Does anyone know what I am doing wrong? :)

  • This doesn't really have anything to do with WordPress. Migrating to Stack Overflow where it will be more on-topic. – EAMann Aug 7 '12 at 23:13
  • @EAMann I just flagged it to port it back to WPSE. This is about the WP Http API and belongs to us. – kaiser Aug 8 '12 at 1:07
  • 3
    file_get_contents() is a vanilla PHP function ... this is using a regular document from a third-party API. The question has absolutely nothing to do with WordPress or the WP_Http API. – EAMann Aug 8 '12 at 2:39
  • Dupe that was closed: wordpress.stackexchange.com/questions/61163/vimeo-thumbnails – markratledge Aug 8 '12 at 4:08

Maybe this can help

$videoID = the_field('video_link');
$jsonurl = 'http://vimeo.com/api/v2/video/'.$videoID.'.json';
$json = file_get_contents($jsonurl,0,null,null);
$json_output = json_decode($json,true);
echo '<img src="'. $json_output[0]['thumbnail_large'] .'" />';

It's the same call using json method

|improve this answer|||||
//vimeo thumb generator PHP
function getVimeoImg($id, $size = 'thumbnail_large'){
   if(get_transient('vimeo_' . $size . '_' . $id)){
      $thumb_image = get_transient('vimeo_' . $size . '_' . $id);
      $json = json_decode( file_get_contents( "http://vimeo.com/api/v2/video/" . $id . ".json" ) );
      $thumb_image = $json[0]->$size;
      set_transient('vimeo_' . $size . '_' . $id, $thumb_image, 2629743);
  return $thumb_image;

add this to functions.php

than call thumbnail echo getVimeoImg('videoID');

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.