从php获取当前页面ID后调用jquery事件

时间:2013-12-18 22:47:44

标签: javascript php jquery wordpress

我对Javascript的了解不是很好,我使用了从网上获得的示例代码并需要帮助。

我有一个jquery多级菜单,在从php(wordpress)获取当前查看的页面ID后,我有一个问题是打开菜单的一部分。

我正在使用wordpress自定义帖子类型(分类法)来创建类别和页面,下面是我的代码。

Javascript:

<script type="text/javascript">
$(function() {

    var menu_ul = $('.aside-menu > li > ul'),
        menu_a  = $('.aside-menu > li > a');

    menu_ul.hide();

    menu_a.click(function(e) {
        e.preventDefault();
        if(!$(this).hasClass('active')) {
            menu_a.removeClass('active');
            menu_ul.filter(':visible').slideUp('normal');
            $(this).addClass('active').next().stop(true,true).slideDown('normal');
        } else {
            $(this).removeClass('active');
            $(this).next().stop(true,true).slideUp('normal');
        }

    });
});

</script>

Html和PHP:

<ul class="aside-menu">
<?php $parents = get_terms('product_category',array('parent' => 0, 'hide_empty' => false)); ?>
<?php foreach($parents as $parent): ?>

    <li><a href="#"><?php echo $parent->name; ?></a>
        <ul>
        <?php $children = get_terms('product_category',array('parent' => $parent->term_id, 'order' => 'ASC')); ?>
        <?php foreach($children as $child): ?>
            <li><a href="<?php echo get_term_link($child->slug,'product_category'); ?>"><?php echo $child->name; ?></a></li>
        <?php endforeach; ?>
        </ul>
    </li>
    <?php endforeach; ?>
</ul>

我知道如何通过php(wordpress)获取当前页面

<?php echo get_queried_object()->parent == $parent->term_id ? '' : '' ?>

知道我该怎么做才能告诉javascript打开菜单部分?

提前致谢。

1 个答案:

答案 0 :(得分:0)

你会:

<?php if(get_queried_object()->parent == $parent->term_id): ?>
<script>
 yourJavaScriptFunction(<?php echo $parent->term_id; ?>);
</script>
<?php endif; ?>

更新:在您文件的某个位置......

<script>
function yourJavaScriptFunction(data) {
 alert("This data is from Ajax: " + data);
}
</script>