いつものように以前に変更したファイルを忘れて上書きしちゃったのであわてました。今回アップデートしたのは、GoogleのウェブマスターツールでURLのリダイレクトエラーがたくさん出ていたからです。ほとんどが、Fireboardがらみのエラーでした。
で、以下を変更してみました。簡単です。
Root/components/com_fireboard/template/default/plugin/report/report.php
$redirect = 'index.php?option=com_fireboard&func=view&catid=' . $catid . '&id=' . $msg_id . '&Itemid=' . FB_FB_ITEMID . '#' . $msg_id;
//$redirect = sefRelToAbs($redirect);
を
$redirect = 'index.php?option=com_fireboard&func=view&catid=' . $catid . '&id=' . $msg_id . '&Itemid=' . FB_FB_ITEMID;
$redirect = sefRelToAbs($redirect). '#' . $msg_id;
のように変更してみました。
また、Forumで以前書いた、画像の表示部分が変更されていました。そこで以下のように変更してみました。
※これは、プラグインなどでイメージを置き換えたりしている方には全く必要ないことです。
$tag_new = "<img src='".$between."' />";
を
$tag_new = "<a href=\"$between\" target=\"好きなターゲット\"><img src='".$between."' width=\"好きなサイズ\" style=\"好きなスタイル\"/></a>";
のように変更してみました。 この変更をすると強制的に大きさが決定されてしまうことにご注意ください。私は、面倒なのでこうしました。
今回は、他にも変更しましたが様子を見ているところです。
Fireboardのログインの件でJoomla!じゃぱんのフォーラムに投稿しましたが、もう少しコードを変えてみます。
ROOT/components/com_login/login.php の22行目あたり...
コード:
global $mosConfig_live_site, $mosConfig_frontend_login, $mosConfig_db;
をコード:
global $mosConfig_live_site, $mosConfig_frontend_login, $mosConfig_db, $Itemid;
に。
同じく38行目あたりを..コード:
$params->def( 'login', $mosConfig_live_site );
をコード:
if($Itemid == あなたの飛ばしたいメニューID番号){
$params->set('login', sefRelToAbs('index.php?option=com_fireboard&Itemid=あなたの飛ばしたいメニューID番号'));
} else {
$params->def( 'login', $mosConfig_live_site );
}などとすれば可能なようです。
まずは、ROOT/components/com_fireboard/template/default/plugin/profilebox/profilebox.phpの110行目あたり
これは、もしかするとコミュニティビルダーなどのプラグインの使用状況により位置がことなるかもしれません。
(うちの環境ではプラグインは使用していません。)
else
{
$loginlink = sefRelToAbs('index.brush:php;?option=com_login&Itemid=' . $Itemid);
?>
を
else
{
$returnfunc = empty($func) ? '' : '&func='. $func;
$returnid = (int)$id ? '&id='. (int)$id : '';
$returncat = (int)$catid ? '&catid='. (int)$catid : '';
$returnlimit = (int)$limit ? '&limit='. (int)$limit : '';
$returnlimitstart = (int)$limitstart ? '&limitstart='. (int)$limitstart : '';
$returnQuery = $returnfunc. $returnid. $returncat. $returnlimit. $returnlimitstart;
$loginlink = sefRelToAbs('index.brush:php;?option=com_login&Itemid=' . $Itemid. $returnQuery);
に変更し、さらにROOT/comoponents/com_login/login.phpの38行目あたり
else
{
$params->def( 'login', $mosConfig_live_site );
を
if($Itemid == あなたのFireboardのmenuID){
$rtemp = mosGetParam($_REQUEST, 'func');
$returnfunc = $rtemp ? '&func='. $rtemp : '';
$rtemp = mosGetParam($_REQUEST, 'id');
$returnid = (int)$rtemp ? '&id='. (int)$rtemp : '';
$rtemp = mosGetParam($_REQUEST, 'catid');
$returncat = (int)$rtemp ? '&catid='. (int)$rtemp : '';
$rtemp = mosGetParam($_REQUEST, 'limit');
$returnlimit = (int)$rtemp ? '&limit='. (int)$rtemp : '';
$rtemp = mosGetParam($_REQUEST, 'limitstart');
$returnlimitstart = (int)$rtemp ? '&limitstart='. (int)$rtemp : '';
$returnQuery = $returnfunc. $returnid. $returncat. $returnlimit. $returnlimitstart;
$params->set('login', sefRelToAbs('index.brush:php;?option=com_fireboard&Itemid=あなたのFireboardのmenuID'. $returnQuery));
} else {
$params->def( 'login', $mosConfig_live_site );
}
?>
のように変更すれば、ログイン後表示していた記事に戻れます。