我想检测子域是否为" m。",如果是,则显示不同的模板。无法在Wordpress API中找到我要找的东西。
答案 0 :(得分:0)
您可以使用PHP中的parse_url()函数执行此操作:
$parsed = parse_url($_SERVER['HTTP_HOST']);
$host = explode('.', $parsedUrl['host']);
$subdomain = $host[0];
然后,您可以添加自己的if语句:
if ($subdomain == "m") { ... } else { ... }
答案 1 :(得分:0)
您应该使用'template_redirect'过滤器或其他_template过滤器之一来更改正在加载的模板。
答案 2 :(得分:0)
我建议用一个脚本创建你自己的插件,然后将它放在wp-content / plugins中,代码如下:
<?php
/**
* Plugin Name: Theme swithwer
* Plugin URI: http://URI_Of_Page_Describing_Plugin_and_Updates
* Description: Custom theme switcher
* Version: 0.1
* Author: XXX XXX
* Author URI: http://URI_Of_The_Plugin_Author
* License: A "Slug" license name e.g. GPL2
*/
add_filter( 'stylesheet', 'switch_ma_theme' );
add_filter( 'template', 'switch_ma_theme' );
function switch_ma_theme()
{
global $wpdb;
// condition to test ad theme to load
if ($_SERVER['HTTP_HOST'] == 'blog.xxxx.xxx')
return 'xxxthemexxx';
// else default theme
$theme = $wpdb->get_results( "SELECT option_value FROM wp_options where option_name='template' ");
$theme = array_pop($theme);
return $theme->option_value;
// Return the theme directory name
}
然后进入管理员,寻找新的插件并启用它