1.先建一个xoops块: 目录为proxy,以下有 index.php,header.php,footer.php,newblog.php,xoops_version.php 先看xoops_version.php 2.思路: 用户在点击菜单时,系统会自动判断用户时否已经拥用了WordpressBlog.如果没有,则会显示设定Wordpress的表单。 文件index.php getVar(“uname”).”‘“; $rs=$xoopsDB->query($sql); $rows=$xoopsDB->getRowsNum($rs); if($rows) { require_once(“class/xoops_mu.php”); $xoops_mu=new xoops_mu(); $xoops_mu->userLogin($xoopsUser->getVar(“uname”),md5($xoopsUser->getVar(“pass”)),time()+365*24*3600,”/wpmu/“,”.newag.com.cn”); header (“location:http://“.$xoopsUser->getVar(“uname”).”.newag.com.cn/wpmu/“); } else { $xoopsOption[“template_main”]=”newblog.html”; $xoopsTpl -> assign(“email”, $xoopsUser->getVar(“email”)); } require_once(“footer.php”); ?> 3.如果用户已经有了blog,那会自动转向到blog中。 如果没有,是调的一个模板,这个模板询问用户是否要创建一个Wordpress博客。用户选择开通后,会进入newblog.php newblog.php代码: addNewWPUser($xoopsUser->getVar(“uname”),$xoopsUser->getVar(“pass”),$xoopsUser->getVar(“email”),$xoopsUser->getVar(“uname”).”.newag.com.cn”,”wpmu”,”http://“.$xoopsUser->getVar(“uname”).”.newag.com.cn/wpmu/“,$xoopsUser->getVar(“uname”))) { //echo “创建wp用户成功.
“; } if($xoops_mu->CreateBlog($xoopsUser->getVar(“uname”),$xoopsUser->getVar(“uname”).”.newag.com.cn”,$xoopsUser->getVar(“uname”),”/wpmu/“)) { //echo “创建Blog成功.
“; } //$xoopsOption[“template_main”]=”success.html”; // $xoopsTpl -> assign(“uname”, $xoopsUser->getVar(“uname”)); header(“location:http://“.$xoopsUser->getVar(“uname”).”.newag.com.cn/wpmu/“); require_once(“footer.php”); ?> 其实主要还是调用了xoops_mu这个类来进行新博客的创建工作。 经过我的分析,进行了这样一系统工作: 在wp_site,wp_user,wp_signups三个表中插入了相应的行(感觉有点数据冗余,域名都插入了好几次),在wp_usermeta中插入了5行数据.然后建了wp_数字_****这样形式的8个表(前一阵看还是7个,记得当时没有wp_*_options这个表,现在又多了一个表).这一系列工作我就没有去细看,直接用phpmyadmin把sql导出了,然后做了相应一些处理后,直接执行了。 在前面一篇blog的xoops_mu类里。不过注意那个类是没法直接运行的,毕竟只是交流,示例一下WP整合是怎么一个思路。 有兴趣的话,等我完全搞完后发一个资料内传阅一下。 PS:个人感觉mu.wordpress.org上的那个版本有点乱,我开始下了一个nightly版本,不过developer太马虎了,居然出来巨搞笑的BUG,用***.com就可以,用***.com.cn,居然图片,js文件的地址就成了com.cn/***了,所以我放弃了,再下的wordpress.mu.1.0Rc4 好像也改动了一些文件。但改了文件版本号应该改一下。