ブロックによっては、登録ユーザーごとに内容が変化し、キャッシュさせると問題が生じる場合があります。
そこで、ブロックの編集画面へ「非ログイン(ゲスト)ユーザーのみキャッシュを有効にすることができるオプション」を追加する改造です。
本来なら、ブロック情報のデータベースに項目を増やすべきですが、バージョンアップ時の手間などを考えて、ちょっと姑息な方法で実現しています。
改造のベースバージョンは XOOPS 2.0.7.3 です。
if (empty($bcachetime)) {
を以下のように変更
// Only a guest enable cache. by nao-pon
//if (empty($bcachetime)) {
if ($bcachetime % 10 == 1)
{
$bcachetime_guest = TRUE;
$bcachetime = $bcachetime - 1;
}
else
$bcachetime_guest = FALSE;
if (empty($bcachetime) || (is_object($xoopsUser) && $bcachetime_guest)) {
$bcachetime = isset($bcachetime) ? intval($bcachetime) : 0;
の下に以下を挿入
// Only a guest enable cache. by nao-pon if (!empty($b_cg_only)) $bcachetime = $bcachetime + 1;
$cache_select = new XoopsFormSelect(_AM_BCACHETIME, 'bcachetime', $block['cachetime']);
の上に以下を挿入
// Only a guest enable cache. by nao-pon
$block['cache_guest_only'] = 0;
if ($block['cachetime'] % 10 == 1)
{
$block['cache_guest_only'] = 1;
$block['cachetime'] = $block['cachetime'] - 1;
}
$form->addElement($cache_select);
の下に以下を挿入
// Only a guest enable cache. by nao-pon
$form->addElement(new XoopsFormRadioYN('Only a guest enable cache.', 'b_cg_only', $block['cache_guest_only']));
73行目以降は次のようになります。
// Only a guest enable cache. by nao-pon
$block['cache_guest_only'] = 0;
if ($block['cachetime'] % 10 == 1)
{
$block['cache_guest_only'] = 1;
$block['cachetime'] = $block['cachetime'] - 1;
}
$cache_select = new XoopsFormSelect(_AM_BCACHETIME, 'bcachetime', $block['cachetime']);
$cache_select->addOptionArray(array('0' => _NOCACHE, '30' => sprintf(_SECONDS, 30), '60' => _MINUTE, '300' => sprintf(_MINUTES, 5), '1800' => sprintf(_MINUTES, 30), '3600' => _HOUR, '18000' => sprintf(_HOURS, 5), '86400' => _DAY, '259200' => sprintf(_DAYS, 3), '604800' => _WEEK, '2592000' => _MONTH));
$form->addElement($cache_select);
// Only a guest enable cache. by nao-pon
$form->addElement(new XoopsFormRadioYN('Only a guest enable cache.', 'b_cg_only', $block['cache_guest_only']));
if (isset($block['bid'])) {
$form->addElement(new XoopsFormHidden('bid', $block['bid']));
}
以上で完了。
| Page name: | XOOPS/ブロックのキャッシュコントロール [ Sended pings(0) ] | |
| Author: | nao-pon | - 2005/08/15 14:14:16 JST(2839d) |
| Last edit: | nao-pon | - 2005/08/15 14:14:16 JST(2839d) |
| Editers: | 登録ユーザー | |
| Back Link: | 通りすがりさん(717d) 通りすがりさん(2417d) XOOPS(2540d) | |
ログイン
メインメニュー
Home
新着情報
フォーラム
UsersWiki
xpWiki::Dev
Wiki [自由帳]
Recent View
View List
書籍情報
価格比較の最安百貨
写メールBBS
たぐめも
ダウンロード
箱庭諸島
リンク集
カレンダー
お問い合わせ
サイトマップ
参照元情報
イメージマネージャ
|
最新のページ
ブックマーク
新着トラックバック
サイト内 Wiki
☆ 検索 ☆
オンライン状況
サイト情報
現在ページのQRコード
参照元情報