微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – WordPress:如何将url GET参数添加到我的主菜单项

我正在尝试将URL GET参数添加wordpress中的一个菜单项(但我不知道如何).所以,我的方法是检测菜单项上的click事件,然后通过ajax将参数传递给我的PHP页面,该页面将根据需要处理传递的值.我的主要问题是,看着我的代码,怎么回事?有没有更好的方法wordpress中执行此操作而不依赖于 JavaScript

Here is the javascript:
    <script type="text/javascript">
        $(document).ready(function() {
            $("#menu-item-128").click(function() {
                $.ajax({
                    url: 'homepage.PHP',type: "GET",data: ({ homeclick = true }),success: function() {
                       alert("success!");
                    }
                });
             });
         });
   </script>

Here is my PHP:
   $homeclick = $_GET['homeclick'];   

   if ( !isset( $_COOKIE['hs_user'] ) ) {
       get_header();
   } elseif (isset( $_COOKIE['hs_user'] ) && $homeclick == true ) {
       get_header();
   } else {
       // Do Something else
       header('Location: homepage-returning-users');        
   }

解决方法

过滤器钩子wp_get_nav_menu_items用于操纵Nav菜单.示例中使用的post_title是菜单(导航标签)的标题,而不是帖子/页面标题.

将此代码放在functions.PHP文件中,根据需要调整post_title和?my_var = test.请注意,功能优于create your own plugin.

add_filter( 'wp_get_nav_menu_items','nav_items',11,3 );

function nav_items( $items,$menu,$args ) 
{
    if( is_admin() )
        return $items;

    foreach( $items as $item ) 
    {
        if( 'Home' == $item->post_title)
            $item->url .= '?my_var=test';

    }
    return $items;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐