XPressME Integration Kit

フォーラム

WhatsNew用プラグインで取得されるuid

永らくありがとうございました フォーラム バグ報告と提案 WhatsNew用プラグインで取得されるuid

  • このトピックには5件の返信、2人の参加者があり、最後に匿名により12年、 11ヶ月前に更新されました。
6件の投稿を表示中 - 1 - 6件目 (全6件中)
  • 投稿者
    投稿
  • #2587
    匿名
    ゲスト

    お世話さまです。

    リリース版を導入後に(藤右衛門さんのモジュールじゃないですが)

    WhatsNewモジュールも導入してみました。

    WhatsNew側でXPressから取得したuidを基にプロフィールページへの

    リンクが画面上は名前は一致しているので問題ないように見えるの

    ですが、いざリンクをクリックすると違う人のプロフィールページに

    遷移してしまう。という現象が発生します。

    Ver.2からXPressモジュールにアクセスした毎にWordPressにユーザーが

    作られるようになった(?)為、WhatsNew用プラグインで取得される値

    「uid」がXOOPSとXPressとで一致しない場合がありえるので、発生して

    いるのかと思います。

    #2761
    toemon
    キーマスター

    uid」がXOOPSとXPressとで一致しない場合がありえるので、発生して

    いるのかと思います。

    ビンゴです。

    WordPress側へのユーザ登録(同期)はXPressME1.Xのときから行っていますが、

    このとき、WordPress側のユーザーIDはXOOPS側のユーザーIDを使って登録するようにしていましたので、問題はなかったのですが、

    Ver2.XからはWordPress側からの登録を可能にするため、各々の別のuidが使われるようになったことにより発生したものです。

    このため、新着情報もそうですが、ユーザーアカウント情報のXPressME投稿リストにも影響しています。

    このバグはチケット#139 に登録しました。 (出来れば、直接 trac のほうに、チケットをあげていただけるとありがたいです。)

    パッチの方もチケット#139のほうにアップしてありますので、ご確認いただければ幸いです。

    #2762
    toemon
    キーマスター

    こちらのローカル環境で

    新着情報 モジュール 2.50

    XOOPS HappyLinux モジュール 1.50

    で構成した状態では、チケット#139のパッチを適応後のテストはOKとなっております。

    #2763
    匿名
    ゲスト

    お世話さまです。

    >出来れば、直接 trac のほうに、チケットをあげていただけるとありがたいです。

    了解です。それは次回からという事で、今回はこのままフォーラムでやり取りさせて下さい。

    >パッチの方もチケット#139のほうにアップしてありますので、ご確認いただければ幸いです。

    パッチの導入結果をご連絡します。

    こちらの環境では、XPressMEモジュールを2つインストールしているのですが、

    パッチを導入(上書き&モジュールアップデート)したところ以下のエラーが

    発生しました。

    > PHP Fatal error: Cannot redeclare wp_uid_to_xoops_uid()

    Webでエラーの意味/回避策を探し、以下のようにしたところ上記のエラーは

    回避出来るようになりましたが、こちらの環境では結果は変わりませんでした。

    Whatsnewモジュールやテンプレートキャッシュもクリアしてみたのですが、

    結果は変わりませんでした。

    |if (!function_exists(‘wp_uid_to_xoops_uid’))

    |{

    | function wp_uid_to_xoops_uid($wp_uid = ”){

    | ~~ 抜粋 ~~

    | }

    |}

    |if (!function_exists(‘xoops_uid_to_wp_uid’))

    |{

    | function xoops_uid_to_wp_uid($xoops_uid = ”){

    | ~~ 抜粋 ~~

    | }

    |}

    そこで、MySQLのデバッグを有効にしてみると、更新のあるBのユーザーテーブルを

    参照しなければいけないところをが、Aのユーザーテーブルを参照していました。

    その為、結果がパッチ導入前後で変わらないという事になっていました。

    ※2つインストールしているモジュールをそれぞれ、AとBとして記載してます。

     Aは、Ver1からのアップグレード:XOOPSのユーザーテーブルのuidが同一

     Bは、新規にVer2をインストール:XOOPSのユーザーテーブルのuidが不一致

    モジュールAの方にパッチをはずしてBだけに新しい「data.inc.php」にしても

    結果は変わらずでした。

    何だかWhatsnewモジュールがモジュールBであってもモジュールAだと認識して

    Aのプラグインしか呼んでいないような動きです。

    これぐらいしか追えませんでした。

    是非解決したく、他に見るところがあれば教えて下さい。

    – – – 使用環境 – – – – – – – – – – – – – – – – – – – – – –

    SERVER::Apache

    PHP Version::5.2.9

    MySQL Version::5.0.45

    XOOPS Version::XOOPS Cube Legacy 2.1.7

    XPressME Version::2.01 Bata-1

    WordPress Version::2.7.1

    WP DB Version::9872

    #2764
    toemon
    キーマスター

    あぁ、すっかり複製利用のほうを忘れてしまってました。 orz

    チケット #143 のpatch143.zipで修正してみました。

    ついでにチケット #142にて

    XOOPS側からWP側へ新規ユーザ登録する際、該当IDが使われていなければ、XOOPS側ユーザIDと同じIDを使うよう修正を行いました。(WP側からユーザ登録した場合はこの限りではありません)

    #2765
    匿名
    ゲスト

    お世話さまです。

    パッチ143を導入したところ問題なく動作するようになりました!

    素早い対応ありがとうございました!!

6件の投稿を表示中 - 1 - 6件目 (全6件中)
  • このトピックに返信するにはログインが必要です。