結構気に入っているBetter Related Postsですが、非ログイン状態にもかかわらず、非公開ページを関連ページとしてリストアップしてしまうので、これを修正。
具体的には「better-related → inc → scorer.php」を2箇所書き換えます。
300行目
WHERE ( post_status='publish' OR post_status = 'private' )
を
WHERE post_status='publish'
に。
463行目
AND ({$prefix}posts.post_status = 'publish' OR {$prefix}posts.post_status = 'private')
を
AND {$prefix}posts.post_status = 'publish'
に。
post_statusでの条件を「publishとprivate」の2種類から「publish」のみに変更する、ということ。
すでに稼働している状態でこの変更を行った場合、すでに非公開ページに対するスコア生成が行われてしまっているので、設定ページの下の方にある「Data storage ID」の文字列を変更します。
デフォルト状態では「better-related-」となっているのでこれを「better-related」辺りに修正。
これで非公開ページを含まない状態でスコア生成が再度行われることになります。
ただ、関連ページスコアを事前に生成しているので、一度公開したページを非公開にした時にはこの方法では役に立たないかもしれない。時間があるときにもう少しソースを眺めてみる。