5: 2010-10-21 (木) 07:05:54 なーお |
現: - no date - |
- | * d3diary開発とコメント統合プチカスタマイズ [#ae385200] | |
| | | |
- | ** なーおって、誰? [#nf682460] | |
- | #include(./なーお,notitle) | |
- | | |
- | ** d3diary開発経過 [#j7679f01] | |
- | *** minidiaryからのフォーク経緯 [#o286e4bf] | |
- | - matoyan氏作の日記モジュール、[[minidiary:http://www.yamareco.com/weblog/xoops/]](2008年2月公開) | |
- | -- 特徴 | |
- | --- mixiライクな見た目とユーザーインターフェース | |
- | --- マルチユーザー。全員の日記の一覧/各人日記表示 | |
- | --- 画像のアップロード・サムネイル自動生成 | |
- | --- ブロック無しでカレンダーや新着日記、コメントリストをサイドメニュー表示可能。(右側/左側選択可) | |
- | --- XSNSモジュールと連携した閲覧権限。「友人まで公開」「友人の友人まで公開」 | |
- | --- 外部ブログ機能 | |
- | --- xoops2.0.16a-JPでも動作する | |
- | - 2008年8月 minidiaryの[[ハック(差分パック)を公開:http:///modules/plactice/index.php/home/hobby/xoops/minidiary_014a.htm]](なーお) | |
- | -- d3コメント統合 | |
- | -- イベント通知(AltsysのD3notificationを利用) | |
- | --- 「この人の日記へのコメントがあったら通知します」 機能って、あまり見かけなかった。 | |
- | -- 日記投稿者一覧ブロック | |
- | -- d3pipes用のジョイント | |
- | | |
- | *** d3diary公開とその後 [#a158b93f] | |
- | - 2009年6月 d3diary-ver0.02 初版公開 | |
- | -- D3化 | |
- | -- 言語ファイル整備 (japanese, ja-utf8, english) | |
- | --- minidiaryはテンプレートに日本語直書きだった。。 | |
- | -- 閲覧権限を、カテゴリ毎、日記投稿毎に設定可能 | |
- | -- 外部ブログ機能を、カテゴリに設定可能 | |
- | - 2010年4月 d3diary-ver0.06 | |
- | -- HTML投稿の可能化 | |
- | - 2010年5月 d3diary-ver0.08 | |
- | -- メンバー間共有カテゴリ | |
- | -- 更新PING送信 | |
- | -- [[MT形式からのインポートスクリプト:http:///modules/plactice/index.php/home/hobby/xoops/mt_d3diary.htm]]公開 | |
- | - 2010年7月 d3diary-ver0.10 (開発版) | |
- | -- メインページのCSSレイアウト化 | |
- | -- 投稿時の執筆日時指定 | |
- | - 2010年10月 d3diary-ver0.12 (開発版) | |
- | -- 共通関数群のobjectインスタンス化 | |
- | -- サイドメニューの個別ブロック化(従来のサイドブロックはデフォで使用可) | |
- | -- 閲覧権限に、グループ指定、ユーザー指定を追加 | |
- | -- Xoops_breadcrumbsの実装 | |
- | | |
- | ** 動作環境 [#v4343c03] | |
- | - PHP4.3.x以上、PHP5.1、5.2 | |
- | - MySQL-4.0.x以上(詳細は未調査) | |
- | - コア(実績あり、または検証済みのもの) | |
- | -- xoops2.0.16a-JP | |
- | -- JPeX | |
- | -- ImpressCMS | |
- | -- Xoops Cube Legacy 2.1、2.2 | |
- | - 依存モジュール | |
- | -- Altsys必須 (0.55以上) | |
- | -- protector推奨 (HTMLpurifier) | |
- | ** d3diary機能紹介(特徴を抜粋) [#sb244717] | |
- | 以下、現時点の最新ver0.12a2(開発版)の内容。 [[デモサイト:http://d3diary.naaon.com/]]を使用してご紹介します。 | |
- | | |
- | *** サイドメニュー(minidiary由来) [#p4c2cbb1] | |
- | -- ブロックを使用しなくても、各人メニュー・新着情報を表示可能 | |
- | -- 表示位置(左/右)、非表示を選択可 | |
- | | |
- | *** CSSレイアウト [#sd676bbb] | |
- | -- テーマの設定色などを極力損なわず、できるだけ継承してそのまま表示する | |
- | -- 日付表示に、BoxDateを採用 | |
- | | |
- | *** カテゴリー [#s43d5f8e] | |
- | -- 各人が自由に自分だけのカテゴリを作れる、マルチユーザーサイト向け | |
- | --- 但し1記事1カテゴリ | |
- | --- サブカテゴリは1階層のみ | |
- | --- カテゴリ操作は面倒 | |
- | -- 共有カテゴリーも作成可能(管理者)、一括絞込み表示可。 | |
- | -- ユーザーによる複数記事選択のカテゴリ移動 | |
- | | |
- | *** タグ [#w1a4924f] | |
- | -- でブクマ君のソースを参考にしたタグ | |
- | --- 自分のタグ/全タグ から選択・解除 | |
- | --- 自分のタグ/全タグ タググラウド切替え | |
- | -- カテゴリー AND タグ での複合絞り込み | |
- | | |
- | *** 外部ブログ [#r3d13d4d] | |
- | -- 外部のブログの最新RSSフィードを自分の日記として表示できる。 | |
- | -- カテゴリ1つにつき、1サイト設定可能。 | |
- | --- 同一ドメイン名のRSSを複数カテゴリに設定しても、動作しないので要注意。(MagpieRSSの仕様?) | |
- | | |
- | *** 閲覧権限 [#re0a4c1c] | |
- | -- 閲覧権限を、カテゴリ毎・日記投稿毎に設定可能 | |
- | -- 友人機能モジュールとの連携 「友人まで」「友人の友人まで」 | |
- | -- グループ指定、ユーザー指定 | |
- | --- ユーザー指定は、xpwikiのsuggestion機能を組込み | |
- | | |
- | *** その他 [#b9539159] | |
- | -- HTML投稿可 (HTMLpurifier除外設定あり) | |
- | -- コメント統合 | |
- | --- プラグインのcountは、リスト記事分の回数呼ばれるので使用せず、記事と一括してクエリ | |
- | --- 記事閲覧権限に完全連動 | |
- | --- 実行速度を上げるため、ループ内で呼ばずに済むように、WHERE句の長いSQL文1本に | |
- | #region(長いよん [b_side_comment.php実行時の例]){{ | |
- | SELECT p.post_id, p.subject, p.post_time, p.post_text, p.uid, p.guest_name, p.unique_path, | |
- | t.topic_external_link_id, u.uname, u.name, d.bid, d.cid, c.cname, c.openarea as openareacat | |
- | FROM xxx_forum_posts p | |
- | INNER JOIN xxx8_forum_topics t ON (t.topic_id=p.topic_id AND ! t.topic_invisible ) | |
- | INNER JOIN xxx_forum_forums f ON (f.forum_id=t.forum_id AND f.forum_id=10) | |
- | INNER JOIN xxx_diary3_diary d ON t.topic_external_link_id=d.bid | |
- | LEFT JOIN xxx_diary3_category c ON (d.uid=c.uid OR c.uid=0) AND d.cid=c.cid | |
- | LEFT JOIN xxx_users u ON p.uid=u.uid | |
- | LEFT JOIN xxx_diary3_config cfg ON d.uid=cfg.uid | |
- | WHERE ! t.topic_invisible AND | |
- | (d.uid='2' OR (d.openarea <>100 AND ( ( ( (d.openarea IN (0,1) ) AND | |
- | (cfg.openarea IN (0,1) OR cfg.openarea IS NULL) AND | |
- | (c.openarea IN (0,1) OR c.openarea IS NULL)) OR | |
- | ( (d.openarea='10' OR d.openarea='20') AND (d.vgids LIKE '%|2|%' OR d.vgids LIKE '%|4|%') ) OR | |
- | ( (c.openarea='10' OR c.openarea='20') AND (c.vgids LIKE '%|2|%' OR c.vgids LIKE '%|4|%') ) ) OR | |
- | (d.openarea='20' AND d.vpids LIKE '%|2|%') OR (c.openarea='20' AND c.vpids LIKE '%|2|%') ) ) ) | |
- | ORDER BY p.post_time DESC LIMIT 0,10 | |
- | }} | |
- | -- イベント通知 | |
- | --- 「この人の日記へのコメントがあったら通知します」 は、自身へのコメントのみ通知することにも使える | |
- | -- インポート | |
- | --- minidiary, d3diaryから | |
- | --- Movable Type形式テキストファイルから (別途:[[MT形式からのインポートスクリプト:http:///modules/plactice/index.php/home/hobby/xoops/mt_d3diary.htm]]) | |
- | | |
- | ** 今後の進路? [#h046f085] | |
- | - ブログモジュール代替として | |
- | -- 友人連携機能などは残し、ブログモジュールとしても使えるように | |
- | --- トラックバック 送信/受信 | |
- | - 企業ユース向けとして | |
- | -- 画像以外のファイルアップロード・添付 | |
- | --- 直打ちされても記事閲覧権限に連動させる | |
- | - 見切る機能 | |
- | -- マルチカテゴリは煩雑なので実装しない。 タグを上手に使って。 | |
- | | |
- | ** コメント統合のプチカスタマイズ [#lebfbca0] | |
- | *** d3コメント統合の、元記事閲覧権限連動ハック [#jad09d57] | |
- | -- コメント元のモジュールでユーザー毎やグループ毎の閲覧権限を制御する機能を使うとき、コメントのタイトルやコメント者がd3forum側で表示されてしまうため、ちょっと気持ちが悪いと思ったことがきっかけ。 本来は、これらも隠しておくべきものと考えて作りました。 | |
- | -- このハックには、ゲスト名がアサインされていなかったページへのゲスト名表示も可能になっています。 | |
- | -- 私は多くのサイトですぐに使えるように、このハックを常に利用していますが、それとは別にwyeさんが作って下さった、d3コメント統合の、元記事閲覧権限連動ハック Plugin版 もあります。 | |
- | | |
- | *** コメント統合でブロックから元記事へリンク [#x027a0b6] | |
- | -- フォーラムのブロックで、リンクの飛び先を コメント元記事ページに変更するためのハックです。 | |
- | -- d3diary同梱のコメント統合ブロック(posts,topics共)には既に仕込み済みですので、それを使えば本ハックは適用不要です。 但し、d3diaryのコメントフォーラム以外のフォーラムを混合表示した場合には、それら他のモジュールへのジャンプ先は、テンプレート編集で変更する必要があります。 | |
- | -- d3forum_comment_listposts_flat.html テンプレートの変更反映は、上記d3diary同梱ブロック使用時も必要です。 | |
- | | |
- | *** d3forum側で統合コメントのツリー全表示 [#u6b2e658] | |
- | -- コメント統合で付いたコメント。 質問内容が変わったりしてトピック分けしたりすると、d3forum側で「このトピックの投稿一覧へ」で閲覧してもトピック内の投稿しか表示されないため、同じ元記事に紐付いた他のトピックの投稿に気づかない。 これを何とかしたかった。 | |
- | -- その対策として、「このトピックの投稿一覧へ」を表示したときに、他のトピも含めてツリーを表示することにしました。 | |
- | --- smartyプラグイン「function.d3comment_tree.php」と、テンプレート編集で装備可能。 | |
- | | |
- | *** (未実施)今後何とかしたいこと [#eedff0a6] | |
- | -- Topics内投稿一覧のページ分割。 件数が50件くらいになると、重くて仕方がない。 | |
- | --- 作者のGIJOEさんが作成中だった名残がコードにあるけど、「子投稿1.1」あたりの処理との絡みが出そうで、少し面倒な予感。 | |
- | -- モジュールCSSが、テーマ色・文字プロパティを反映しない件 | |
- | --- XCLテンプレート標準でどなたかが対応いただけることを期待。 | |
- | -- 今後のd3forumのメンテ・バージョンアップは誰が? | |