Я использую flexslider для показа пользовательских постов. Мне удалось заставить работать глубокую ссылку, добавив идентификатор записи для каждого элемента li и используя его для обновления URL-адреса этим идентификатором при нажатии на предыдущий / следующий.
Однако я не могу заставить эту новую ссылку работать, когда она отображается в браузере. Цель состоит в том, чтобы использовать этот URL для публикации на Facebook, например. Когда кто-то нажимает на ссылку, он должен перейти к этому конкретному слайду
$(document).ready(function(){
var $flexslider = $('.flexslider');
$flexslider.flexslider({
before:function (slider) {
// get the ID of the slide we are animating to
id = slider.slides[slider.animatingTo].id
// set the URL path to #slideID
history.pushState(null, null, "#" + id);
},
animation: "fade",
touch: false,
slideshow: false,
manualControls: ".flex-control-nav li",
useCSS: false /* Chrome fix*/
});
});
<section id="slider">
<div class="flexslider">
<ul class="slides">
<?php query_posts(array('post_type' => 'juweel','orderby' => 'rand')); if(have_posts()) : while(have_posts()) : the_post();?>
<li data-thumb="<?php the_post_thumbnail_url(); ?>" class="slide" id="<?php the_ID(); ?>">
<?php the_title(); ?>
<?php the_post_thumbnail(); ?>
</li>
<?php endwhile; endif; wp_reset_query(); ?>
</ul>
</div>
</section>
Я знаю, что могу получить хеш текущего местоположения, используя
var hash = window.location.hash;
Но я понятия не имею, как проверить, совпадает ли значение с идентификатором одного из моих слайдов, и заставить его перейти туда