我想为来自特定域的所有查询添加一个查询变量。
例如,mydomain.com 和 proxydomain.com 都显示相同的 WordPress 站点,但对于通过 proxydomain.com 访问的用户,我希望能够以不同方式处理他们的查询。
此外,我想为来自 proxydomain.com 的访问者应用一些不同的 CSS 样式。
我想我可以检查 query_var 并根据该变量的存在应用类。
最佳答案
这是要添加到您的 functions.php
文件中的代码:
add_filter( 'body_class', 'domain_as_body_class' );
function domain_as_body_class( $classes ) {
$classes[] = sanitize_title( $_SERVER['SERVER_NAME'] );
return $classes;
}
它将您站点的已净化域(即 mydomain-com
或 proxydomain-com
)添加为您的 body
标签的类页面,因此您可以针对自定义样式的相关类。
更新
对于查询,您可以在 functions.php
中再次添加一个函数,例如:
function is_proxydomain() {
return 'proxydomain.com' == $_SERVER['SERVER_NAME'];
}
然后在查询需要时使用它:
if( is_proxydomain() ) {
$args = array(
// arguments for proxydomain.com
);
} else {
$args = array(
// arguments for mydomain.com
);
}
$query = new WP_Query( $args );
关于php - WordPress query_var 按域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29639344/