このサイトのNP_TrackBackのバージョンは123bj7を使用しています。
先日Nucleusのバージョンを3.2にあげたのですが、その後トラックバックを打つと生成されるリンクが
通常
http://www.mysite.co.jp/diary/item_123.html
のようになるアドレスが、
http//www.mysite.co.jp/diary//item_123.html
のように、スラッシュが2重に表記される問題が発生するようになりました。
5月の連休の初めに3.2にバージョンアップをして、問題ないなあと思っていたのはつかの間。某所にトラックバックしてこの問題がわかったんだったり。トラックバックあんまりしないからなあ。
以下、修正方法なので知りたい人だけ。
この問題は、globalfunctions.phpファイルのcreateItemLinkファンクション
function createItemLink($itemid, $extra = '') {
global $CONF;
if ($CONF['URLMode'] == 'pathinfo')
// $link = $CONF['ItemURL'] . '/item/' . $itemid;
$link = $CONF['ItemURL'] . '/item_' . $itemid;
else
$link = $CONF['ItemURL'] . '?itemid=' . $itemid;
return addLinkParams($link, $extra);
を以下のように書き換えて対処しました。
function createItemLink($itemid, $extra = '') {
global $CONF;
if ($CONF['URLMode'] == 'pathinfo')
if (substr($CONF['ItemURL'],strlen($CONF['ItemURL'])-1,1)=='/')
// $link = $CONF['ItemURL'] . 'item/' . $itemid;
$link = $CONF['ItemURL'] . 'item_' . $itemid;
else
// $link = $CONF['ItemURL'] . '/item/' . $itemid;
$link = $CONF['ItemURL'] . '/item_' . $itemid;
//// $link = $CONF['ItemURL'] . '/item/' . $itemid;
// $link = $CONF['ItemURL'] . '/item_' . $itemid;
else
$link = $CONF['ItemURL'] . '?itemid=' . $itemid;
return addLinkParams($link, $extra);
これで現在は問題ない模様。
この処理はNucleus3.1のときには入っていたようですが、3.2からなくなってしまったようです。
MagicalURLを使っていたり、フォルダごとに複数ブログを運用していたりすることも関連してこういう問題が発生したような気もするんだけど、もう少し新しいNP_TrackBackプラグインを使用すべきかね。
同様の問題を悩んでいる人も居るかもなので、Nucleusの日本語フォーラムにも投稿しておきました。
コメント