Jump to content

Отображение видео в rss для Яндекс.Новости (Wordress)


Recommended Posts

Добрый день.

Столкнулся с такой проблемой - есть необходимость, чтобы видео из статья попадало в Я.Новости (сайт уже там), но используемый плагин не даёт такой возможности - выводится только одна картинка. 

Насколько я понимаю, нужно переработать вот этот кусок кода под видео:

 

<?php rss_enclosure(); ?>

				<?
				preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i',$post->post_content, $post_images);
				if(!empty($post_images[1]) && count($post_images[1])>0)
				{
					foreach($post_images[1] as $pi_k=>$pi_v)
					{

		            	$image_info=getimagesize($pi_v);
		            	$image_name=basename($pi_v);
		            	$image_path=str_replace($image_name,'',$pi_v);
		            	?><enclosure url="<?=$image_path.urlencode($image_name)?>" type="<?=$image_info['mime']?>"/><?
					}
				}

				?>

Но в виду своей рукожопости и не знанию мат.части сделать этого не могу.

Отпишитесь, пожалуйста, кто в состоянии решить проблему и сколько это будет стоить (бесплатной помощи не прошу).

Link to post
Share on other sites

Есть вопрос? Задай его профессиональным веб-мастерам, SEO и другим специалистам!

Добрый день.

 

Столкнулся с такой проблемой - есть необходимость, чтобы видео из статья попадало в Я.Новости (сайт уже там), но используемый плагин не даёт такой возможности - выводится только одна картинка. 

 

Насколько я понимаю, нужно переработать вот этот кусок кода под видео:

 

 



<?php rss_enclosure(); ?>

				<?
				preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i',$post->post_content, $post_images);
				if(!empty($post_images[1]) && count($post_images[1])>0)
				{
					foreach($post_images[1] as $pi_k=>$pi_v)
					{

		            	$image_info=getimagesize($pi_v);
		            	$image_name=basename($pi_v);
		            	$image_path=str_replace($image_name,'',$pi_v);
		            	?><enclosure url="<?=$image_path.urlencode($image_name)?>" type="<?=$image_info['mime']?>"/><?
					}
				}

				?>

Но в виду своей рукожопости и не знанию мат.части сделать этого не могу.

 

Отпишитесь, пожалуйста, кто в состоянии решить проблему и сколько это будет стоить (бесплатной помощи не прошу).

Обращайтесь, попробуем помочь

Link to post
Share on other sites

Вопрос отпал - нашёл решение. На всякий случай оставлю тут для потомков. Наверняка решение слишком трудоемкое и можно сделать проще, но, чем богаты, тем и рады. 
Собственно сразу укажу с каким плагином я работал: тут выбирайте самую последнюю версию (03.09.2012 update v0.2.5.1)
 

Затем открывайте файл  template.php и после этого кода 

<?php rss_enclosure(); ?>

				<?
				preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i',$post->post_content, $post_images);
				if(!empty($post_images[1]) && count($post_images[1])>0)
				{
					foreach($post_images[1] as $pi_k=>$pi_v)
					{

		            	$image_info=getimagesize($pi_v);
		            	$image_name=basename($pi_v);
		            	$image_path=str_replace($image_name,'',$pi_v);
		            	?><enclosure url="<?=$image_path.urlencode($image_name)?>" type="<?=$image_info['mime']?>"/><?
					}
				}

				?>

добавьте этот:
 

                                <?php
				$video = get_post_meta($post->ID, 'video', true);
				if ( !empty( $video ) ) {
				global $wp_embed;
				$output = $wp_embed->run_shortcode('<enclosure url="'.$video.'"/>');
				echo $output;
				}
				?> 

Поясняю - необходимо будет добавить произвольное поле с именем "video", в которое вы будете вставлять прямую ссылку на видео (видео я загружаю на свой сайт). 

Наверное коряво и через задний проход... Но главное, что работает - проверено, видео уходят в яндекс и отображаются в сюжетах.

Тему можно закрыть.

Link to post
Share on other sites

 

 


Наверное коряво и через задний проход...

Почему-же "коряво" :) Оч.правильное и по-делу применение произвольных полей (слава богу они уже есть в ВП), в миллион раз "ворованном" DLE только так и делают большую часть(и кстати там этот процесс почти на "автомате" идет :) )

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...