Nucleus(JP)フォーラム

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

ログインしていません。

#51 2005-07-05 15:07:52

neohiro
メンバー
登録日: 2004-06-25
投稿: 150

Re: NP_CommentTree

ご教授宜しくお願い致します。
現在、Comment Tree 0.75 を使わせて頂いております。
こちらのフォーラムに掲載されていたように、バラメーターに

<%CommentTree(5, 4,<>1/16/27)%>

と除外ブログを設定したのですが、
ブログID1だけしか除外されません :?:
ID16と27のブログのコメントは、表示されてしまいます roll

また、パラメーターを

<%CommentTree(5, 4,<>27/16/1)%>

というように、除外させるブログIDの順番を変えてみたところ、
ID27のブログしか除外されていませんでした :!:
どうやら、除外設定時に先頭に書いたブログIDのコメントだけが除外されているみたいです。

環境は、

    3.2
    Magicalurl

です。

それから0.8をテストしたのですが、何も表示されませんでした。(バラメーターは上記と同じ) roll

ご指導のほどよろしくお願い致します。

オフライン

#52 2005-07-05 18:24:19

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

Re: NP_CommentTree

neohiro さんの発言:

それから0.8をテストしたのですが、何も表示されませんでした。(バラメーターは上記と同じ) roll

0.8の場合はトラックバック、コメントのみ表示のオプションが増えたため、除外オプションを記述するのは4番目になるかと思います。

<%CommentTree(5,4,,<>27/16/1)%>

のように書いたらどうなるでしょうか?


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

オフライン

#53 2005-07-05 19:31:56

nakahara21
メンバー
From: 尼崎
登録日: 2003-11-14
投稿: 1,298
ウェブサイト

Re: NP_CommentTree

えーと、0.8なら73行目、0.75なら67行目だと思いますが、

$filter = " cblog <>".str_replace("/"," or cblog<>",$filter);

のところ、

$filter = " cblog <>".str_replace("/"," AND cblog<>",$filter);

に変えてみたら解決したりしますか?


nakahara21
http://nakahara21.com/
(ただいま調整中です)

オフライン

#54 2005-07-06 01:10:48

neohiro
メンバー
登録日: 2004-06-25
投稿: 150

Re: NP_CommentTree

藤咲さん、nakahara21さん、お世話になります。
nakahara21さんのご教授どおり、0.75の67行目を

$filter = " cblog <>".str_replace("/"," AND cblog<>",$filter);

に変えてみたら、解決しました tongue
ありがとうございました lol

それから、0.8の方なんですが、

<%CommentTree(5,4,,<>27/16/1)%>

のように書いたのですが、何も表示されませんでした roll

どうしても0.8じゃなきゃいけないわけではないので、いいんですが・・・
何か、Nucleusの内部に不具合があるのかと思うと、後々心配です。(バージョンアップの時とか) sad

藤咲さん、nakahara21さん、ご多忙の中本当にありがとうございました。

オフライン

#55 2005-07-06 08:32:13

nakahara21
メンバー
From: 尼崎
登録日: 2003-11-14
投稿: 1,298
ウェブサイト

Re: NP_CommentTree

neohiro さんの発言:

藤咲さん、nakahara21さん、お世話になります。
nakahara21さんのご教授どおり、0.75の67行目を

$filter = " cblog <>".str_replace("/"," AND cblog<>",$filter);

に変えてみたら、解決しました tongue
ありがとうございました lol

orとANDを間違えるなんて、恥ずかしすぎます :cry:
質問を読んだ直後にフィルタリングを実装したの誰よ?と思ったら自分だったので慌てて見直したのですが :oops:

neohiro さんの発言:

それから、0.8の方なんですが、

<%CommentTree(5,4,,<>27/16/1)%>

のように書いたのですが、何も表示されませんでした roll

0.75から0.8にvupするときは、
一度プラグインをアンインストールしてから再インストールする必要があります。(プラグインファイルは0.8を上書きアップロードした後にやっても大丈夫)

それと、たしかに

<%CommentTree(5,4,,<>27/16/1)%>

と書いても何も表示されないですねぇ。
コメントもトラックバックも両方混在で新着順表示なら、とりあえず

<%CommentTree(5, 4,both,<>2/4)%>

と書けば表示されますよ。


nakahara21
http://nakahara21.com/
(ただいま調整中です)

オフライン

#56 2005-07-06 08:38:57

nakahara21
メンバー
From: 尼崎
登録日: 2003-11-14
投稿: 1,298
ウェブサイト

Re: NP_CommentTree

そっか、

<%CommentTree(5,4,,<>27/16/1)%>

で何も表示されないのは、function doSkinVarの最初に

if($mode == '')$mode = 'both';

がないからですね。
もし今後vupされる方がいたら、組み込みお願いします>誰か


nakahara21
http://nakahara21.com/
(ただいま調整中です)

オフライン

#57 2005-07-06 11:59:31

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

Re: NP_CommentTree

nakahara21 さんの発言:

もし今後vupされる方がいたら、組み込みお願いします>誰か

ダウンロード数から言ってもニーズの高いものだと思うので、言われていた修正を取り込んで見ました。
テストする環境がないとこなので言われていたところだけ入れたものですが…。

:arrow: 最新版(v1.0)はこちら


Attachments:
zip NP_CommentTree_v0.82.zip, Size: 2.71 KiB, Downloads: 1,791

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

オフライン

#58 2005-07-20 18:25:24

aonagi
ゲストユーザー

Re: NP_CommentTree

以下、エラーメッセージです。
ダウンロードさせていただいたのはv05です。
---
Warning: ksort() expects parameter 1 to be array, null given in (アドレス省略)on line 92
Warning: array_unique(): The argument should be an array in (アドレス省略) on line 93
Warning: krsort() expects parameter 1 to be array, boolean given in  (アドレス省略)on line 94
Warning: array_values(): The argument should be an array in (アドレス省略)on line 95
---
解決策はありますでしょうか。

#59 2005-07-20 18:33:10

aonagi
ゲストユーザー

Re: NP_CommentTree

最新バージョンが出ていたのに気付かず、お騒がせしました。
解決しましたのでご報告します。

#60 2005-08-11 20:09:59

niku
メンバー
登録日: 2005-02-25
投稿: 20
ウェブサイト

Re: NP_CommentTree

プラグイン管理のNP Comment Treeのリンク先が
http://felis.jp/bb/viewtopic.php?t=127になっていて、404です。

特に問題ないのかもしれませんが、気づいたので報告まで。

オフライン

#61 2006-03-07 22:58:14

Clear
ゲストユーザー

Re: NP_CommentTree

コメントにHTMLタグが含まれている状態でもそのまま吐き出してしまうようです。
最近コメントスパムが多く、この本文には最初にaタグから書き出すものが多かったので困っていました。

その対処法としてなのですが、

$item_element = htmlspecialchars($item_element);

この一文を2カ所に入れるだけで大丈夫でしょうか?

一応自分のところでは大丈夫だったのですが、あまり自信はないのでご報告のみさせていただきました。
[/code]

#62 2006-03-07 23:32:25

nakahara21
メンバー
From: 尼崎
登録日: 2003-11-14
投稿: 1,298
ウェブサイト

Re: NP_CommentTree

私も数ヶ月前に同じ目にあって、ちょっと手を加えた物があるのでupしておきます。
htmlspecialcharsだとタグが見えちゃって殺風景なのでstrip_tagsを使いました。

1)コメント本文を任意の文字数で切り詰める前にタグを除去するように変更
2)アイテムページへのurl生成を標準のcreateItemLinkに戻す(urlカスタマイズプラグインと併用することを考えて。)
3)プラグインの参照urlをここに変更。

バージョンアップされる方は、ファイルの上書きのみで大丈夫だと思います。
アイテムurlに変化がないかどうか、よく観察してください。
もし、アイテムurlに変化を見つけた方で、元の動作に戻したい方は、122行目のコメントアウトをはずして、123行目の方をコメントアウトしてください。


Attachments:
zip NP_CommentTree09.zip, Size: 2.64 KiB, Downloads: 1,022

nakahara21
http://nakahara21.com/
(ただいま調整中です)

オフライン

#63 2006-04-19 10:46:25

nakahara21
メンバー
From: 尼崎
登録日: 2003-11-14
投稿: 1,298
ウェブサイト

Re: NP_CommentTree

NP_LatestWritebacksと同じように、ブロック機能のあるトラックバックプラグインを使っている場合はブロック中のトラックバックをリストに含めない機能を付加しました。

バージョン1.0です。


Attachments:
zip NP_CommentTree10.zip, Size: 2.8 KiB, Downloads: 1,392

nakahara21
http://nakahara21.com/
(ただいま調整中です)

オフライン

#64 2006-05-13 14:21:33

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

Re: NP_CommentTree

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

 


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

オフライン

#65 2006-05-15 11:19:15

nakahara21
メンバー
From: 尼崎
登録日: 2003-11-14
投稿: 1,298
ウェブサイト

Re: NP_CommentTree

blog設定urlでサブディレクトリを指定している場合に、サブディレクトリ付きのurlを生成しないバグは確認しました。

しかしながら、末尾の.htmlはきちんと自動でつくようなのですが。
*NP_MagicalURLでMagical化。
*fancyurls.config.phpはconfig.phpでinclude
*NP_CommentTreeは1.0オリジナルのままcreateItemLinkを使っている
という環境です。

.htmlの付加について、テスト環境があるようでしたらもう一度上記条件でトライしてみてください。

肝心のblogurl反映はちょっと考えてみます。すいません。


nakahara21
http://nakahara21.com/
(ただいま調整中です)

オフライン

#66 2006-05-15 11:45:26

nakahara21
メンバー
From: 尼崎
登録日: 2003-11-14
投稿: 1,298
ウェブサイト

Re: NP_CommentTree

blogurlを正しく反映しないのは、NP_MagicalURLのせいのような気がしてきました....。
もう少し考えてみますが。


nakahara21
http://nakahara21.com/
(ただいま調整中です)

オフライン

#67 2006-05-15 13:38:37

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

Re: NP_CommentTree

nakahara21 さんの発言:

blogurlを正しく反映しないのは、NP_MagicalURLのせいのような気がしてきました....。
もう少し考えてみますが。

とりあえず手元の環境は0.9なのですが、問題なく動いています。
0.9→1.0で何かURL関係処理に修正がありましたっけ?


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

オフライン

#68 2006-05-15 15:10:48

nakahara21
メンバー
From: 尼崎
登録日: 2003-11-14
投稿: 1,298
ウェブサイト

Re: NP_CommentTree

0.9の時に変更しています。
藤咲さんは純正createItemLink採用のままですか?<0.9


nakahara21
http://nakahara21.com/
(ただいま調整中です)

オフライン

#69 2006-05-15 15:15:59

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

Re: NP_CommentTree

nakahara21 さんの発言:

0.9の時に変更しています。
藤咲さんは純正createItemLink採用のままですか?<0.9

NP_Magicalでは色々試したのではっきりは覚えてないんですが、以下の記事で
http://fjsk.s39.xrea.com/item_1265.html

まずNP_CommentTreeは最新版へ変更する事で解決。

とか言って0.9へリンクを貼っているので、たぶん0.9にしただけだと思うのです。


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

オフライン

#70 2006-05-15 23:23:21

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

Re: NP_CommentTree

返信ありがとうございます。ちょっと状況が正確に伝えられなかったようなので、細かく書きますね。

当方、フォルダ分けを行って複数のブログを運用しており、MagicalURLを使用していました。

http://www.myhome.com/  ←top 
http://www.myhome.com/blog1/ ←blog1 
http://www.myhome.com/blog2/ ←blog2 

このような構成にしておりまして、Nucleus3.21の環境では、NP_CommentTree 0.75を
<!-- l --><a class="postlink-local" href="http://japan.nucleuscms.org/bb/viewtopic.php?t=485">viewtopic.php?t=485</a><!-- l -->
の変更を行って、正常に動作させていました。

このたび、Nucleus3.22の導入にあわせ、NP_MagicalURLを導入したのにあわせ、NP_CommentTree 1.00を導入しました。
topには

<%CommentTree(5,4)%> 

blog1,blog2が

<%CommentTree(5,4,,current)%> 

と表記しています。このとき、コメントのついているitemがblog1のitem_001.htmlとすると、
topページの表示が

http://www.myhome.com/item_001.html 

となってしまい、フォルダが含まれません。
blog1では、

http://www.myhome.com/blog1/item_001.html 

のように、きちんとフォルダが含まれたURLになります。

0.75と同様の変更を行うと正常に表示されるのかと思い、
131行目の

$itemlink = createItemLink($item['itemid'], '');

をコメントアウトして、前の行の

$itemlink = $this->createGlobalItemLink($item['itemid'], '');

を復活。
プラグイン最後の方のcreateGlobarItemLink関数の

$link = $CONF['ItemURL'] . '/item/' . $itemid;

をコメントアウトして、

$blogid = getBlogIDFromItemID($itemid);
$b_tmp =& $manager->getBlog($blogid);
$blogurl = $b_tmp->getURL() ;
$link = $blogurl . 'item_' . $itemid;

に変更したところ、topページの表示部分は

http://www.myhome.com/blog1/item_001

となり、サブカテゴリは含まれますが「.html」の拡張子がつかない状態になりました。
(blog1での表示も同様)

現在は、上記変更の最終行を

$link = $blogurl . 'item_' . $itemid . '.html';

とし、createGlobarItemLink関数の最終行、

return addLinkParams($link, $extra);

return $link;

に変更して、正しいURLを実現しています。
改造してしまったので今は運用上問題ないのですが、オリジナルのままcreateItemLinkを使った方法はできないのかと思い、質問しました。

現状わたしの環境も、

*NP_MagicalURLでMagical化。
*fancyurls.config.phpはconfig.phpでinclude

としています。ただ、createItemLinkにcatidのつかないバグは修正していません。

addLinkParamsをcallするときに「.html」がつかないのは、NP_MagicalURLを使用しているため、3.21で行っていたコア改造を行っていないためだと思っていますが、違いますかね?


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

オフライン

#71 2006-05-16 09:24:00

nakahara21
メンバー
From: 尼崎
登録日: 2003-11-14
投稿: 1,298
ウェブサイト

Re: NP_CommentTree

えと。サクラキャンドルさん、詳しい説明、お手数かけてすいません。
私は理解しておりました、つか、不具合の現象の再現できています。

>藤咲さん

サブディレクトリ運用のblogを表示しているページ中で、カレントblog記事へのコメントリンクは正常のはずです。
CommentTreeはallブログモード+表示中のblog以外のサブディレクトリ運用のblogに属する記事へのコメントへのリンクが正常ではないはずなんですが。
もっと具体的に言うと、もろもろTOPのCommentTreeをallブログモードにした時、本の記事へのコメントリンクはサブディレクトリぬけちゃう現象です。
もしお時間あれば一度確認お願いします。

>サクラキャンドルさん

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

addLinkParamsをcallするときに「.html」がつかないのは、NP_MagicalURLを使用しているため、3.21で行っていたコア改造を行っていないためだと思っていますが、違いますかね?

あえて言うなら

    function createGlobalItemLink($itemid, $extra = '') {
        global $CONF, $manager;

        $itemblog =& $manager->getBlog(getBlogIDFromItemID($itemid));
        $blogurl = $itemblog->getURL();
        if (!$blogurl) {
            $b =& $manager->getBlog($CONF['DefaultBlog']);
            if (!($blogurl = $b->getURL())) {
                $blogurl = $CONF['IndexURL'];
                if ($CONF['URLMode'] != 'pathinfo'){
                    if ($data['type'] == 'pageparser') {
                        $blogurl .= 'index.php';
                    } else {
                        $blogurl = $CONF['Self'];
                    }
                }
            }
        }
        if ($CONF['URLMode'] == 'pathinfo'){
            if(substr($blogurl, -1) == '/')  $blogurl = substr($blogurl,0,-1);
        }
            

        $CONF['BlogURL'] = $blogurl;
        $CONF['ItemURL'] = $blogurl;
        $CONF['CategoryURL'] = $blogurl;
        $CONF['ArchiveURL'] = $blogurl;
        $CONF['ArchiveListURL'] = $blogurl;

        return createLink('item', array('itemid' => $itemid, 'extra' => $extra));
    }

が正解です。
returnするのはcreateLinkです。

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


nakahara21
http://nakahara21.com/
(ただいま調整中です)

オフライン

#72 2006-11-09 10:16:17

nuc-shozo
メンバー
登録日: 2006-08-01
投稿: 9

Re: NP_CommentTree

現在さくらサーバーで運用しているNucleusをXREAサーバーでもプラグインなど同じ状況を作りたいと考えており、CommentTreeをインストールしたところエラーが出てしまいましたのでご教授いただきたいのですが

mySQL error with query SHOW FIELDS from nucleus_plugin_tb: Table 'DB名.nucleus_plugin_tb' doesn't exist

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /ここら辺アドレス/NP_CommentTree.php on line 219

と表示されてしまいます。
これは、管理画面でも表示されますし、ブログ側でも表示されてしまいます。
が、一応コメントはツリー表示されています。

ブログサイドバーのインクルードファイルには
<%CommentTree(5,4,comment)%>
と記述してあります。

よろしくお願いします。

オフライン

#73 2006-11-10 20:13:35

nuc-shozo
メンバー
登録日: 2006-08-01
投稿: 9

Re: NP_CommentTree

返信というか、自己解決したのですが、つたない英語力とGoogleの検索力の賜物です。

    まず、「nucleus_plugin_tb」というテーブルがDB上にないと判断。
    phpMyAdminから勝手に作成
    テーブル作成されてエラーが消えた

これでほんとにいいんでしょうか… :shock:

オフライン

#74 2006-11-10 21:27:53

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

Re: NP_CommentTree

NP_Trackbackがインストールされていないからnucleus_plugin_tbっていうテーブルがデータベースに存在しない、ということです。

まず、「nucleus_plugin_tb」というテーブルがDB上にないと判断。

ご名答!!:D

NP_Trackbackを導入する予定がないのであれば、そのままでも無駄なアクセスが発生しているという以外問題ないと思います。(ってそれは避けたいですよね)

v1.0の216行目付近

	function checkTBVersion(){
		$res = sql_query("SHOW FIELDS from ".sql_table('plugin_tb') );
		$fieldnames = array();
		while ($co = mysql_fetch_assoc($res)) {
			$fieldnames[] = $co['Field'];
		}
		if(in_array('block',$fieldnames)) return TRUE;
		return FALSE;
	}

以下のように修正。

	function checkTBVersion(){
		global  $manager;
		if($manager->pluginInstalled('NP_Trackback')){
			$res = sql_query("SHOW FIELDS from ".sql_table('plugin_tb') );
			$fieldnames = array();
			while ($co = mysql_fetch_assoc($res)) {
				$fieldnames[] = $co['Field'];
			}
			if(in_array('block',$fieldnames)) return TRUE;
				return FALSE;
			}
		} else {
			return FALSE;
		}
	}

これでnucleus_plugin_tbを削除してみてうまく行くかな。

今触れる環境にないので、上のコード検証していません。詳しい方、補完よろしくお願いします。

オフライン

#75 2006-11-13 20:27:20

nuc-shozo
メンバー
登録日: 2006-08-01
投稿: 9

Re: NP_CommentTree

お返事ありがとうございます。
上記コードをコピペしたらエラーがでたのですが、

if(in_array('block',$fieldnames)) return TRUE;
            return FALSE;
         } 

の "}"を削除したらエラー無く、DB上のnucleus_plugin_tbを削除しても問題なく表示されるようになりました。

NP_Trackbackがインストールされていないっていう初歩的?ミスで申し訳なかったです。
後々インストールするつもりなので、とりあえずはこのままmasさんの改造どおりで行きたいと思います。

ありがとうございます。

オフライン

Board footer