XPressME Integration Kit

フォーラム

Re: WP Super Cacheのプラグイン導入時のXPressMEハック

#3002
toemon
キーマスター

少しだけWP Super Cacheの資料を読んでみました。

1. Users who are not logged in.

   (ログインしていないユーザ)

2. Users who have not left a comment on your blog.

   (ブログにコメントを書き込んでいないユーザ)

3. Or users who have not viewed a password protected post.

   (パスワード保護された記事を見ていないユーザ)

に関してはあらかじめ用意されたキャッシュのほうを読み込む仕様みたいですね。

で、上記条件に該当するかしないかを、クッキーで確認する

単純にいえばログインしてなければクッキーが無いはずなので、ということみたいですね。

そうすると

そういう意味では、include/set_cash_cookie_path.phpにある

USER_COOKIE

PASS_COOKIE

AUTH_COOKIE

SECURE_AUTH_COOKIE

LOGGED_IN_COOKIE

TEST_COOKIE

などのdefineも対象になりそうなのですが、

set_cash_cookie_path.phpでdefineしない素のwordpress では、wp-setting.phpの432行目あたりからの設定で

クッキーの先頭にwordpressが設定されているのにも関わらず引っかからないということは、対象外と考えてよいということでしょうか?

こちらの方は逆にwordpressから始まるクッキーじゃないと、ログインしていても、WP Super Cacheのほうは該当クッキーがないからログインしてないと判断してしまうかもしれませんね。

/wp-content/plugins/xpressme/include/custom_functions.php

/wp-content/plugins/xpressme/include/xpress_common_functions.php

の両ファイルの、$author_cookieにCookie名をセットしている個所(合計4か所)

$author_cookie = get_xpress_dir_name() . “_select_author” ;

$author_cookie = “xpressme” . get_xpress_dir_name() . “_select_author” ;

に変更しました。

のほうはログアウトしても残っているクッキーなので、ご指摘のとおりの変更が必要になります。