Nucleus(JP)フォーラム

NucleusCMS日本語版ユーザーのためのサポートフォーラムです。疑問が生じたらまずは記事検索をご利用ください。

ログインしていません。

#76 2006-11-27 12:29:24

infoinfo
メンバー
From: 愛知
登録日: 2006-11-12
投稿: 4

Re: NP_CommentTree

機能上では問題ないのですが、気になったので・・・
デフォルトのままですと、

<ul class="commenttree">
<li>アイテムタイトル<!--ここに</li></ul>が書き出されない-->
<ul class="commenttree">
<li>コメント</li>
</ul>
</li><!--</li></ul>が逆に書き出されている-->

と正しくマークアップされませんでした。

回避策として、
1.管理画面のオプション設定
List., List(close)., List Item., List Item(close).
を空白。

2.NP_CommentTree.php内を下記のように変更。
136行目

			echo $s_item."<a href=\"{$itemlink}\">$itemtitle</a>\n";

となっているところを、

			echo $s_item."<li><a href=\"{$itemlink}\">$itemtitle</a></li>\n";

と、リストタグを書き込む。同様に、162行目と190行目にも書き込む。
3.スキン側に

<ul>
<%CommentTree%>
</ul>

と記述することで、回避できました。

ただ、この場合ですと、タイトルとコメントがクラス分けできず同じ扱いになってしまうので、162、190行目には矢印とかを書き込むなどの対処しないといけないですが・・・。

とりあえず、報告まで。

オフライン

#77 2006-11-27 16:05:24

PUSHMAN
メンバー
登録日: 2004-08-15
投稿: 60
ウェブサイト

Re: NP_CommentTree

<li>はブロック要素を内包できるので問題ないと思います。

最初のリストはコメントが投稿された記事のリスト、内包されたリストはコメントのリスト、ということだと思います。

ただ、なんとなく<dl>の方がいいような気がしましたので、僕は<dl>に書き換えました。こんなかんじです。

<dl class="itemList">
<dt>アイテムタイトル1</dt>
<dd>
<ul class="commentList">
<li>コメント1</li>
<li>コメント2</li>
</ul>
</dd>
<dt>アイテムタイトル2</dt>
<dd>
<ul class="commentList">
<li>コメント1</li>
</ul>
</dd>



</dl>


マーカーのドラッグ&ドロップでGoogle Mapsの緯度経度を測定|Geocoder
http://geocoder.heartfield-web.com/

What's so bad about feeling good?
http://blog.heartfield-web.com/

オフライン

#78 2006-11-27 22:09:52

infoinfo
メンバー
From: 愛知
登録日: 2006-11-12
投稿: 4

Re: NP_CommentTree

<li>はブロック要素を内包できるので問題ないと思います。

ちょっと説明不足だったのかもしれません。
<ul>
<li>アイテムタイトル</li>
<li>コメント</li>
<li>アイテムタイトル</li>
<li>コメント</li>
</ul>
となってしまうので、CSSで「アイテムタイトルとコメントの間を少し空けたい」「コメントだけインデントをつける」などができない、ということだったのですが・・・。

<dl>に書き換えました。

確かに<dl>の方がいいように思います。どのようにして書き換えたんです?
それらしいところは、知識がないなりになんとなくわかるのですが、どこをどういじって良いのか・・・ 。あれこれ挑戦してみたものの、エラーばかり。:cry:

オフライン

#79 2006-11-27 23:14:21

PUSHMAN
メンバー
登録日: 2004-08-15
投稿: 60
ウェブサイト

Re: NP_CommentTree

長くなってしまいましたが、修正箇所をお伝えします。随分前にいじったので抜けがあるかも…多分大丈夫だと思いますが…

まず、127行目あたりの

echo $this->getOption(s_lists)."\n";

をコメントアウトします。

135行目あたり

$s_item = str_replace('%kind%', 'item', $this->getOption(s_items));
echo $s_item."<a href=\"{$itemlink}\">$itemtitle</a>\n";
echo $this->getOption(s_lists)."\n";

// echo $s_item."<a href=\"{$itemlink}\">$itemtitle</a>\n";
echo "<dt class=\"recentTitle\"><a href=\"{$itemlink}\">$itemtitle</a></dt>\n";
// echo $this->getOption(s_lists)."\n";
echo "<dd>".$this->getOption(s_lists)."\n";

とします。

209行目あたり

echo $this->getOption(e_lists)."\n";
echo $this->getOption(e_items)."\n";

// echo $this->getOption(e_lists)."\n";
echo $this->getOption(e_lists)."</dd>\n";
// echo $this->getOption(e_items)."\n";

とします。

213行目あたり

echo $this->getOption(e_lists);

をコメントアウトします。

多分コードの改造はこれだけです。

あとはスキンに記述するときに

<dl>
<%CommentTree(5,5)%>
</dl>

などとするだけです。

オプション設定はデフォルトとほぼ同じです。
「List.」は

<ul class="commenttree">
</ul>

「List Item.」は

<li>
</li>

としています。


マーカーのドラッグ&ドロップでGoogle Mapsの緯度経度を測定|Geocoder
http://geocoder.heartfield-web.com/

What's so bad about feeling good?
http://blog.heartfield-web.com/

オフライン

#80 2006-11-28 00:09:43

infoinfo
メンバー
From: 愛知
登録日: 2006-11-12
投稿: 4

Re: NP_CommentTree

さっそくやってみました。
問題なく、きちんとタグも閉じています。
PUSHMANさん、丁寧な説明ありがとうございました!!!

これで、今晩はぐっすり眠れそうです・・・感謝。

オフライン

#81 2007-02-27 00:23:45

cat
Administrator
登録日: 2003-11-14
投稿: 291

Re: NP_CommentTree

まみおさんがてこ入れしていたv1.0から一部変更させていただき、バージョンを1.1に上げました。

変更点
・プラグインオプションのtbflagは何の意味もなくなっていたので削除しました
・NP_Trackbackがインストールされていない時正常にインストールできない不具合を修正しました
・引数の記述方法をNP_LatestWritebacksに準拠させました。
・プラグインオプションで指定する変数を「%hoge%」から「<%hoge%>」としました(NP_LatestWritebacks風)

スキンの記述方法はwikiを見てください。
http://japan.nucleuscms.org/wiki/plugins:commenttree

★バージョンアップ方法
プラグインオプションが変更になったため、%date% , %name% , %comment% , %content% 等は、それぞれ<%date%> , <%name%> , <%comment%> , <%content%> に変更してください。
もしくは、現在お使いのNP_CommentTreeのプラグインファイルに

	function uninstall(){
		$this->deleteOption('tbflag');
		$this->deleteOption('s_lists');
		$this->deleteOption('e_lists');
		$this->deleteOption('s_items');
		$this->deleteOption('e_items');
		$this->deleteOption('item_format');
		$this->deleteOption('date_format');
		$this->deleteOption('comment_format');
		$this->deleteOption('title_len');
		$this->deleteOption('name_len');
		$this->deleteOption('flg_quote');
	}

を追加した上で、一度アンインストール。その後、v1.1をプラグインディレクトリに移動して再インストールしてください。(こちらがオススメ)

dl,dt,ddを使ったリストに簡単にできるようテンプレート化したほうがいいのかと存じますがそこまでできていません。お手数をおかけします。

[編集](2007-02-27 11:05)
藤咲さんご指摘箇所を修正。


Attachments:
zip NP_CommentTree-v1.1.zip, Size: 3.03 KiB, Downloads: 580

オフライン

#82 2007-02-27 10:02:11

藤咲
Administrator
From: 広島
登録日: 2003-11-17
投稿: 1,211
ウェブサイト

Re: NP_CommentTree

mas さんの発言:

もしくは、現在お使いのNP_LatestWritebacksのプラグインファイルに

NP_LatestWritebacks、です?


藤咲
備忘録とかもろもろ
http://fjsk.tk/

オフライン

#83 2007-02-27 11:05:25

cat
Administrator
登録日: 2003-11-14
投稿: 291

Re: NP_CommentTree

藤咲 さんの発言:
mas さんの発言:

もしくは、現在お使いのNP_LatestWritebacksのプラグインファイルに

NP_LatestWritebacks、です?

ツッコミ感謝です。完全に間違えてました。
正しくは、NP_CommentTreeです。

オフライン

#84 2007-03-01 15:39:07

cat
Administrator
登録日: 2003-11-14
投稿: 291

Re: NP_CommentTree

先日アップデートしたばかりで大変恐縮なのですが、もう一度てこ入れしてみました。
プラグインオプションをはじめ、大幅に変更をしてしまいましたので、アップデート方法に気をつけてください。
#NP_LatestWritebacksからコードを*勝手に*たくさんいただいております。感謝。
大きな変更はテンプレート利用に変えたことです。もし必要のない方はアップデートは必要ないと思います。
なお、セキュリティチェック未対応です。

また、v1.1と区別するために、v2.0とさせていただきます。

★変更点

    ・表示形式のテンプレート化
    ・オプション説明の日本語化
    ・時間と日付のフォーマットをNP_LatestWritebacks、NP_UpdateTime等と統一
    ・表示数のバグを修正

★バージョンアップ方法
現在お使いのNP_CommentTree (v1.1)のプラグインファイルに

	function uninstall(){
		$this->deleteOption('tbflag');
		$this->deleteOption('s_lists');
		$this->deleteOption('e_lists');
		$this->deleteOption('s_items');
		$this->deleteOption('e_items');
		$this->deleteOption('item_format');
		$this->deleteOption('date_format');
		$this->deleteOption('comment_format');
		$this->deleteOption('title_len');
		$this->deleteOption('name_len');
		$this->deleteOption('flg_quote');
	}

を追加した上で、一度アンインストール。その後、v2.0をプラグインディレクトリに移動して再インストールしてください。(v1.1からのアップデートはこの作業が必須です。)

プラグインオプションで使用できる変数は以下の通りです。
アイテムタイトルの本体:

  • <%title%> : アイテムのタイトル

  • <%itemlink%> : アイテムのURL

コメントリストの本体:

  • <%commentid%> : コメントID

  • <%commentator%> : コメントした人の名前

  • <%commentbody%> : コメント本文

  • <%itemid%> : コメントしたアイテムのID

  • <%itemlink%> : コメントしたアイテムのURL

  • <%memberid%> : 登録メンバーがログインしてコメントしたときのメンバーID

  • <%commentdate%> : コメントのあった日時(時間と日付のフォーマット(コメント用)で指定できます)

  • <%ctimest%> : コメント日時の UNIX TIMESTAMP

トラックバックの本体:

  • <%tbid%> : トラックバックそのもののID(トラックバックIDとは別)

  • <%entrytitle%> : トラックバックもとの記事のタイトル

  • <%itemlink%> : トラックバックを受けたアイテムのURL

  • <%blogname%> : トラックバックもとのブログ名

  • <%tbdate%> : トラックバックを受けた日時(時間と日付のフォーマット(トラックバック用)で指定できます)

  • <%ttimest%> : トラックバックを受けた日時の UNIX TIMESTAMP

★テンプレートの一例
PUSHUMANさんの言われていたdl,dt,ddを使ったリストの場合

<dl class="itemList">
<dt>アイテムタイトル1</dt>
<dd>
<ul class="commentList">
<li>コメント1</li>
<li>コメント2</li>
</ul>
</dd>
<dt>アイテムタイトル2</dt>
<dd>
<ul class="commentList">
<li>コメント1</li>
</ul>
</dd>



</dl>

・このプラグインのリスト開始
<dl class="itemlist">

・このプラグインのリスト終了
</dl>

・アイテムタイトルの本体
<dt><a href="<%itemlink%>"><%title%></a></dt>

・コメント/トラックバック リストの開始
<dd><ul class="commentlist">

・コメント/トラックバック リストの終了
</ul></dd>

・コメントリストの本体
・トラックバックリストの本体
標準のままでOK.<li>のクラスを削除してしまえば上記と同じになります。
従来の<%kind%>の補完もできていると思いますので、コメントだけをインデントさせる等のcssは簡単に付与できると思います。

★時間と日付のフォーマット
NP_LatestWritebacksにならって、%Y,%m,%d等、指定方法が変わっております。
ロケールがうまく行かない場合は、ja_JP.UTF-8 や ja_JP.EUC を試してみてください。(IISサーバはお手上げ)

オフライン

#85 2007-03-02 08:01:41

ゲストユーザー
ゲストユーザー

Re: NP_CommentTree

すいません、質問です。
待ちに待ったバージョンアップなので、バージョンアップしようと考えていますが、このバージョンアップ(1.1,2.0)では、過去のバージョンからある複数Blogで使用時のURLがおかしくなる問題の修正は含んでおりますでしょうか?

内容はこのスレッドの1ページ前くらいにあるのですが、再度引用します。

修正されているようならばアップデートしようと思ってますが、いかがでしょうか?

サクラキャンドル さんの発言:

これまでVer0.75を使用していたのですが、Nucleus 3.22+NP_MagicalURLを使用しはじめた関係から、1.0にアップデートしました。

すると、0.75の時に質問したのと同様な現象が発生してしまいました。
http://japan.nucleuscms.org/bb/viewtopic.php?t=485

このときはこちらで、createGlobalItemLinkを修正して対処したので、同様の変更で正しいURLを表示することは可能だとおもい、同様の修正を行って見ましたが、今回はMagicalURL用の変更をコアに行っていないので、addLinkParamsへパラメータを渡しても.htmlの拡張子がつかず、うまくない状態です。
現在は、addLinkParamsへパラメータを渡さず、最終行で.htmlの拡張子を$Link変数に追加してreturnさせて対処しています。

createItemLinkを使っている状態でもURLを正しく表示する方法は無いでしょうか?
createItemLinkへのパラメータに、itemIDだけでなく、そのアイテムのblogIDも渡すのではないかとは思うのですが。

また、0.75の時は、トラックバックの場合は、トラックバック相手のサイト名を[ ]で囲って表示していましたが、このバージョンで同様の表示を実現することは可能でしょうか?

#86 2007-03-02 08:41:14

cat
Administrator
登録日: 2003-11-14
投稿: 291

Re: NP_CommentTree

今回のアップデートではcreateItemLink、createGlobalItemLinkの問題はそのままです。

<!-- l --><a class="postlink-local" href="http://japan.nucleuscms.org/bb/viewtopic.php?p=12402#12402">viewtopic.php?p=12402#12402</a><!-- l -->
にてまみおさんが判断された

とりあえずは対策にはなります。
しかしながら、もう少し考えるべき点が色々あるので、配布はまだ控えます。すいません。

のままだと認識しています。

答えとしては、修正されていません(私は修正していません)、です。

...検証してみます。
#すみません、自信はありませんが :cry:

オフライン

#87 2007-03-02 09:54:40

shizuki
Administrator
From: 西播磨
登録日: 2006-03-23
投稿: 900
ウェブサイト

Re: NP_CommentTree

if ($manager->pluginInstalled('NP_Magical))  return createItemLink($itemid)

これ突っ込めばOK
CustomURLの時はプラグイン名書き換えで対応

っていうか、

URLをカスタマイズするプラグインを使用していますか?(はい/いいえ)
使用しているURL系プラグイン名(              )

と、オプション二つ用意して、これみて判断するってのはどうでしょう?

LatestWritebacksに組み込んでみよう

オフライン

#88 2007-03-04 15:51:24

サクラキャンドル
メンバー
登録日: 2004-08-25
投稿: 165
ウェブサイト

Re: NP_CommentTree

返信ありがとうございます。
とすると、使いたい場合には、同じような改造が必要ということですね。

かなり前のバージョンからずっとこの問題は変わってないので、他の機能に影響が出るとかなら、もう仕様と言っても良いのかもしれませんね。


農場主の日常(管理人blog)
http://nojomaster.com/

オフライン

#89 2007-04-05 16:49:28

cat
Administrator
登録日: 2003-11-14
投稿: 291

Re: NP_CommentTree

バグがあったので、v2.1にしました。

上書きインストールでOKです。

「<%commentbody%> と <%entrytitle%> の最大の長さ」を「Item title - name length」にしているとトラックバック表示の際にエラーが起こる可能性があります。

アップデートは、この機能をお使いの方のみ(デフォルトでは「Same as title length」となっています)で結構です。

yuさんへ
ここのロジック抜本的に見直しが必要そうです^^;;;
何か良い案ありますか?


Attachments:
zip NP_CommentTree21.zip, Size: 5.6 KiB, Downloads: 1,171

オフライン

#90 2007-04-10 14:37:56

yu
メンバー
From: 神奈川
登録日: 2003-11-15
投稿: 718
ウェブサイト

Re: NP_CommentTree

mas さんの発言:

yuさんへ
ここのロジック抜本的に見直しが必要そうです^^;;;
何か良い案ありますか?

ああ、すみません・・・僕が適当に加えた部分でのバグですね。
ややこしいのでいっそなくしちゃいます? :twisted:


Nucleusだとか
http://nucleus.datoka.jp/

オフライン

#91 2007-04-10 18:37:14

cat
Administrator
登録日: 2003-11-14
投稿: 291

Re: NP_CommentTree

yu さんの発言:

ああ、すみません・・・僕が適当に加えた部分でのバグですね。
ややこしいのでいっそなくしちゃいます? :twisted:

正確に言うと、テンプレート対応で僕が手直しした際のバグです(汗)
結構使われている方はいらっしゃるようなので、ちゃんとさせてリリースしたほうがいいかなと思っているのですが(なのでPMで十分なのをここで書きますが)、どうでしょうか、みなさん。というつもりでした :oops:

時間ができたら自分で見直ししようと思うのですけれども如何せん(以下略
我こそは、という方が入れば是非 big_smile

オフライン

#92 2007-09-07 16:05:21

tournavi
メンバー
登録日: 2007-09-07
投稿: 11

Re: NP_CommentTree

一般質問のところにも別の質問を書かせていただきましたが、
Nucleus CMS v3.24を使って旅行コミュニティサイトを運営している tournaviと申します。
はじめまして。

サイトは、大きく3つのblogを設置し、それぞれ複数のカテゴリに分けています。
そのうち2つはエリア別に分けています。国内なら、北海道から沖縄まであります。
サブカテゴリ化はしていません。fancy URLは有効にしています。
http://tournavi.jp/community/

Comment Treeを便利に使わせていただいておりますが、投稿数が増えるにつれ、表示されているアイテム
のタイトルとコメントがどのカテゴリに所属するものかがわかりにくくなってきましたので、なにかいい方法は
ないものかと考えております。

Comment Treeですと、すべてのエリア(カテゴリ)のコメントが表示されますよね。
例えば、↓これは北海道カテゴリですが、鹿児島や宮城など、他のエリア(カテゴリ)のコメントも表示されて
しまってます。
http://tournavi.jp/community/japan/category/2/blogid/2

これを、例えば、北海道だったら北海道のコメントのみ、沖縄だったら沖縄のコメントのみ絞り込んで表示させ
られればより一層便利になると思います。

タグの表示に Tags Extensionを使用しておりますが、このプラグインは「第2パラメータ:カテゴリ追従モード
」というのがあり、カテゴリごとに絞り込んで表示できます。

これと同様のことがComment Treeでもできればと思うのですが。

また、Comment Tree以外のコメント表示プラグインでカテゴリの絞り込みに対応しているものがあればお教え
いただきたいのです。

どうかお知恵を拝借ください。
よろしくお願いいたします。

オフライン

Board footer