2013-10-07 5 views
0

Я создаю сайт для обмена видеороликами.Очистка и удаление части URL

У меня возникли некоторые проблемы. мой OG: изображение: SECURE_URL не подберут правильно, потому что URL-адрес становится отображается, как это ..

https://v.cdn.vine.co/v/thumbs/2013/04/30/5D309EAF-962F-41E1-8F22-41E4AA50FFB7-967-00000195162F03BD_1.0.7.mp4.jpg?versionId=JQ9YuwCeBry1sGZpZU40Z3wc_VF_PMb1 

Так facebook дает мне эту ошибку, когда bebugging ..

Object at URL 'http://vinesandstuff.com/' of type 'article' is invalid because the given value '' for property 'og:image:secure_url' could not be parsed as type 'url'. 

Как это настроить в бэкэнд ..

og: image: secure_url setup, Обратите внимание, что сценарий использует код Smarty.

<meta property="og:image:secure_url" content="{php} echo vine_pic($this->_tpl_vars['p']['youtube_key']);{/php}" /> 

и сценарий, который захватывает OG: изображение из твиттера ..

function vine_pic($id) 
{ 

$vine = file_get_contents("http://vine.co/v/{$id}"); 
             preg_match('/property="og:image" content="(.*?)"/', $vine, $matches); 

return ($matches[1]) ? $matches[1] : false; 

} 

Что мне нужно помочь с

удаляет эту концевую часть URL ?versionId=JQ9YuwCeBry1sGZpZU40Z3wc_VF_PMb1

Я рассмотрел другие вопросы, связанные с stackoverflow, но я не совсем понимаю, как он должен быть настроен, как в синтаксисе. Может кто-нибудь мне помочь? Очень ценится.

ответ

0

Использование parse_url и http_build_query разорвать этот адрес друг от друга и положить его обратно вместе без VERSIONID

Я никогда не использовал Smarty тегов, так что я не уверен в этой части. В php я бы сделал что-то вроде этого: (untested)

$pic_link=vine_pic($this->_tpl_vars['p']['youtube_key']); 
$parsed=parse_url($pic_link); 
$pic_vars=parse_str($parsed['query']); 
unset($pic_vars['$parsed']); 
$new_query=http_build_query($pic_vars); 
$new_pic_link=$parsed['scheme'].$parsed['host'].$parsed['path']'?'.$new_query; 
//if the above is missing a slash, change the dot to .'/'. 
?> 
<meta property="og:image:secure_url" content="<?php echo $new_pic_link; ?>"> 
+0

hmm Но как мне настроить синтаксис tho? У меня есть только месяц на php и много времени на обучение, поэтому вы должны извинить меня. Я тоже это пробовал, но я не знаю, какая часть моего скрипта должна идти туда ... '$ link = substr ($ linkraw, 0, strrpos ($ linkraw, ".")) ' – Nelson

+0

Здравствуйте, TecBrat, я попытался с вашим кодом, а тем более как' 'он называется' {php} {/ php} 'однако я попробовал ваше обновление и 'content =' выводится с помощью '?' – Nelson

+0

. См. мое последнее изменение. Я добавил «путь». – TecBrat

Смежные вопросы