WordPress 无法从侧边栏文件获取页面 ID?
我需要根据页面 ID 以不同方式突出显示某些菜单项,因此当我在顶部调用侧边栏时,我会看到此
<?php if( is_page('my-page') )echo 'my-page';?>
回显只是为了让我看看它是否正常工作... 但是,事实并非如此。我将相同的代码放入主页模板中,它输出是,我在该页面上。侧边栏不起作用的任何原因?
I need to highlight some menu items differently depending on the page ID and so when I call the sidebar up top I have this
<?php if( is_page('my-page') )echo 'my-page';?>
The echo is just for me to see if it is working...
But, it is not. I put the same code into the main page template and it outputs yes I am on that page. Any reason why the sidebar would not work?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
来自 is_page :
不能在循环内部使用
此标签必须在循环之前使用,并且不起作用在循环内部
由于某些全局变量在循环期间被覆盖,is_page() 将不起作用。为了在循环之后使用它,您必须在循环之后调用 wp_query_reset()。
也许这就是您遇到问题的原因?
From is_page :
Cannot Be Used Inside The Loop
This tag must be used BEFORE The Loop and does not work inside The Loop
Due to certain global variables being overwritten during The Loop is_page() will not work. In order to use it after The Loop you must call wp_query_reset() after The Loop.
Maybe this is why you're experiencing problems ?