Nucleus(JP)フォーラム Forum Index

Find on the forum:
OR  AND    » Advanced Search

未返信の記事を表示全てのフォーラムを既読にする

新しいトピックを投稿 トピックに返信
投稿者 メッセージ
toykyo



登録日: 2005.08.03
記事: 2

記事 日時: 2005.08.18 (木) 16:43   記事の件名: 複数ブログ&Fancy URL &サブフォルダでcategorylinkのリンク先がおかしくなる
引用付きで返信

はじめて書き込ませていただきます。

現在Nucleus3.21で複数ブログ&Fancy URL&サブフォルダ構成でサイトを構築中なのですが、
カテゴリーリンクがおかしくなる問題でつまづいております。

サイトの構成は
www.domain.com/ ※メインブログがあります
www.domain.com/blogname/ ※サブディレクトリに複数ブログがあります

問題の内容は
サブディレクトリにあるブログの「メインの目次ページ」でアイテム毎に設定されるcategorylinkのリンク先が
メインブログのスキンで表示され、カテゴリー一覧もメインブログのものが表示されてしまいます。
なお、アイテムに関してはサブディレクトリにあるブログの記事が表示されます。
(NP_RightURLを導入してもだめでした。)

リンクのURLは以下のようになっています。
www.domain.com/blogname/category/1


いろいろ私なりに調べたところ、yuさんのFancyURLと blog別ディレクトリ の両立やjunさんの複数Blog&サブカテゴリーでURLを短くする
を参考にさせていただき、categorylink以外の動作についてはFancy URLで正常に動作することができました。

それと同じ症状の解決策をhttp://japan.nucleuscms.org/bb/viewtopic.php?p=8235#8235で見つけたのですが、私の環境ではすべての内容がメインブログのもので表示されてしまいました。


そもそもwww.domain.com/blogname/category/1
というURLでは動作しないものなのでしょうか。

www.domain.com/blogname/category/1/blogid/2
という感じで必ずblogid/2のようにブログIDを末尾につけないと正常動作しないのでしょうか。

Fancy URLを解除した場合、categorylinkは
www.domain.com/blogname/?catid=1
という感じでアクセスできるのでFancy URLでもアクセスできるのではと勝手に解釈しております。

まだ中途半端にしかNuecleusを理解できていないので、ご教授いただけばと思っております。
よろしくお願いします。

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信
azusak



登録日: 2004.06.18
記事: 26

記事 日時: 2005.08.18 (木) 19:28   記事の件名: 少し面倒ですが…
引用付きで返信

同じ環境で先日サイトを作成しました。
どうしてもblogidを付けたくなかったので、Extraに入っているファイルの中身をちょっと改変して逃げました。
Code:
$catid= …
//一行追加
selectBlog(shorname);
selector();
として、ブログを選ばせています。

ただし、これだと全部ブログに置くファイルを変更していかなければいけなくなるので、次のファイルを作成します。
Code:
//blogdata.inc
$BlogTable = array();
$BlogTable["/profile"] = "profile";
$BlogTable["/diary"] = "blog";

//fancybase.inc
$mypath = dirname($_SERVER['SCRIPT_NAME']);
include_once('blogdata.inc');
selectBlog($BlogTable[$blogpath]);
unset($mypath);
fancybese.incはサブディレクトリにあるファイル全てでselector();の直前にincludeさせます。

ちなみに、fancyurls.config.phpもいじっています。
Code:
   $CONF['Self'] = 'http://' . $_SERVER['HTTP_HOST'] .dirname($_SERVER['SCRIPT_NAME']);

blogdata.incを自動生成できれば、かなり楽ができますが、その辺りはやりませんでした。
プラグインで割と簡単に追加できそうです。

もっと良い手があるとうれしいですね。

_________________
Risa @ RsStudio
Nucleus向けDreamweaver 機能拡張 & Contributeでブログを更新
http://blog.r-studio.jp/

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動
toykyo



登録日: 2005.08.03
記事: 2

記事 日時: 2005.08.18 (木) 20:20   記事の件名: うまくいきました!!
引用付きで返信

azusakさん、ありがとうございます!!
categorylinkがそのまま正常に動作するようになりました。

Code:
selectBlog('blogshortname');

だけでこんなに動作が変わってくるのですね。勉強になりました。


また、別ファイルのインクルードでブログ名を管理するのもうまくいきました!
いまのところ、ブログ数も少ないので下記のように一ファイルにまとめてみました。

Code:
<?php

$BlogTable = array();
$BlogTable["/blognameA"] = "blognameA";
$BlogTable["/blognameB"] = "blognameB";

$blogpath = dirname($_SERVER['SCRIPT_NAME']);
selectBlog($BlogTable[$blogpath]);
unset($blogpath);

?>

↑を「blogpath.inc」で保存して、トップのディレクトリに置き、
サブディレクトリにある「category」ファイルを下記のようにしました。

Code:
<?php

include('./fancyurls.config.php');
include('../config.php');

$data = explode("/",serverVar('PATH_INFO'));
$catid = intval($data[1]);
include_once('../blogpath.inc');
selector();

?>


「category」ファイル以外にもインクルードしておいた方が良いんですよね。
もっと手抜きしようと思ったら、config.phpに組み込むてのもありなんでしょうか・・・

プラグインという視点になると、使ったことがないのですが、
NP_CreateAccountはどのくらいまで自動化してるんでしょうかね。
ブログを追加するだけのために、使用するのもありかもしれないです。

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信
新しいトピックを投稿 トピックに返信
特定期間内の記事を表示:   

Page 1 of 1

All times are GMT + 9 Hours

移動先:  

新規投稿: 不可
返信投稿: 不可
記事編集: 不可
記事削除: 不可
投票参加: 不可
ファイル添付不可
ダウンロード:

Powered by phpBB © 2001, 2002 phpBB Group