Nucleus(JP)フォーラム

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

ログインしていません。

#1 2006-06-21 12:09:01

200bpm
メンバー
登録日: 2006-06-20
投稿: 50

Re: リンク集プラグインについて

たびたびすいません。
誰でも登録できるリンク集を作成していましてプラグインを調べていたところ
以下、3つのプラグインがあることが分かりました。

----------------------------------------------------------------------------------------------------
◆1.NP_LinksByBlog(0.2)
     http://japan.nucleuscms.org/bb/viewtopic.php?t=12

◆2.NP_LinksByBlog(改造版0.6)
     http://japan.nucleuscms.org/bb/viewtopic.php?p=745#745

◆3.NP_Linklist(0.52)
     http://japan.nucleuscms.org/bb/viewtopic.php?t=129
----------------------------------------------------------------------------------------------------

◆2と◆3については、プラグインの仕様上、Super-admin権限を持つものしか
リンクの追加・編集ができないことが分かりました。

バージョンとしては、下位バージョンですが、◆1でSuper-admin権限を持たなくても
リンクの追加・編集ができるとのことなので、プラグインのインストールを行いましたが
下記のようなエラーが出ました。

エラー内容
Plugin could not be loaded, or does not support certain features that are required for it to run
on your Nucleus installation (you might want to check the actionlog for more info)

エラー名に「ログを見ろ」というようなことが書いてあったので、インストール時の管理操作履歴を
チェックしてみました。

インストールエラー直後のログ
2006-06-21 11:57:44 [admin] Plugin NP_LinksByBlog was not loaded (does not support SqlTablePrefix)

現在インストールしているNUCLEUSのバージョン:3.23

これは、バージョンに対応してないということでしょうか・・・

以下、解決方法について、どうしたらよろしいでしょうか・・
一応いくつか考えたのですが、どれが一番シンプルかつ簡単にできる方法でしょうか。
(Super-admin権限ではなく、普通の管理者にリンクを追加させる方法としてです。)

・NP_LinksByBlog(0.2)を現在のNucleus(v3.23)に対応させる。
・NP_Linklist(0.52)または、NP_LinksByBlog(改造版0.6)を改造をする。

もしお手数でなければ、アドバイスいただけないでしょうか。

オフライン

#2 2006-06-21 14:05:25

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

Re: リンク集プラグインについて

一番簡単なのは、

200bpm さんの発言:

NP_LinksByBlog(0.2)を現在のNucleus(v3.23)に対応させる。

これだと思います。

NP_LinksByBlog(0.2)をテキストエディタで開き、function getDescription(){}の下あたりにでも以下のコードを追加すれば使えるようになるはずです。

function supportsFeature ($what)
	{
		switch ($what)
		{
			case 'SqlTablePrefix':
				return 1;
			default:
				return 0;
		}
	}

例によって動作確認してませんm(_ _)m

僕としては、LinkListを使えるようにしたほうが機能面で良いような気もしますが、これで十分かな。

オフライン

#3 2006-06-21 14:35:27

cha_cya
メンバー
From: 東京
登録日: 2004-08-25
投稿: 745

Re: リンク集プラグインについて

masさんの改造で動いたら多分そっちでいいと思うんですが、一応書き換えてみました。
多分動くと思いますが自分のところではプリフィックス使っていないので・・。

[追記]ああ、、LinksByBlog0.6があるのか・・
しかもそっちではPrefix解決してる lol
これ見て書き直せばよかった!

添付ファイルは0.2を書き換え(Prefix周り)たものです。
あとgetAuthorのURIが無効だったから取り除いたかも。[/追記]

17:27 ファイルを差し替えました
インストール→1件追加→1件削除まで実験済み(非Prefix環境←意味なし)
6/22 10:54 再度ファイルを差し替えました
アンインストールファンクションだけ書き換え、他は変えていません。チェック不十分


Attachments:
zip NP_LinksByBlog.zip, Size: 1.78 KiB, Downloads: 336

オフライン

#4 2006-06-21 16:21:53

200bpm
メンバー
登録日: 2006-06-20
投稿: 50

Re: リンク集プラグインについて

Cha_cyaさん、masさん、ありがとうございます!

masさん、動きました!!!
あれだけで動くようになるなんて驚きです! :shock:

Cha_cyaさん、いつもありがとうございます。
ご報告させていただきます。

早速ダウンロードさせていただき、インストール~表示までを行ってみました。
sidebar.incに<%LinksByBlog%>と記述したのですが、下記キャプチャ画像のように
エラーが発生してしまいました。
http://sizuoka.fc2web.com/nucleus/error01.gif

今のところ、masさんのやり方でインストールしてプラグインを実行できました。
しかし、プラグイン自体がうまく機能がしない・・・。

NP_LinksByBlog(0.2)の特徴として、Super-admin権限でなくても、管理権限があれば
リンクの追加・編集ができるとのことなので、追加してあるメンバーでブログを表示
したところ、どうも、フォームが表示されません。。。

masさんに教えていただいたプログラムの追加文章が影響してしまったのでしょうか。(T_T)

オフライン

#5 2006-06-21 17:23:00

cha_cya
メンバー
From: 東京
登録日: 2004-08-25
投稿: 745

Re: リンク集プラグインについて

あ、いや、これは失敗して当たり前でした。
インストールで(example)nucleus_plug_linksbyblogテーブルが作られない・・。
ろくにチェックもできてなかった :oops:
すいません、ファイルは差し替えます。

出ている問題は「追加文章が影響」ということでは無いような気がしますが、
masさんの追加文章だけだと(将来的に?今も?)プレフィックスで分けたいときに、データの格納先がnucleus_plug_linksbyblogで決め打ちになっているので、問題がでるかも知れないかと思ったり(でもプリフィックス周りはよくわかってないからなー・・問題ないのかも・・)
Nucleusを複数インストールしなければ問題ないと思うんですけどね。

私のほうは
プレフィックスがaaaのNucleusにプラグインをインストールした場合、
データ保存先→aaa_nucleus_plug_linksbyblog、
プレフィックスがbbbのNucleusにプラグインをインストールした場合、
データ保存先→bbb_nucleus_plug_linksbyblog、
にしようとして失敗していた格好です。

オフライン

#6 2006-06-21 18:12:48

200bpm
メンバー
登録日: 2006-06-20
投稿: 50

Re: リンク集プラグインについて

Cha_cyaさん、修正ありがとうございます!
先ほどダウンロード~インストールを行ってみました。

先ほど似たようなエラーが起きました。。

エラー名:
mySQL error with query SELECT id,title,url,description FROM fuutes_nucleus_plug_linksbyblog
WHERE blogid = 5 ORDER BY title: Unknown column 'id' in 'field list'

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource  in /home/*****/*****/******/subdomains/*****/httpdocs/blog/nucleus/plugins/NP_LinksByBlog.php on line 39

ちなみに、MySQLのバージョンは「3.23.58 」と書いてありました。

ブログの運用形式ですが、一つのデータベースを使用して複数のブログをインストールしています。
なので、プレフィックスというものを使用しています。。

オフライン

#7 2006-06-21 22:18:30

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

Re: リンク集プラグインについて

  function unInstall () { sql_query ("DROP TABLE IF EXISTS ".sql_table('plugin_rectime')); }

ここの部分を、

  function unInstall () { sql_query ("DROP TABLE IF EXISTS ".sql_table('plug_linksbyblog')); }

に書き換えて、ファイルをアップロードした後、LinksbyBlogプラグイン自体を削除・再組込み(再インストール)

どうでしょうか?

#ようするに、一度DBを初期化して欲しいと。
#もしphpMyAdminが使えるようであれば、他に、「ほにゃらら_plug_linksbyblog」っていうのがあるかどうかの確認・あったら削除

これでどうでしょうか。

#すみません、まだ自分でやってないのでこれで駄目ならやってみます。

#やっぱり、個人的には、LinkListの

function canEdit() {
	global $member, $manager;
	if (!$member->isLoggedIn()) return 0;
	return $member->isAdmin();
}

ここを、blogAdminRights()使って書き換えるのが良さそうな感じ。
しかし知識が追いつきませんでしたorz  自分、忘れすぎだろ、みたいな…無念。

オフライン

#8 2006-06-22 08:46:14

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

Re: リンク集プラグインについて

mas さんの発言:

#やっぱり、個人的には、LinkListの

function canEdit() {
	global $member, $manager;
	if (!$member->isLoggedIn()) return 0;
	return $member->isAdmin();
}

ここを、blogAdminRights()使って書き換えるのが良さそうな感じ。

簡単に書き換えるなら、少々乱暴ですが、ログインしているユーザー全てが編集可能になる方法は、

function canEdit() {
	global $member, $manager;
	return $member->isLoggedIn();
}

です。
ログインユーザーのすべてがリンク集編集者となる構成ならこれでOKかと。

blog別の権限とかまで考え始めたら大改造になります。
あと、簡単に改造できる条件分岐は、
☆1つ以上のblogのチームに参加しているユーザーだけ編集可能
☆管理エリアにログイン可能なユーザーのみ編集可能
かな?


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

オフライン

#9 2006-06-22 10:50:53

cha_cya
メンバー
From: 東京
登録日: 2004-08-25
投稿: 745

Re: リンク集プラグインについて

'plugin_rectime'

あれ・・コピペ部分が残ってたみたい sad
ポカピスばっかりだなぁ・・

オフライン

#10 2006-06-22 11:05:23

cha_cya
メンバー
From: 東京
登録日: 2004-08-25
投稿: 745

Re: リンク集プラグインについて

あー。また全然関係ないこと書いてた・・
消しとこ :cry:

オフライン

#11 2006-06-23 13:38:04

200bpm
メンバー
登録日: 2006-06-20
投稿: 50

Re: リンク集プラグインについて

●masさん、ありがとうございます!
これで正常にインストール→表示まで行うことができました!!

しかし、上記で書いたと同じ事のように
NP_LinksByBlog(0.2)の特徴として、Super-admin権限でなくても、管理権限があれば
リンクの追加・編集ができるとのことなので、追加してあるメンバーでブログを表示
したところ、どうも、フォームが表示されない状態です。。。  うーん‥(--;

●nakahara21さん
お返事ありがとうございます。
NP_Linklistのコードを参照通り書き換えてみました。
そしたら成功です!!!! big_smile

-以下は欲なので、読み流していただく程度でいいです。
管理エリアにログイン可能なユーザーのみ、編集が可能でなおかつ
個々のブログで、個々のリンク管理をできるようになったら、素晴らしいと思います。

●Cha_cyaさん
なんかいろいろお手数をおかけしてしまい、申し訳ございません。
いつも、助言を頂いて本当に助かっています。(T_T)
ありがとうございました!!

オフライン

Board footer