Ich möchte in der Produktedetailansicht im Tab Medien ein Vimeo Video einbinden, leider klappt das nur als Link nicht aber als Playerfenster. Ich habe es mit der URL und mit dem kompletten Einbettungscode inkl. Iframe versucht. Wenn ich das selbe mit einem Youtube Video versuche, klappt das tiptop.
Hat jemand eine Ahnung wie man das Bewerkstelligen kann resp., wo ich Änderungen vornehmen muss?
Hab einfach mal nach youtube gesucht. In der public function getHtml() siehst Du, was mit den Links passiert. Wenn Du die Möglichkeit hast, kannst Du dazu gern ein Modul veröffentlichen.
Hier meine Lösung: /Application/Model/oxmediaurl.php
public function getHtml()
{
$sUrl = $this->oxmediaurls__oxurl->value;
//youtube link
if (strpos($sUrl, 'youtube.com') || strpos($sUrl, 'youtu.be')) {
return $this->_getYoutubeHtml();
}
//vimeo link
if (strpos($sUrl, 'vimeo.com')) {
return $this->_getVimeoHtml();
}
//simple link
return $this->getHtmlLink();
}
Und dann ganz am Ende folgendes Einfügen:
/**
* Transforms the link to Vimeo object, and returns it.
*
* @return string
*/
protected function _getVimeoHtml()
{
$sUrl = $this->oxmediaurls__oxurl->value;
$sDesc = $this->oxmediaurls__oxdesc->value;
if (strpos($sUrl, 'vimeo.com')) {
$sVimeoUrl = str_replace("vimeo.com/", "player.vimeo.com/video/", $sUrl);
$sVimeoUrl = preg_replace('/&/', '?', $sVimeoUrl, 1);
}
$sVimeoTemplate = '%s<br><iframe width="500" height="281" src="%s" frameborder="0" allowfullscreen></iframe>';
$sVimeoHtml = sprintf($sVimeoTemplate, $sDesc, $sVimeoUrl, $sVimeoUrl);
return $sVimeoHtml;
}
}