OpenPNE 公開日記モジュール(OpenDiary)の問題点
- 2007.10.19
- OpenPNE
公開日記モジュール(OpenDiary)をOpenPNE2.8.x以降で使うと日記を「外部に公開」とすると「最新日記一覧」に反映されない。
手順通りの他に以下の箇所を修正すると「外部に公開」とした日記が最新日記一覧に表示された。
OPENPNE_DIR/webapp/lib/db/diary.php の736行目付近
修正前
//自分の日記だけを対象にする事も出来る
if ($c_member_id) {
$where = ' WHERE c_member_id = ?';
$params[] = intval($c_member_id);
} else {
$where = " WHERE public_flag = 'public'";
}
修正後
//自分の日記だけを対象にする事も出来る
if ($c_member_id) {
$where = ' WHERE c_member_id = ?';
$params[] = intval($c_member_id);
} else {
$where = " WHERE public_flag = 'public' or public_flag = 'open'";
}
or public_flag = 'open'を追加する
さらに外部公開日記にコメントを残すと「日記コメント記入履歴」(?m=pc&a=page_h_diary_comment_list)に反映されない問題も
この問題の修正もOPENPNE_DIR/webapp/lib/db/diary.php の581行目付近と600行目付近の2箇所を修正する事で解決出来る。
修正前
' AND (d.public_flag = \'public\' OR (d.public_flag = \'friend\' AND d.c_member_id IN (' . $friend_ids . ')))' .
修正後
' AND (d.public_flag = \'public\' OR d.public_flag = \'open\' OR (d.public_flag = \'friend\' AND d.c_member_id IN (' . $friend_ids . ')))' .
OR d.public_flag = \'open\'を追加する
-
前の記事
use strict; でperl作成するべき 2007.10.05
-
次の記事
OpenPNEのパッチファイルをあてる方法 2007.10.23