2011-01-04 4 views
0

Я использую embed.ly для встраивания ссылок, когда пользователь вводит в [embed = LINK]. Я использую плагин jQuery embed.ly.Использование embed.ly для встраивания определенных ссылок

Я хочу только ссылки, которые помечены как врезать, включаемую:

Например, если есть две ссылки:

http://www.youtube.com/watch?v=7aPGa9Gqj2c&feature=related

и

[embed=http://www.youtube.com/watch?v=7aPGa9Gqj2c&feature=related]

Я хочу только второй ссылка для встраивания, а первая - как ссылка.

Я использую следующий код, чтобы найти все Встраивание теги:

if (preg_match_all('/\[Embed=([^\]]+)\]/i', $input['body'], $matches, PREG_SET_ORDER)) 
{ 
    $get_embedly = true; 

    foreach ($matches as $match) 
    { 
     if (preg_match($embedly_re, $match[1])) // $embedly_re = list of sites allowed 
     { 
      $input['body'] = str_replace($match[0], '> '. "<a href=\"$match[1]\">$match[1]</a>", $input['body']); 
     } 
    } 
} 

Я использую JQuery и embedly в заголовке:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script> 
<script type="text/javascript" src="js/embedly/jquery.embedly.js"></script> 

Есть ли у вас какие-либо предложения относительно того, как я должен идти о это? Приветствия.

ответ

0

Вы находитесь на 98% пути оттуда. Есть только пара вещей, которые вы должны добавить/изменить, и вы будете установлены.

Изменение строки 9 вашего PHP кода, чтобы добавить класс embedly:

$input['body'] = str_replace($match[0], '> '. "<a class=\"embedly\" href=\"$match[1]\">$match[1]</a>", $input['body']);

Затем использовать класс, который мы только что добавили сказать Embedly JQuery, что <a> теги для встраивания.

$('a.embedly').embedly( {maxWidth: 500, method: "replace"});

Done.

+0

lol, ты потрясающий, ... ты подписался, чтобы ответить на это? Если так :) –

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