Использование preg_replace для удаления iframe YouTube из ленты - PullRequest
0 голосов
/ 16 ноября 2018

Для сообщений с URL-адресами YouTube я пытаюсь удалить iframe из RSS-канала, созданного нашим сайтом Wordpress.

Я просто хочу, чтобы URL-адрес YouTube передавался на принимающие сайты Wordpress (как это выглядит воригинал), чтобы принимающий сайт мог преобразовать его в предварительный просмотр (так как эти сайты контролируются нами).

RSS-канал, созданный в настоящее время содержимым, содержит следующее:

<content:encoded><![CDATA[<p><iframe width="525" height="295" src="https://https://www.www.youtube.com/embed/H51j54Z8yl8?feature=oembed" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></p></content:encoded> 

Ноэто должно быть так (верно?):

<content:encoded><![CDATA[<p>https://www.youtube.com/watch?v=H51j54Z8yl8</p></content:encoded>

Вопрос 1: Как использовать preg_replace, чтобы заменить первую часть пробелом (если 525 Width и 295 Height меняются)?Можно ли использовать значение «подстановочный знак»?

function rss_noiframe($content) {
    $content = preg_replace( '<iframe width="525" height="295" src="', '', $content );

    return $content;
}

add_filter('the_excerpt_rss', 'rss_noiframe');
add_filter('the_content_feed', 'rss_noiframe');

Вопрос 2: Если я не лаю не на том дереве, как мне создать дополнительный preg_replace в этом коде выше для:

Заменить 2-йpart:
"embed /"

With:
"watch? v ="

И заменить 3-ю часть:
"? feature = oembed" frameborder = "0 "allow =" акселерометр; автозапуск; зашифрованный носитель; гироскоп; картинка в картинке "allowfullscreen>"

с:
""?

Вопрос 3: О, икуда я могу поместить этот код (я не кодер) - однако я бы предпочел, чтобы кто-то сделал плагин, чтобы сделать это, поскольку я не уверен в детских темах и т. д.

...