如何使用jquery在wordpress中获取当前页面id
如何单独使用jquery在wordpress中获取页面id。我计划使用需要了解页面id的自定义脚本更改页面的某些样式。最好的方法是通过PHP添加全局javascript变量 为此,首先将以下脚本添加到page.php模板文件中:如何使用jquery在wordpress中获取当前页面id,jquery,wordpress,Jquery,Wordpress,如何单独使用jquery在wordpress中获取页面id。我计划使用需要了解页面id的自定义脚本更改页面的某些样式。最好的方法是通过PHP添加全局javascript变量 为此,首先将以下脚本添加到page.php模板文件中: <script> var pageId = <?php echo isset($posts[0]) ? $posts[0]->ID : 'null'; ?>; </script> var pageId=; 现在,在java
<script>
var pageId = <?php echo isset($posts[0]) ? $posts[0]->ID : 'null'; ?>;
</script>
var pageId=;
现在,在javascript代码中,您可以像这样使用这个全局变量
<script>
if(pageId !== undefined && pageId) {
// do some code based on pageId
}
</script>
if(pageId!==未定义和pageId){
//根据pageId执行一些代码
}
您可以使用相同的技术在javascript中使用其他WordPress变量。使用
wp\u localize\u script
function my_custom_vars() {
global $wp_query;
$vars = array(
'postID' => $wp_query->post->ID,
);
wp_localize_script( 'myvars', 'MyScriptVars', $vars );
}
add_action ('wp_enqueue_scripts', 'my_custom_vars');
您可以通过这种方式在脚本中使用vaiables
<script type="text/javascript">
var MyPostID = MyScriptVars.postID;
</script>
var MyPostID=MyScriptVars.postID;
var pageId=“”
在脚本中使用上一行如果只想在jQuery中获取当前页面id,可以通过以下步骤完成:
- 首先进行隐藏输入或隐藏HTML标记,并根据元素的id将当前页面id添加到其中:
和值c_pageid
get_the_id()代码>
- 在jQuery文件中,您可以通过id获取该值,如
var pageId=$(“#c#u pageId”).val()代码>
function get_current_page_id() {
var page_body = $('body.page');
var id = 0;
if(page_body) {
var classList = page_body.attr('class').split(/\s+/);
$.each(classList, function(index, item) {
if (item.indexOf('page-id') >= 0) {
var item_arr = item.split('-');
id = item_arr[item_arr.length -1];
return false;
}
});
}
return id;
}
将此函数添加到代码中。
现在,您可以使用以下方法获取页面id:
var id = get_current_page_id();
var id = get_current_page_id();
var current_page_id = get_current_page_id();
function get_current_page_id() {
var page_body = $('body.page');
var page_id = '';
if(page_body) {
var classList = page_body.attr('class').split(/\s+/);
$.each(classList, function(index, item) {
if (item.indexOf('page-id') >= 0) {
page_id = item;
return false;
}
});
}
return page_id;
}