Javascript 禁用在特定Wordpress页面上执行的脚本
我想要一个脚本(已经工作)现在运行在我的整个WP网站,除了在一个特定的页面,该页面的转介去 有效的脚本:Javascript 禁用在特定Wordpress页面上执行的脚本,javascript,php,wordpress,Javascript,Php,Wordpress,我想要一个脚本(已经工作)现在运行在我的整个WP网站,除了在一个特定的页面,该页面的转介去 有效的脚本: <script type="text/javascript"> var d = new Date(); var day = d.getDay(); if (day == 0) { window.location="https://example.com/mypage"; } </script> 我不希望脚本在重定向
<script type="text/javascript">
var d = new Date();
var day = d.getDay();
if (day == 0) {
window.location="https://example.com/mypage";
}
</script>
我不希望脚本在重定向页面上运行的原因是该页面将进入一个无休止的循环
有人能告诉我如何让它工作吗?正如我在评论中所说的,你不能将javascript代码放入PHP函数中,而应该使用PHP重定向,使用头函数,如so:
function my_custom_script() {
$day = date('d');
if (0 === $day) {
header('Location: http://example.org/');
exit();
}
}
add_action('wp_enqueue_scripts', 'my_custom_script');
注意:因为我从来没有真正使用过WordPress(感谢上帝),所以我还没有测试过代码。我刚刚修改了您的逻辑:)如果在外部文件中添加了Javascript。
add_action( 'wp_print_scripts', 'my_deregister_javascript', 100 );
function my_deregister_javascript()
{
if ( is_page('YOUR PAGE NAME') )
{
wp_deregister_script( 'WORDPRESS JS file NAME' );
}
}
如果Javascript硬编码在页眉和页脚中
if ( !is_page('YOUR PAGE NAME') )
{
<-- Javascript Code Here -->
}
if(!is_page('YOUR page NAME'))
{
}
除非我遗漏了什么;所有你想做的是防止你的“星期天”我的网页重定向到自己当它是一个星期日
您已经在客户端(javascript)进行了检查,因此,与其在每个页面上为WP添加更多PHP代码,不如将javascript修改为仅在不是“星期日”页面时重定向。i、 e
<script type="text/javascript">
var d = new Date();
var day = d.getDay();
if (day == 0) {
var landingPage = "https://example.com/mypage";
var currenturl = window.location;
if(landingPage != currenturl) {
window.location=landingPage;
}
}
</script>
var d=新日期();
var day=d.getDay();
如果(天==0){
var landingPage=”https://example.com/mypage";
var currenturl=window.location;
如果(登录页!=当前URL){
window.location=landingPage;
}
}
您不能简单地将javascript放入php函数中。只是在那里做一个正确的PHP重定向,而不是JavaScription。你不能把JS代码和PHP代码混为一谈,就好像它们是同一种语言一样。用PHP获取日期,然后使用header()
重定向。比使用JS更干净。没错,它很有效!谢谢scytale和所有人的回答。
<script type="text/javascript">
var d = new Date();
var day = d.getDay();
if (day == 0) {
var landingPage = "https://example.com/mypage";
var currenturl = window.location;
if(landingPage != currenturl) {
window.location=landingPage;
}
}
</script>