X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> wordpress (парсить the_content)
Stass
Stass
Topic Starter сообщение 30.11.2011, 16:32; Ответить: Stass
Сообщение #1


Новичок
*

Группа: User
Сообщений: 41
Регистрация: 10.3.2011
Из: Минск
Поблагодарили: 12 раз
Репутация:   3  


Привет.

Я делаю виджет и у меня возникла такая проблема:

В посте вставлено видео с ютуба. А мне нужно получить на него ссылку. Подскажите, как это проще сделать? smile.gif

Заранее спасибо smile.gif
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
jjoret
jjoret
сообщение 30.11.2011, 17:01; Ответить: jjoret
Сообщение #2


Завсегдатай
*****

Группа: Active User
Сообщений: 791
Регистрация: 29.11.2011
Из: Беларусь
Поблагодарили: 169 раз
Репутация:   45  


Открыть код, скопировать ссылку и все. или я что не так понял?


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
serendipity
serendipity
сообщение 30.11.2011, 17:04; Ответить: serendipity
Сообщение #3


Частый гость
**


Группа: User
Сообщений: 52
Регистрация: 8.7.2011
Поблагодарили: 9 раз
Репутация:   1  


(Stass @ 30.11.2011, 16:32) *
В посте вставлено видео с ютуба. А мне нужно получить на него ссылку. Подскажите, как это проще сделать? smile.gif


По-моему, что-то в таком духе:

global $post;
$content = $post->post_content;


И дальше уже выдираем содержимое.

Сообщение отредактировал serendipity - 30.11.2011, 17:05


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Stass
Stass
Topic Starter сообщение 30.11.2011, 17:07; Ответить: Stass
Сообщение #4


Новичок
*

Группа: User
Сообщений: 41
Регистрация: 10.3.2011
Из: Минск
Поблагодарили: 12 раз
Репутация:   3  


(jjoret @ 30.11.2011, 16:01) *
Открыть код, скопировать ссылку и все. или я что не так понял?

Ну, да. Не так smile.gif

Мне нужно что-бы ссылку получил не я, а мой виджет.

(serendipity @ 30.11.2011, 16:04) *
По-моему, что-то в таком духе:

Цитата
global $post;
$content = $post->post_content;

И дальше уже выдираем содержимое.


Или так:

add_filter('the_content', 'your_parser_function', 10);


Проблема в самой функции парсера. Я никогда раньше ничего не парсил, и совершенно не представляю, как это делать =( Если-бы вы могли сбросить простейший пример, был бы весьма благодарен.

Сообщение отредактировал Stass - 30.11.2011, 17:10
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
serendipity
serendipity
сообщение 30.11.2011, 17:15; Ответить: serendipity
Сообщение #5


Частый гость
**


Группа: User
Сообщений: 52
Регистрация: 8.7.2011
Поблагодарили: 9 раз
Репутация:   1  


(Stass @ 30.11.2011, 17:07) *
Проблема в самой функции парсера. Я никогда раньше ничего не парсил, и совершенно не представляю, как это делать =( Если-бы вы могли сбросить простейший пример, был бы весьма благодарен.


Для строки:
<param name="movie" value="http://www.youtube.com/v/Pfo1omYMZ20?version=3&hl=ru_RU"></param>


Что-то в таком духе.

$text = '<param name="movie" value="http://www.youtube.com/v/Pfo1omYMZ20?version=3&hl=ru_RU"></param>';
$pattern = '/<param name="movie" value="(.*?)\?version/';
$result = preg_match($pattern, $text, $match);


Результат в $result[1].
Пишу по памяти, негде проверить.

Сообщение отредактировал serendipity - 30.11.2011, 17:16


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Stass
Stass
Topic Starter сообщение 30.11.2011, 18:29; Ответить: Stass
Сообщение #6


Новичок
*

Группа: User
Сообщений: 41
Регистрация: 10.3.2011
Из: Минск
Поблагодарили: 12 раз
Репутация:   3  


serendipity, спасибо огромное! Буду пробовать. smile.gif

В общем, всё получилось. Вот всё решение целиком, если кому-то понадобится:

function youtube_url($content) {
    $pattern = '/data=\"([^\"]*)\"/';
    preg_match($pattern, $content, $match);
    return $match[1];
}
add_filter('the_content', 'youtube_url', 10);

the_content();

remove_filter( 'the_content', 'youtube_url' );
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Адаптивная вёрстка и натяжка на Wordpress, DLE, Joomla и др. Создание мобильных версий.
Хороший код с оптимизацией по скорости. Сайты и лендинги "под ключ
11 Nell 1037 Сегодня, 15:21
автор: Nell
Открытая тема (нет новых ответов) Как включить автоматическое обновление для плагинов WordPress и самого движка?
0 Telnor 346 Вчера, 13:27
автор: Telnor
Открытая тема (нет новых ответов) Адаптация сайтов под мобильные устройства, качественная кроссбраузерная верстка, работа с Wordpress
PSD to HTML, натяжка макетов на Wordpress, адаптивная верстка
28 anton_ber 5140 6.12.2017, 13:39
автор: anton_ber
Открытая тема (нет новых ответов) Пропали блоки в продуктах Wordpress
6 mxxx 937 6.12.2017, 11:22
автор: mxxx
Горячая тема (нет новых ответов) Услуги по CMS Wordpress, DLE, Joomla!. Правки, ремонт, настройка.
Редактирование и правки. Низкие цены.
142 contex1 64957 5.12.2017, 12:13
автор: contex1


 



RSS Текстовая версия Сейчас: 11.12.2017, 17:46
Дизайн