2012年11月6日に更新。以前のバージョンでは、それはあまりうまく行われず、水の下から石が引き出されました。2012年11月7日に更新。マイナーなバグ修正2012年11月13日更新。ファイル/forum/includes/auth/auth_modx.phpのみが修正されます:PhpBBバージョン:
3.0.11MODXバージョン:
2.2.5-plサイトフォルダー:
/フォーラムフォルダー:
/フォーラム私のデータベースは異なりますが、すべてがうまくいくように、データベースも使用できます。
承認は
ほぼ完全にMODX側で行われます。 フォーラムはMODXユーザーのコピーを作成しますが、データはMODXから自動的に更新されます。
PhpBB認証プラグイン
フォーラムでの承認には、「承認プラグイン」のシステムが使用されます。
認証プラグインを使用するには、次のことを行う必要があります。
1.承認プラグインの名前を考えます。例:modx
2.ファイル/forum/includes/auth/auth_modx.phpを作成します(ファイル名の接尾辞(modx)==プラグイン名)
3.ファイル/forum/includes/auth/auth_modx.phpには、少なくとも1つのlogin_modx関数が必要です(サフィックス==プラグイン名)
4.フォーラムで登録を無効にします。一般->ユーザー登録->登録を無効にします
5.フォーラムの管理パネルで:一般->認証->リストからModxを選択します
ファイルコード/forum/includes/auth/auth_modx.php: フォーラム管理者
承認は
ほぼ完全にMODX側で行われるため、フォーラム管理者(ユーザー名、adminなど)をMODXに登録する必要があります。
ここで、MODXに管理者ユーザーがおり、フォーラム管理者が同じ管理者名を持っているとします。
問題は、フォーラム管理者が確認できないパスワードを確認する必要があることです。 フォーラムデータベースではなく、MODXでの承認。

したがって、フォーラム管理者のパスワードの追加検証を無効にします。
ファイル:/forum/adm/index.php
変更先:
後:
if (!$auth->acl_get('a_')) { trigger_error('NO_ADMIN'); }
行を追加:
$user->data['session_admin'] = 1;
ログイン、パスワード回復
ファイル/forum/ucp.phpで、フォーラムの承認フォームを使用して、サイトとフォーラムに同時にログインします。
ケース 'login'の間:とbreak; (包括的):
case 'login': define('MODX_API_MODE', true); require dirname(dirname(__FILE__)) . '/index.php'; $modx->getService('error','error.modError'); set_error_handler(defined('PHPBB_MSG_HANDLER') ? PHPBB_MSG_HANDLER : 'msg_handler'); if($_REQUEST["username"] and $_REQUEST["password"]){ $data = array( 'username' => $_REQUEST["username"], 'password' => $_REQUEST["password"], 'rememberme' => 1, 'login_context' => 'web', ); $response = $modx->runProcessor('/security/login', $data); if ($response->isError()) { trigger_error($response->getMessage()); } } if ($user->data['is_registered']) { redirect(append_sid("{$phpbb_root_path}index.$phpEx")); } login_box(request_var('redirect', "index.$phpEx")); break;
ユーザーがフォーラムデータベースにいなくても、自動的に作成されます。
「パスワードを忘れましたか?」リンクをたどるには、フォーラムでMODXパスワード回復ページ(/forum/ucp.php)にアクセスします。
case 'sendpassword': define('MODX_API_MODE', true); require dirname(dirname(__FILE__)) . '/index.php'; $modx->getService('error','error.modError'); set_error_handler(defined('PHPBB_MSG_HANDLER') ? PHPBB_MSG_HANDLER : 'msg_handler'); $modx->sendRedirect($modx->makeUrl(865,'','','full'));
基礎となる記事:
phpbb 3でのサイトとフォーラムユーザーの統合