風邪で声が出しづらいデス Tちゃんおめでとう! 瞳にまた出来た! 明日は神輿会総会です 最後の消防団
Nucleus の FancyURL化 | index | 4月突入?

March 30, 2005

Nucleus の FancyURL から MagicalURLへ

Nucleus の MagicalURL 大成功

昨日は なんとかURLをFancyURL にすることが出来ました。^^

という事で 調子に乗って、
今日は FancyURL から MagicalURL にチャレンジし、
なんとか無事に対応する事ができました?

とっても参考にさせていただきましたHP

感謝の心でイッパイです?(;o;



ちなみに

となります^^

とりあえず ルートのindex.phpを 別フォルダ[maji-test]にコピーし
【index.php】の中身を

// This file will generate and return the main page of the site
$CONF['Self'] = "http://blog.kimonoland.net";
include('config_f.php');
selector();
?>

としました。

続いてconfig.php を別フォルダ[maji-test]にコピーし
config_f.phpにリネームして保存します。
ソースの最後のほうを↓のように変更します。

// include libs
include($DIR_LIBS.'globalfunctions_f.php');
if (!extension_loaded('mbstring')) {
include($DIR_LIBS.'mb_emulator/mb-emulator.php');
}

そしてそして、
globalfunctions.php を別フォルダ[maji-test]にコピーし
【globalfunctions_f.php】にリネームして保存
210行目付近を

// decode path_info
if ($CONF['URLMode'] == 'pathinfo'){
$data_str = preg_replace("/.html$/",'', serverVar('PATH_INFO'));
$data = explode("_",$data_str);

for ($i=0;

870行目付近から

/**

Centralisation of the functions that generate links

/

function createItemLink($itemid, $extra = '') {
global $CONF;
if ($CONF['URLMode'] == 'pathinfo')
$link = $CONF['ItemURL'] . '/item_' . $itemid;
else
$link = $CONF['ItemURL'] . '?itemid=' . $itemid;
return addLinkParams($link, $extra);
}
function createMemberLink($memberid, $extra = '') {
global $CONF;
if ($CONF['URLMode'] == 'pathinfo')
$link = $CONF['MemberURL'] . '/member_' . $memberid;
else
$link = $CONF['MemberURL'] . '?memberid=' . $memberid;
return addLinkParams($link, $extra);
}
function createCategoryLink($catid, $extra = '') {
global $CONF;
if ($CONF['URLMode'] == 'pathinfo')
$link = $CONF['CategoryURL'] . '/catid_' . $catid;
else
$link = $CONF['CategoryURL'] . '?catid=' . $catid;
return addLinkParams($link, $extra);
}
function createArchiveListLink($blogid = '', $extra = '') {
global $CONF;
if (!$blogid)
$blogid = $CONF['DefaultBlog'];
if ($CONF['URLMode'] == 'pathinfo')
$link = $CONF['ArchiveListURL'] . '/archives_' . $blogid;
else
$link = $CONF['ArchiveListURL'] . '?archivelist=' . $blogid;
return addLinkParams($link, $extra);
}
function createArchiveLink($blogid, $archive, $extra = '') {
global $CONF;
if ($CONF['URLMode'] == 'pathinfo')
$link = $CONF['ArchiveURL'] . '/archive_'.$blogid.'_' . $archive;
else
$link = $CONF['ArchiveURL'] . '?blogid='.$blogid.'&archive=' . $archive;
return addLinkParams($link, $extra);
}
function createBlogLink($url, $params) {
return addLinkParams($url . '?', $params);
}
function createBlogidLink($blogid, $params = '') {
global $CONF;
if ($CONF['URLMode'] == 'pathinfo')
$link = $CONF['BlogURL'] . '/blog_' . $blogid;
else
$link = $CONF['BlogURL'] . '?blogid=' . $blogid;
return addLinkParams($link, $params);
}

function addLinkParams($link, $params) {
global $CONF;
if (is_array($params)) {
if ($CONF['URLMode'] == 'pathinfo') {
foreach ($params as $param => $value) {
$link .= '_' . $param . '_' . urlencode($value);
}
} else {
foreach ($params as $param => $value) {
$link .= '&' . $param . '=' . urlencode($value);
}
}
}
$link .= ".html";
if(strstr ($link, '//')){ $link = str_replace(".com//", ".com/", $link);} ※NP_TrackBack用
if(strstr ($link, '/')){ $link = str_replace("item/", "item_", $link);} ※NP_Latest Writebacks用

return $link;
}

【action.php】 を別フォルダ[maji-test]にコピーし
16行目付近を変更

$CONF = array();
include('config_f.php');

そして【.htaccess】も別フォルダ[maji-test]にコピー
備忘録とかもろもろさんの

RewriteRule ^catid_([0-9]+).html+ index.php?catid=$1

【.htaccess】の中身はこんな感じ

RewriteEngine On

RewriteRule ^catid_([0-9]+)_blogid_([0-9]+).html+ index.php?catid=$1&blogid=$2

RewriteRule ^archive_([0-9]+)_([0-9]+)-([0-9]+).html+ index.php?archive=$2-$3&blogid=$1

RewriteRule ^archive_([0-9]+)_([0-9]+)-([0-9]+)-([0-9]+).html+ index.php?archive=$2-$3-$4&blogid=$1

RewriteRule ^archive_([0-9]+)_([0-9]+)-([0-9]+)_catid_([0-9]+).html+ index.php?archive=$2-$3&blogid=$1&catid=$4

RewriteRule ^catid_([0-9]+)_blog_([0-9]+)_archive_([0-9]+)-([0-9]+)-([0-9]+).html+ index.php?archive=$3-$4-$5&blogid=$2&catid=$1

RewriteRule ^catid_([0-9]+)_blog_([0-9]+)_archive_([0-9]+)-([0-9]+).html+ index.php?archive=$3-$4&blogid=$2&catid=$1

RewriteRule ^catid_([0-9]+).html+ index.php?catid=$1

RewriteRule ^catid_([0-9]+)_subcatid_([0-9]+).html+ index.php?catid=$1&subcatid=$2

RewriteRule ^archives_([0-9]+).html+ index.php?archivelist=$1

RewriteRule ^archives_([0-9]+)_catid_([0-9]+).html+ index.php?archivelist=$1&catid=$2

RewriteRule ^catid_([0-9]+)_archives_([0-9]+).html+ index.php?archivelist=$2&catid=$1

RewriteRule ^member_([0-9]+)_catid_([0-9]+).html+ index.php?memberid=$1&catid=$2

RewriteRule ^member_([0-9]+).html+ index.php?memberid=$1

RewriteRule ^item_([0-9]+)_catid_([0-9]+).html+ index.php?itemid=$1&catid=$2

RewriteRule ^item_([0-9]+).html+ index.php?itemid=$1

RewriteRule ^item_([0-9]+)_subcatid_([0-9]+).html+ index.php?itemid=$1&subcatid=$2

RewriteRule ^blog_([0-9]+).html+ index.php?blogid=$1

そして 必要があれば
Nucleus(JP)フォーラム Forum

RewriteRule ^archivelist_([0-9]+).html+ f.php?archivelist=$1


から

RewriteRule ^archives_([0-9]+).html+ f.php?archivelist=$1


と archivelist から archivesへ 修正します。

そのあと、[maji-test]フォルダに作成した
【index.php】【config_f.php】【action.php】はルート、
【globalfunctions_f.php】を /nucleus/libs フォルダに入れて
正常に動けばOK?!ダメだったら 急いで 元のファイルを戻します。

Posted by hanya at 12:36 AM | from category: HP作成日記

Comments
No comments yet


Trackbacks