问说网 · 发表于 2015-06-26

文章13116 · 评论469

DokuWiki与WordPress的用户整合

字数4433 · 浏览 2611 · 评论 0

DokuWiki是比较好用的维基百科系统,使用文件保存数据,不需要数据库,而WordPress是最好用博客系统,还可以开放用户注册,那么这两个系统能否整合在一起,共享用户信息,实现DokuWiki与WordPress单点登陆。

概述

我们要给DokuWiki添加一个自定义身份验证模块,使用一个WordPress  AUTH的工具而不是默认的DokuWiki。所以我们要调整一些设置。DokuWiki知道它这么做的CAN和CAN’T的用户帐户,然后设置它的WordPress这样的角色成为维基的用户群。

安装和下载

第一,上传和安装WordPress和DokuWiki是如果你没有已。我建议他们在自己的文件夹放在相同的目录,但它不是必要的。例如,我的网站看起来像这样的文件夹:

/web
—-/wordpress
—-/dokuwiki

不管你是把它安装注,因为我们需要它在下一步。现在,下载这个zip和提取物的地方访问它。DokuWiki WordPress Integration (1598)

步骤1:认证模块

从zip压缩包里面复制keeyaiwp.class.php文件到您的wiki/inc/auth的文件夹。

现在它是一个开放和一个线的编辑说$wordpresspath = ‘../wordpress/’;它是第一行代码后,所有的评论。变更本点到你的WordPress文件夹,文件夹的相对到您的维基。如果你使用上面的安装目录,默认是精细。确保有没有尾随斜线的认证不会工作,如果它是缺失的。

步骤2:维基配置选项

浏览到您的wiki/conf文件夹,找到local.php文件。如果它不存在,复制local.php.dist文件重命名为local.php。本文件包含一些维基Wiki程序设置,包括在使用我们的新的身份验证模块。打开它和添加/编辑线下面。

注意:管理员配置帐号是 @administrator 不是 @admin。

$conf['useacl'] = 1;
$conf['superuser'] = '@administrator';

$conf['disableactions'] = 'register';        // Disable the ability to register: handle with wordpress
$conf['autopasswd'] = 0;                    // Disable password autogen: not important if users can't register
$conf['resendpasswd']= 0;                    // Disable password resend:
$conf['profileconfirm'] = '1';        // password must be verified when editing profile
$conf['passcrypt'] = 'smd5';            // Not sure what passcrypt needs to be set to, but this works

// use wordpress login system
$conf['authtype'] = 'keeyaiwp';

// default group name
$conf['defaultgroup']= 'user';

步骤3:维基权限

浏览到您的wiki/conf文件夹,找到acl.auth.php文件,如果文件不存在,复制acl.auth.php.dist文件并重命名为acl.auth.php 文件,本文件控件的默认权限的用户和组在您的维基。我们要添加四下WordPress的角色(我们已经添加管理员角色的设置它为超级用户)为维基用户群。你应该调整你的设置等进行behaves维基的方式你想。角色的名字是WordPress的变化––不要和他们的号码是DokuWiki权限。

这里是DokuWiki的ACL的文件,但是,如果你想跳到它只是不,0=none, 1=read, 2=write, create=4, upload=8, and delete=16,

你需要的只是选择最高的每一个,包括它下面的所有权限。我让每个人阅读的缺陷,所有用户(subscribers、contributors和authors)来read/edit/create网页,和管理员可以上传媒体和删除页面。在管理员组用户有只读访问到维基的管理员工具。

打开文件和添加以下行(如上面描述的任何调整):

*        @ALL            1
*        @editor        16
*        @author         4
*        @contributor    4
*        @subscriber     4

步骤4:WordPress的编辑功能

问题与新安装的功能元素是一个 is_ssl。要解决它,我们把它的WordPress文件和程序的定义是只读的,如果它不is_ssl已经存在。打开wp-includes/functions.php和搜索(通常按Ctrl – F)的function is_ssl和改变它的外观,这样的线和通过添加在开始和结束括号。在 WP 2.9.1 一般在 3091 行。

if(!function_exists('is_ssl')) {
    function is_ssl() {
        if ( isset($_SERVER['HTTPS']) ) {
            if ( 'on' == strtolower($_SERVER['HTTPS']) )
                return true;
            if ( '1' == $_SERVER['HTTPS'] )
                return true;
        } elseif ( isset($_SERVER['SERVER_PORT']) && ( '443' == $_SERVER['SERVER_PORT'] ) ) {
            return true;
        }
        return false;
    }
}

总结

现在你的博客和维基在登录到要完全同步。做上面的步骤后,你可以使用维基的管理员工具进一步调整为用户和组权限,所以你应该从来没有让我们进入代码。

如果你有任何问题或建议,请留下一个评论?

原文:http://keeyai.com/projects-and-releases/dokuwiki-tools/dokuwiki-and-wordpress-integration/

本文系作者 问说网 授权问说网发表,并经问说网编辑,转载请注明出处和 本文链接

问说网手机版

躺着 站着 跪着轻松访问

更多 热门话题

APP界面

APP界面

文章 41517

APP欣赏

APP欣赏

文章 41450

APP手机界面

APP手机界面

文章 41440

图片素材

图片素材

文章 29463

高清图片

高清图片

文章 26225

更多 推荐作者

问说网

文章 13116

GallupDarnell

文章 117

GibbonRoy

文章 119

StuartKelly

文章 115

YeatesGeoffrey

文章 113

发布评论

顶部 反馈 评论 底部

意见反馈

感谢您对问说网的支持,提出您在使用过程中遇到的问题或宝贵建议,您的反馈对我们产品的完善有很大帮助。

您的反馈我们已收到!

感谢您提供的宝贵意见,我们会在1-2个工作日,通过您留下的联系方式将处理结果反馈给您!