我正在尝试将 URL GET 参数添加到 Wordpress 中的主菜单项之一(但我不知道如何操作)。因此,我的方法是检测菜单项上的单击事件,然后通过 AJAX 将参数传递到我的 php 页面,该页面将处理根据需要传递的值。
我的主要问题是,看看我的代码,为什么不起作用?有没有更好的方法在 WordPress 中执行此操作而不依赖 javascript?
这是 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>
这是我的 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
用于操作导航菜单。这post_title
示例中使用的是菜单(导航标签)的标题,而不是帖子/页面的标题。
将此代码放入您的functions.php
文件,调整post_title
and ?my_var=test
满足您的需求。请注意,比functions
is to 创建你自己的插件.
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;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)