我需要创建一个重写规则,它只在页面中的变量存在的情况下运行,下面是我要完成的一些伪代码。
if ($var != null) {
// do something
}
else {
url_rewrite('current_url', 'new url');
}我遇到的问题是,内置函数的WordPress需要在init上激活,并且不管规则是否存在,都会重定向。
任何帮助都是非常感谢的!
发布于 2018-01-04 13:13:23
如果在init钩子上调用的函数中放置If / you语句,则只有当$var计算结果为false时,重定向才会发生。例如
function 290127_init_validate(){
if ( ! is_post_type_archive('book') ) {
return;
}
if ($var != null) {
// do something
} else {
wp_redirect('new url');
}
}
add_action("init", "290127_init_validate");WordPress提供了许多条件标签,这些C3可以用于对函数何时运行提供更多的粒度控制。如果这些条件标记没有计算为true,您可以在函数和return的早期使用它们。上面的示例函数将只在“book”自定义post类型存档页面上运行。
https://wordpress.stackexchange.com/questions/290127
复制相似问题