У меня есть навигатор боковой панели внутри шаблона в Wordpress. Я использую CSS, чтобы скрыть элементы subnav <li>
и использовать jQuery для переключения их видимости. Это работает вне WP, но не внутри шаблона.Toggle wordpress subnav sidebar items
Вопрос в том, как/где внедрить JS (уже пробовавший нижний колонтитул/заголовок), чтобы эта работа работала.
Это, как его должен работать: http://jsfiddle.net/MLUb8/
WP код:
<div class="l-sidebar at_left">
<div class="l-sidebar-h i-widgets">
<!--IF IS PAGE-->
<?php if (is_page()) { ?>
<!--SHOW ALL SUBPAGES IN UNORDERED LIST-->
<ul><?php
if($post->post_parent){
$children .= wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=1");
}
else{
$children = '<li><a href="'.get_permalink($post).'">'.$post->post_title.'</a></li>';
$children .= wp_list_pages("title_li=&child_of=".$post->ID."&echo=1");
}
echo $children; ?>
</ul>
<?php } ?>
</div>
</div>
СТАВШЕГО HTML:
<li class="page_item page-item-3671 page_item_has_children current_page_item">
<a href="http://test.html">Executive Team</a>
<ul class="children">
<li class="page_item page-item-3791">
<a href="test.html">Board of Directors</a>
</li>
<li class="page_item page-item-3771">
<a href="test.html">Management</a>
</li>
</ul>
</li>
JQuery из скрипки:
$(document).ready(function() {
$("ul li.page-item-3791, ul li.page-item-3771").hide();
$("li.current_page_item").click(function() {
$('.page_item .page-item-3791, ul li.page-item-3771').slideToggle('fast');
return false;
});
}) ;
Учитывая, что ваш код завернут в document.ready, он может идти куда угодно. Добавьте его в шаблон или используйте расширение WP, чтобы включить его. – isherwood
Я попытался добавить его на страницу, но не работает для ссылок. – Matt
Это поможет, если вы покажете отображаемый HTML. jQuery не волнует, как выглядит ваш PHP. – isherwood