ログインに成功するとCookieに対して自動ログイン可能なハッシュを発行してくれる。それがこのコード。
<?php //wp-login.phpの454行目ぐらい require_once ABSPATH . 'wp-includes/class-phpass.php'; $hasher = new PasswordHash( 8, true ); /** * Filter the life span of the post password cookie. * * By default, the cookie expires 10 days from creation. To turn this * into a session cookie, return 0. * * @since 3.7.0 * * @param int $expires The expiry time, as passed to setcookie(). */ $expire = apply_filters( 'post_password_expires', time() + 10 * DAY_IN_SECONDS ); setcookie( 'wp-postpass_' . COOKIEHASH, $hasher->HashPassword( wp_unslash( $_POST['post_password'] ) ), $expire, COOKIEPATH );
見ての通り、デフォルトは10日間の生存期間が与えられる。
これを変更したい場合はfilterで定義されているメソッドをfunction.phpで実装する。
どうやらWP3.7以降でないとこのフィルターが実装されていないらしい。
<?php add_filter(‘post_password_expires’,'set_post_password_expires’); function set_post_password_expires($time){ //好きにしたらええねん }