Сообщество на NuPokazi.com периодически просит сделать вставку видео в комментарии так же как и в постах — просто строчкой — адресом на ютубе (а не громоздким кодом). Прошерстил wordpress.org, нужного плагина не нашёл, напряг все свои скудные познания в PHP, в итоге написал следующее:
function yc($eer) { preg_match_all('|(http://www.youtube.com/watch[^\s\n\r"\']+?)|U', $eer, $matches); for ($trr=0; $trr< count($matches[1]); $trr++) { $ma = trim(str_replace("http://www.youtube.com/watch?v=", "", $matches[1][$trr])); $eer=str_replace('<a rel="nofollow" href="'.$matches[1][$trr].'">'.$matches[1][$trr].'</a>', $matches[1][$trr], $eer); $g='<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="src" value="http://www.youtube.com/v/'.$ma.'&color1=0xb1b1b1&color2=0xcfcfcf&hl=ru&feature=player_embedded&fs=1" /><param name="allowfullscreen" value="true"" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/'.$ma.'&color1=0xb1b1b1&color2=0xcfcfcf&hl=ru&feature=player_embedded&fs=1" allowfullscreen="true""></embed></object>'; $eer=str_replace($matches[1][$trr], $g, $eer); } return $eer; } add_filter('comment_text', 'yc');
Этот код помещаем в файл functions.php в шаблоне блога.
Пример работы можно посмотреть в комментариях к этому посту: http://www.nupokazi.com/dorogi-morozyi-znakomyiy-syuzhet/
| Tweet |
|
|
Какбы ещё заставить посетителей писать коменты и делиться видео-ссылками
К сожалению не сработала Ваша фича… Выдает код ошибки.
Подскажите конкретней: после какой функции вставлять необходимо вставлять этот код в ВП?
В файл functions.php, куда именно там разницы нет
у меня вот такое вылазит
Parse error: syntax error, unexpected ‘;’, expecting ‘)’ in /var/home/pcmast11215/data/www/pcmaster.od.ua/blog/wp-content/themes/coffee-desk/functions.php on line 146