{"id":28138,"date":"2021-06-03T14:55:00","date_gmt":"2021-06-03T11:55:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=28138"},"modified":"2021-10-18T04:05:04","modified_gmt":"2021-10-18T01:05:04","slug":"como-obter-miniaturas-de-videos-do-youtube-vimeo-e-dailymotion","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/pt-pt\/como-obter-miniaturas-de-videos-do-youtube-vimeo-e-dailymotion\/","title":{"rendered":"Como obter miniaturas de v\u00eddeos do YouTube, Vimeo e Dailymotion"},"content":{"rendered":"<p>Voc\u00ea est\u00e1 procurando a miniatura dos v\u00eddeos do YouTube, Vimeo e Dailymotion? Estes 3 s\u00e3o os sites de compartilhamento de v\u00eddeo mais populares da Internet. Cada uma dessas plataformas permite que os usu\u00e1rios busquem a miniatura de seus v\u00eddeos. Neste artigo, veremos como obter a miniatura usando a URL do v\u00eddeo dessas plataformas.<\/p>\n<p>Ao integrar uma galeria de v\u00eddeo nos sites, voc\u00ea deve exibir as miniaturas dos v\u00eddeos. E ent\u00e3o, ao clicar na miniatura, um v\u00eddeo relacionado deve ser reproduzido. Incorporar v\u00eddeos usando uma tag iframe n\u00e3o \u00e9 recomendado. \u00c9 preciso muita largura de banda de um servidor e aumenta o tamanho da p\u00e1gina.<\/p>\n<p>Vou escrever um c\u00f3digo que obt\u00e9m a miniatura do v\u00eddeo por meio de um URL de v\u00eddeo. Ao clicar nessas miniaturas, voc\u00ea pode reproduzir seus v\u00eddeos usando o fancybox ou qualquer outra solu\u00e7\u00e3o personalizada de sua prefer\u00eancia.<\/p>\n<p>Dito isso, vamos ver um por um como obter miniaturas de v\u00eddeos do YouTube, Vimeo e Dailymotion.<\/p>\n<h3>Obter miniatura do URL do v\u00eddeo do YouTube<\/h3>\n<p>Para nosso tutorial, suponho que voc\u00ea est\u00e1 passando o URL do v\u00eddeo para obter a miniatura de um v\u00eddeo. No caso do YouTube, existem v\u00e1rios tipos de URLs v\u00e1lidos dispon\u00edveis. Abaixo est\u00e3o os URLs v\u00e1lidos do v\u00eddeo do YouTube:<\/p>\n<ul>\n<li><a href=\"https:\/\/youtu.be\/VIDEO_ID\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/youtu.be\/VIDEO_ID<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/embed\/VIDEO_ID\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/www.youtube.com\/embed\/VIDEO_ID<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=VIDEO_ID\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/www.youtube.com\/watch?v=VIDEO_ID<\/a><\/li>\n<\/ul>\n<p>O m\u00e9todo a seguir extrai o ID do v\u00eddeo de qualquer um dos formatos de URL acima.<\/p>\n<pre><code>&lt;?php\nfunction extractVideoID($url){\n\u00a0\u00a0\u00a0\u00a0$regExp = \"\/^.*((youtu.be\/)|(v\/)|(\/u\/w\/)|(embed\/)|(watch?))??v?=?([^#&amp;?]*).*\/\";\n\u00a0\u00a0\u00a0\u00a0preg_match($regExp, $url, $video);\n\u00a0\u00a0\u00a0\u00a0return $video[7];\n}\n?&gt;<\/code><\/pre>\n<p>Depois de extrair o ID do v\u00eddeo do URL, voc\u00ea pode obter facilmente a miniatura do v\u00eddeo usando o m\u00e9todo abaixo:<\/p>\n<pre><code>&lt;?php\nfunction getYouTubeThumbnailImage($video_id) {\n\u00a0\u00a0\u00a0\u00a0return \"\/\/i3.ytimg.com\/vi\/$video_id\/hqdefault.jpg\";\n}\n?&gt;<\/code><\/pre>\n<p>Aqui, estamos obtendo a miniatura padr\u00e3o com <code>hqdefault.jpg<\/code>. Pode-se passar valores diferentes como <code>0.jpg<\/code>, <code>1.jpg<\/code>para obter tamanhos de miniatura diferentes.<\/p>\n<p>Portanto, nosso c\u00f3digo final para obter a miniatura do URL do v\u00eddeo do YouTube \u00e9:<\/p>\n<pre><code>&lt;?php\nfunction extractVideoID($url){\n\u00a0\u00a0\u00a0\u00a0$regExp = \"\/^.*((youtu.be\/)|(v\/)|(\/u\/w\/)|(embed\/)|(watch?))??v?=?([^#&amp;?]*).*\/\";\n\u00a0\u00a0\u00a0\u00a0preg_match($regExp, $url, $video);\n\u00a0\u00a0\u00a0\u00a0return $video[7];\n}\n\u00a0\nfunction getYouTubeThumbnailImage($video_id) {\n\u00a0\u00a0\u00a0\u00a0return \"https:\/\/i3.ytimg.com\/vi\/$video_id\/hqdefault.jpg\"; \/\/pass 0,1,2,3 for different sizes like 0.jpg, 1.jpg\n}\n\u00a0\n$video_url = 'YOUTUBE_VIDEO_URL';\n$video_id = extractVideoID($video_url);\n$thumbnail =\u00a0 getYouTubeThumbnailImage($video_id);\necho \"&lt;img src='$thumbnail' \/&gt;\";\n?&gt;<\/code><\/pre>\n<h3>Obter miniaturas dos v\u00eddeos do Vimeo e do Dailymotion<\/h3>\n<p>Enquanto procurava por uma solu\u00e7\u00e3o para extrair o id de v\u00eddeo dos URLs de v\u00eddeo do Vimeo e do Dailymotion, encontrei este <a href=\"https:\/\/github.com\/lingtalfi\/video-ids-and-thumbnails\/blob\/master\/function.video.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">recurso<\/a>. Usei o m\u00e9todo deles para extrair o ID do v\u00eddeo de URLs de v\u00eddeo do Vimeo e do Dailymotion. Este m\u00e9todo suporta todos os formatos de URL v\u00e1lidos de v\u00eddeos Vimeo e Dailymotion.<\/p>\n<p>No caso de buscar miniaturas de v\u00eddeos do Vimeo, o c\u00f3digo ser\u00e1 o seguinte:<\/p>\n<pre><code>&lt;?php\nfunction getVimeoId($url)\n{\n\u00a0\u00a0\u00a0\u00a0if (preg_match('#(?:https?:\/\/)?(?:www.)?(?:player.)?vimeo.com\/(?:[a-z]*\/)*([0-9]{6,11})[?]?.*#', $url, $m)) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return $m[1];\n\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0return false;\n}\n\u00a0\nfunction getVimeoThumb($id)\n{\n\u00a0\u00a0\u00a0\u00a0$arr_vimeo = unserialize(file_get_contents(\"https:\/\/vimeo.com\/api\/v2\/video\/$id.php\"));\n\u00a0\u00a0\u00a0\u00a0return $arr_vimeo[0]['thumbnail_small']; \/\/ returns small thumbnail\n\u00a0\u00a0\u00a0\u00a0\/\/ return $arr_vimeo[0]['thumbnail_medium']; \/\/ returns medium thumbnail\n\u00a0\u00a0\u00a0\u00a0\/\/ return $arr_vimeo[0]['thumbnail_large']; \/\/ returns large thumbnail\n}\n\u00a0\n$video_url = 'VIMEO_VIDEO_URL';\n$video_id = getVimeoId($video_url);\n$thumbnail = getVimeoThumb($video_id);\necho \"&lt;img src='$thumbnail' \/&gt;\";\n?&gt;<\/code><\/pre>\n<p>Para o v\u00eddeo Vimeo, podemos usar 3 valores como thumbnail_small, thumbnail_medium, thumbnail_large para obter tamanhos de miniatura pequenos, m\u00e9dios e grandes, respectivamente.<\/p>\n<p>Finalmente, o c\u00f3digo para obter a miniatura do v\u00eddeo do Dailymotion \u00e9 o seguinte.<\/p>\n<pre><code>&lt;?php\nfunction getDailyMotionId($url)\n{\n\u00a0\u00a0\u00a0\u00a0if (preg_match('!^.+dailymotion.com\/(video|hub)\/([^_]+)[^#]*(#video=([^_&amp;]+))?|(dai.ly\/([^_]+))!', $url, $m)) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if (isset($m[6])) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return $m[6];\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if (isset($m[4])) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return $m[4];\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return $m[2];\n\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0return false;\n}\n\u00a0\nfunction getDailymotionThumb($id) {\n\u00a0\u00a0\u00a0\u00a0$thumbnail_large_url = 'https:\/\/api.dailymotion.com\/video\/'.$id.'?fields=thumbnail_360_url'; \/\/pass thumbnail_360_url, thumbnail_480_url, thumbnail_720_url, etc. for different sizes\n\u00a0\u00a0\u00a0\u00a0$json_thumbnail = file_get_contents($thumbnail_large_url);\n\u00a0\u00a0\u00a0\u00a0$arr_dailymotion = json_decode($json_thumbnail, TRUE);\n\u00a0\u00a0\u00a0\u00a0$thumb = $arr_dailymotion['thumbnail_360_url'];\n\u00a0\u00a0\u00a0\u00a0return $thumb;\u00a0\u00a0\u00a0 \n}\n\u00a0\n$video_url = 'DAILYMOTION_VIDEO_URL';\n$video_id = getDailyMotionId($video_url);\n$thumbnail = getDailymotionThumb($video_id);\necho \"&lt;img src='$thumbnail' \/&gt;\";\n?&gt;<\/code><\/pre>\n<p>Espero que voc\u00ea entenda como obter as miniaturas dos v\u00eddeos do YouTube, Vimeo e Dailymotion. Se voc\u00ea estiver usando qualquer outro m\u00e9todo para conseguir isso, informe-me na se\u00e7\u00e3o de coment\u00e1rios abaixo.<\/p>\n<h4>Artigos relacionados<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/obtenha-a-lista-de-videos-do-youtube-por-palavras-chave-usando-a-api-de-pesquisa-do-youtube-e-o-javascript\/\" title=\"Obtenha a lista de v\u00eddeos do YouTube por palavras-chave usando a API de pesquisa do YouTube e o JavaScript\">Obtenha a lista de v\u00eddeos do YouTube por palavras-chave usando a API de pesquisa do YouTube e o JavaScript<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/api-do-youtube-como-obter-uma-lista-de-videos-do-youtube-de-seu-canal\/\" title=\"API do YouTube - Como obter uma lista de v\u00eddeos do YouTube de seu canal\">API do YouTube &#8211; Como obter uma lista de v\u00eddeos do YouTube de seu canal<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/como-usar-a-api-do-youtube-para-enviar-video-ao-canal-do-youtube\/\" title=\"Como usar a API do YouTube para enviar v\u00eddeo ao canal do YouTube\">Como usar a API do YouTube para enviar v\u00eddeo ao canal do YouTube<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Neste artigo, estudamos como obter miniaturas de v\u00eddeos do YouTube, Vimeo e Dailymotion. Para reduzir o tamanho da p\u00e1gina, devemos usar miniaturas<\/p>\n","protected":false},"author":1,"featured_media":21640,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[278],"tags":[848],"class_list":["post-28138","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-9","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/28138","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/comments?post=28138"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/28138\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media\/21640"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media?parent=28138"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/categories?post=28138"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/tags?post=28138"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}