ТЛ; дг: Я хочу, чтобы извлечь Embeded Youtube видео ссылки из сообщений в определенной категорииПолучение Embeded YouTube видео с WordPress отправлять
Я в настоящее время разрабатывает веб-сайт блог/статьи. Рассмотрим следующее: у меня есть индексная страница, в которой есть раздел для 2 избранных видео. Предположим, что у меня есть запрос и цикл, который извлекает 2 последних сообщения из категории. Сообщения в этой категории всегда начинаются с признаками видео Embeded с помощью начальной загрузки:
<div class="embed-responsive embed-responsive-16by9">
<iframe class="embed-responsive-item" src="..."></iframe>
</div>
<!-- some text content follows -->
В настоящее время я использую следующие функции для извлечения текста отрывков из содержания сообщения:
function get_excerpt_by_id($post_id){
$the_post = get_post($post_id); //Gets post ID
$the_excerpt = $the_post->post_content; //Gets post_content to be used as a basis for the excerpt
$excerpt_length = 30; //Sets excerpt length by word count
$the_excerpt = strip_tags(strip_shortcodes($the_excerpt)); //Strips tags and images
$the_excerpt = html_entity_decode($the_excerpt, ENT_QUOTES, 'UTF-8');
$words = explode(' ', $the_excerpt, $excerpt_length + 1);
if(count($words) > $excerpt_length) :
array_pop($words);
array_push($words, '…');
$the_excerpt = implode(' ', $words);
endif;
return $the_excerpt;
}
Функция принимает содержимое из сообщение и извлекает первые 30 слов, разделяя все теги и изображения html. Как я мог сделать наоборот? Чтобы каким-то образом восстановить встроенное видео YouTube и избавиться от остальных? У меня есть две идеи:
Я мог бы, например, взять первые буквы X, найти конец вложения и избавиться от остальных.
Я мог бы добавить специальный элемент в сообщение и взять его внутрь. Что-то вроде:
<span class="vid">...</span>
я теоретически мог бы создавать сообщения только с видео себя и просто использовать the_content(), но я хотел бы избежать этого решения, как сайты, которые просто обмениваться видео без добавления значения пользователя из сайт иногда подвергается штрафу со стороны Google в поисковых рядах.
Я мог бы непосредственно извлечь элемент src из встроенного div.
Какой был бы лучший подход или есть лучший способ сделать это? Если да, не могли бы вы указать мне в правильном направлении?
Благодарим за любые советы.
Спасибо, я постараюсь выяснить это :) – PeterTheLobster