0

私はしばらくの間WPを使用してきましたが、常に「スタンドアロン」サイトとして使用しており、現在はメインWebサイトの一部としてブログを作成し、登録/ログインの冗長性を排除するための最良の方法を探しています。理想的には、プライマリWebサイトデータベースのユーザーデータを使用して、可能な限り最も簡単で安全な方法でWPをインストールします。WPブログは、同じサーバー上/メインサイトのサブフォルダー内にあります。

私はこれを投稿する前に解決策を探しましたが、このトピックに関するほとんどの議論は、非WPプライマリWebサイトではなく、複数のWPサイト間でユーザーを共有することを含むようです。

私が見つけたが、うまくいくかどうかわからないいくつかの可能なオプションは次のとおりです。

1)チケットのように見えたが、明らかにしばらく更新されておらず、最後の互換性のあるバージョンとしてバージョン2.9.2を示しているプラ​​グイン(外部DB認証)。これに代わる他の/より良い/維持されたプラグインはありますか?これほどスポットオンに見えるものは他に見つかりませんでした。動作させようとしましたが、WPインストールにログインできませんでした。

新しいユーザーを作成してプライマリWebサイトDBに追加しました。チェックされた唯一の権限は「選択」であり、フォーム上のすべてのプライマリWebサイトDB情報を使用しました。

名前:myws_mysitedb | ユーザー:myws_newwpuser | パスワード:新規ユーザーのパスワード| ユーザーテーブル:sitetable_logins

ユーザー名:ユーザー名| パスワード:パスワード| 暗号化タイプ:その他| ハッシュ:私のメインサイトで使用されているソフトウェアのメーカーが使用していると正確に言っているもの

また、メインサイト登録システムを使用して、WPインストールの管理者名/パスワードとまったく同じユーザー名とパスワードを使用してユーザーを作成しました。これは、プライマリ外部DBに対しても管理者ユーザーを認証する必要があるためです。

私がおそらく間違ったことを何か見ますか?また、すべての権限を持つ新しいユーザーで試してみましたが、効果はありませんでした。

2)追加について読みましdefine('CUSTOM_USER_TABLE', $table_prefix.'my_users'); define('CUSTOM_USER_META_TABLE', $table_prefix.'my_usermeta'); たが、それがWPエンド自体の登録/ログインの問題を処理するかどうかわかりません。「meta_table」を使用する必要があるか、使用すべきでないかわかりません。現在メインDBにそのようなテーブルがなく、使用する他のテーブルがどこにあるかを正確に指定する方法がわからない場合...複数のWPインスタンスが同じDB(またはそのようなもの)上にあるので、私の場合はそれが必要だとは思わない。私はいくつかのことをテストし、それを次のように変更しました:define('CUSTOM_USER_TABLE', custom_databasename.'custom_tablename');

define('CUSTOM_USER_TABLE', 'custom_databasename.custom_tablename');

単純に:define('CUSTOM_USER_TABLE', 'custom_user_table');しかし、どちらも私のプライマリサイトから現在のユーザーでログインすることを許可しませんでした。

この質問/リクエストが迷惑ではなく、自分で見つけたはずの明白な解決策がないことを願っていますが、自分のユーザーを共有するための簡単なステップバイステップのプロセスを簡単に見つけることができなかったことに驚いていますWordpressブログのある既存のサイト/別のデータベース...

ヒントや助けを事前に感謝します!

4

1 に答える 1

0

これを行う 1 つの (ややハックな) 方法は、メイン サイトのユーザー テーブルに挿入/更新トリガーを定義することです。

ユーザーが挿入または更新されるたびに、wordpress ユーザー データベースで対応するレコードを作成または更新します。双方向の統合が必要な場合は、Wordpress ユーザー テーブルにも同様のトリガーを作成できます。

于 2012-06-05T20:54:09.407 に答える