Я довольно новичок в Wordpress и PHP, и я использую wooslider как часть шаблона для динамического создания ползунков для пользовательских типов записей.
Я создаю слайды для каждого изображения, прикрепленного к сообщению, и назначаю им одинаковую таксономию слайдера.
а затем попросите wooslider создать слайдер для этой таксономии слайдера.
Моя единственная проблема - это слайд, который не содержит изображения, но содержит ссылку на видео в тегах вставки.
Что бы я ни пытался сделать, этот слайд не отображается и удерживает слайдер в «застрявшем» состоянии, то есть он не скользит.
Единственная половина работы - это когда я не устанавливаю сгенерированный видео слайд как опубликованный в шаблоне, но черновик,
а затем перейдите на экран редактирования сообщения и опубликуйте его оттуда.
Это мой код:
/////////////////////////////////////////////////////////////
// IF MACHINE HAS VIDEO LINK CREATE NEW VIDEO SLIDER.
/////////////////////////////////////////////////////////////
//If youtube_link field is not empty.
if($YTURL):
$video_title = $term_slug.'-video';
$video_slide_object = get_page_by_path( $video_title, OBJECT, 'slide' );
$video_slide_content = '[embed]'.$YTURL.'[/embed]';
//If video-slide doesn't exist, create a slide for the Youtube video
if(!$video_slide_object):
$video_id = wp_insert_post(array (
'post_type' => 'slide',
'post_title' => $video_title,
'post_content' => $video_slide_content,
'post_status' => 'publish',));
wp_set_post_terms( $video_id, $machine_slide_term['term_id'], 'slide-page');
//If video slide exists and content is different, update
elseif($video_slide_object == true && $video_slide_object ->post_content != $video_slide_content):
$video_id = $video_slide_object->ID;
$current_video = array (
'ID' => $video_id,
'post_content' => $video_slide_content,
'post_title' => $video_title,
'post_type' => 'slide',
'post_status' => 'publish',
);
$vpost_id = wp_update_post( $current_video, true );
if (is_wp_error($vpost_id)) {
$errors = $vpost_id->get_error_messages();
foreach ($errors as $error) {
echo $error;
}
}
endif;
endif;
echo do_shortcode('[wooslider slider_type="slides" slideshow_speed="3" thumbnails="true" limit="100" pause_on_action="true" pause_on_hover="true" slide_page="'.$term_slug.'" ]');
Это HTML-код для созданного вручную слайдера (имеется в виду, что я сделал это через интерфейс плагина), который работает:
<p class="responsive-video-wrap clr">
<div class="fluid-width-video-wrapper" style="padding-top: 56.25%;">
<iframe src="https://www.youtube.com/embed/ygCnAoJ9PAU?feature=oembed" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="" id="fitvid137374">
</iframe>
</div>
</p>
И это HTML-код, созданный из содержимого моего кода для вставки:
<p class="responsive-video-wrap clr">
<div class="fluid-width-video-wrapper" style="padding-top: 23.4167%;">
<iframe id="ygCnAoJ9PAU" class="wooslider-youtube" src="http://www.youtube.com/embed/ygCnAoJ9PAU?enablejsapi=1&version=3&wmode=transparent&rel=0&showinfo=0&modestbranding=1" frameborder="0" allowfullscreen="">
</iframe>
</div>
</p>
Может ли кто-нибудь дать мне какое-нибудь решение о том, как действовать?