/* config */
// 是否创建首页的静态文件
define('IS_INDEX',true);// false = do not create home page cache
/*end of config*/
define('COSVERSION','2.7.3'); // 定义插件版本
// 引入wp的文件操作函数,后面将用到其中的get_home_path
require_once(ABSPATH . 'wp-admin/includes/file.php');
/* end of config */
$sm_locale = get_locale(); // 获取语言环境方便后面的本地化处理
// 得到语言环境对应的本地化翻译文件,当然现在只有中文的cosbeta-zh_CN.mo
$sm_mofile = dirname(__FILE__) . "/cosbeta-$sm_locale.mo";
// 加载本地化的翻译(http://codex.wordpress.org/Function_Reference/load_textdomain)
load_textdomain('cosbeta', $sm_mofile);
// 得到博客网站的url (http://codex.wordpress.org/Option_Reference)
$cossithome = get_option('home');
// 获取调用链接的完整url
$script_uri = rtrim( "http://".$_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"] ,"/");
$home_path = get_home_path(); // 得到wp所安装的绝对物理目录
define('SCRIPT_URI',$script_uri); // 定义调用链接
define('CosSiteHome',$cossithome); // 定义网站url
define('CosBlogPath', $home_path); // 定义网站安装物理位置
// 定义插件生效标记
define("COSMETA","");
// 创建静态文件的函数
function CreateHtmlFile($FilePath,$Content){
// 去掉文件名中的一些非法符号
$FilePath = preg_replace('/[ <>'"rnt()]/', '', $FilePath);
// if there is http:// $FilePath will return its bas path
// 分隔文件路径,比如/home/xxx/xxx/xxx/xxx.html,
// 如果是类似http://xxx.com/html/y2012/xxx.html,将传入/html/y2012/xxx.html
// (http://cn2.php.net/manual/zh/function.explode.php)
$dir_array = explode("/",$FilePath);
//split the FilePath
$max_index = count($dir_array) ;
$i = 0;
$path = $_SERVER['DOCUMENT_ROOT']."/"; // 获取网站的根目录,比如/home/username/
while( $i < $max_index ){
$path .= "/".$dir_array[$i]; // 把子目录一级一级加到路径上
$path = str_replace("//","/",$path); // 如果有//则替换成/
if( $dir_array[$i] == "" ){ // 如果这目录值为空则跳过去,这个判断放在循环的最前面可能更合适
$i ++ ;
continue;
}
// 上面的代码似乎可以写得更精练
if( substr_count($path, '&') ) return true; // 如果路径中有&符号,这不好处理,不管了
if( substr_count($path, '?') ) return true; // 有?也不管了
if( !substr_count($path, '.htm') ){ // 如果不包含.htm,原来传了个路径进来
//if is a directory
// 如果路径不存在,贱之,并赋读写运行权,如果存在,那八成也是这里贱的
if( !file_exists( $path ) ){
@mkdir( $path, 0777);
@chmod( $path, 0777 );
}
}
$i ++; // 这个搞完,继续
}
if( is_dir( $path ) ){ // 如果上面折腾完后,发现是个目录,那就是说要创建index.html
$path = $path."/index.html";
}
// 如果html页面没创建完整,那还是不管算了
if ( !strstr( strtolower($Content), ' |