にしし ふぁくとりー(西村文宏 個人サイト)

Fumy News Clipper2 : Update Log

  • 2017年08月09日 Ver 2.13.1 公開: 新規投稿サイン「New!」表示機能。先頭固定を表す文字列の自由設定機能。その他、微細な不具合を修正。
  • 2017年08月05日 Ver 2.13.0 公開: カテゴリカウント機能追加。サイトマップのスキン化。逆順表示機能追加。続きを畳む機能追加。その他、設定項目を大幅追加。
  • 2017年07月21日 Ver 2.12.0 公開: 全文検索やハッシュタグ関連の不具合を解消。URL自動リンク機能追加。文字カウント機能追加。各種設定を追加。
  • 2017年07月17日 Ver 2.11.0 公開: サイトマップページ(全クリップのタイトル一覧ページ)の生成機能を追加。
  • 2017年07月15日 開発検討中の機能一覧を掲載しました。

CGIの紹介

Fumy News Clipperのサンプル動作画面

ニュース記事のクリップ等に便利な簡易ブログツール

  • 「Fumy News Clipper 2 -Hitokoto Bookmark Blog-」は、ニュース記事にコメントを加えて手軽にクリップしておく用途をベースにした簡易ブログツール(日記型個人掲示板CGI)です。 「ブログに書くほどではないけど、コメントを付加して日記形式で保存しておきたい」という場合に便利です。
  • ニュース記事のタイトルとURLをコメントと共に保存しておくことをベースに開発しているため、「コメント登録機能付きブックマーク」と言うこともできるでしょう。
  • 簡易的なブログツールとしての機能を備えていますから、 ミニブログ用CGI・備忘録CGI・ToDoリストCGI・連絡・告知掲示板CGI・更新履歴CGIなどとしても活用できます。 シンプルでデザイン自由度が高いCGIなので、広範囲に活用できるでしょう。
  • エントリ(記事)ごとにカテゴリを登録し、カテゴリ別にまとめて閲覧することもできます。年月を指定したり、全文検索機能を使って検索することもできます。ハッシュタグ機能を使って特定のキーワードで一覧することもできます。

スタイルシートベース

  • 装飾はすべてスタイルシートに書かれているため、スタイルシートを書き換えるだけでデザインを変更できます。
  • スタイルシートは、外部に独立したファイル(デフォルトではncstyle.css)として存在していますから、書き換えも楽々です。

スキン式でカスタマイズ自由自在

  • HTML部分は、外部のスキンファイル(テンプレートHTMLファイル)を読み込んで表示させているため、スキンさえ書き換えれば、デザインは自由自在に変更できます。 配色どころではなく、タイトルの位置や日付の位置、本文の表示形態など、自由自在にカスタマイズできます。
  • 下図は、付属の「標準スキン」を適用して表示した場合と、オプションの「ブログタイプスキン」を適用して表示した場合の表示例です。掲載内容や掲載位置などを、このように何でも自由にデザインできます。

Fumy News Clipperの標準スキンでの表示例

Fumy News Clipperの別スキン「ブログタイプ」での表示例

  • CGIに関する知識がなくても、スキン(HTML)ファイルさえ書き換えれば、自由自在に表示形態やデザインをカスタマイズできます。スキンファイルは、クリップ挿入用の特別なキーワードが含まれている点を除けば普通のHTMLですから、テキストエディタで編集できるほか一般のホームページ作成ソフトを使って編集することもできます。

どこに配置するか、各種機能を使うか使わないかも、自由自在

  • スキンHTMLファイル内は制限なく自由に編集可能なため、あらゆる表示項目の配置が自由です。さらに、「表示する」か「表示しない」かすらも自由にできますから、「コメント機能は使わない、極シンプルなリンク集」などのようにも活用できます。
  • カテゴリ一覧、検索ボックス、クイック投稿欄などの各種オプション機能は、使いたければ表示すれば良いですし、不要であれば(スキンHTMLから当該記述を削除すれば)消し去ることもできます。何を掲載して何を掲載しないかは、完全に自由自在です。(※CGIの著作権表記だけは消せません。)
  • クリップ(記事)の投稿フォームには、タイトル欄・CLIP URL欄・コメント欄・投稿日付欄など複数の項目がありますが、不要な項目は表示しない設定にすることで、目的に合致している入力欄だけを表示してシンプルに使うこともできます。

モバイル対応

  • ページの表示も、管理画面の表示も、モバイル端末に対応しています。スマートフォンやタブレットなどから閲覧したり投稿したりすることも可能です。(※ページの表示をカスタマイズする場合、モバイル対応を維持できるかどうかは用意するスタイルシート次第です。)

データ記録形式はXML

  • データ形式は、XMLをベースにしたテキストファイルです。たとえこのCGIを使わなくなったとしても、大した手間をかけずに書き込み内容を他のツールに流用することもできるでしょう。書いた内容を無駄にしません。
  • XSLを指定すれば、データファイルを直接ブラウザで(デザインされた状態で)閲覧することも可能です。

SEO対策も

  • 各ページはCGIによって毎回動的に生成されますが、検索エンジンに取得されやすいよう、パラメータ1つで各エントリを参照できます。例: hb.cgi?clip=12
  • Permalinkによって、個別のエントリを1つ1つ検索エンジンに拾わせることが可能です。(※拾うかどうかは検索エンジン次第です。)
  • 全クリップへのリンクを一覧掲載したサイトマップページの生成機能があります。スキンの中にサイトマップページへのリンクを含めておけば、確実に2クリック以内で全ページに到達できるため、検索エンジンにも取得されやすいでしょう。なお、サイトマップで表示する内容自体も、スキンファイルを編集することで自由に指定できます。

多目的に活用可能

  • ニュースのクリップの他、ウェブサイトの「更新情報表示CGI」としてや、メンバーへの「連絡掲示板CGI」として、さらには自分用の「備忘録CGI」・「ToDoリストCGI」などとしても活用できるでしょう。クリップするURLの入力は必須ではないので、日記などの簡易ブログツールとしても活用可能です。
  • 任意のクリップ(投稿)を先頭に固定表示することも可能なので、何らかの告知用掲示板などとしても活用しやすいでしょう。
  • 基本は降順(日付の新しい順)で表示しますが、ユーザ側の操作などによって逆順で表示することもできます。昇順(日付の古い順)で読ませたい場合にもご活用頂けます。

セキュリティ機能

  • 管理画面へのアクセスには、ログインが必要です。ログインに必要なパスワードは暗号化して保存される上、セッション有効期限(デフォルトでは1.5時間)が設定されるため、不正使用の可能性を減らします。
  • 投稿・編集は、ログインしている状態でしかできません。一度ログインすれば、セッション有効期限が来るまではパスワードの再入力は不要なので、手間を省けます。セッション有効期限は20分~1年の範囲で設定可能なため、使用環境の安全度に応じて柔軟に設定できます。
  • ログインしていない状態では、投稿画面は見えません。訪問者には余計なものは見せずに、シンプルな画面構成にできます。

簡単設置

  • データベース不要! (ウェブサーバ側に特殊な機能は必要ありません。)
  • わずか9個のファイルを同一ディレクトリにアップロードすれば使えます。
  • このCGIは、Perlで記述されています。Perl 5が実行できさえすれば、他に必要なものは(ほとんど)ありません。多くのスペースで設置・使用が可能でしょう。(※CGIモジュールが必須ですが、たいていのウェブサーバでは使用可能です。たとえCGIモジュールがサーバ側に用意されていなくても、自身で入手してCGIと同じディレクトリに置けば使えます。)

超軽量CGI

  • 本体CGIは、わずか143KB程度しかありません。スキンファイルなどの必要なファイルをすべて合わせても、わずか170KB程度で収まります。とても軽いCGIです。
  • 投稿日付別一覧やハッシュタグ一覧など、投稿・編集時にしか変化しない情報はキャッシュしておくことで、表示時に毎回生成する負荷を回避し、軽量・高速動作を実現しています。

このフリーCGIは、どなたでも無料でご利用頂けます。個人サイト・法人サイト共に、商用サイト・非商用サイト等の区別なく、ご自由にご利用下さい。 ウェブ作成業者等による代行設置も可能です。そのほか詳しくはCGI使用条件(ライセンス)項目をご参照下さい。

CGIのダウンロード

CGI「Fumy News Clipper2」一式は以下のリンクからダウンロード頂けます。ZIP形式で圧縮していますので、ダウンロード後に展開して下さい。 セットアップ方法は後述の「CGIの設置方法」をご参照下さい。

[Version] 2.13.1 [File] fnewsclip.zip [Size] 62.6KB [Date] 2017/08/09.
最新版 Ver 2.13.1 最小構成をダウンロードする (このサイトから)
最新版 Ver 2.13.1 フルセットをダウンロードする (このサイトから)

※最小構成もフルセットも、CGIの機能は同じです。収録スキン数のみが異なります。
※最小構成には、スキンとして「標準スキン」だけが含まれています。
※フルセットには、スキンとして「標準スキン」以外に、オプションスキンとして「ブログタイプ」も含まれています。

オプションスキン「ブログタイプ」(for v2.13.1以降)のみを単独でダウンロードする

以下は、旧バージョンです。特に問題がない限りは、上記の最新版をダウンロードしてご使用下さい。

[Version] 2.13.0 [File] fnewsclip2130.zip [Size] 61.3KB [Date] 2017/08/05.
Ver 2.13.0 をダウンロードする (このサイトから)
[Version] 2.12.0 [File] fnewsclip2120.zip [Size] 58.0KB [Date] 2017/07/21.
Ver 2.12.0 をダウンロードする (このサイトから)
[Version] 2.11.0 [File] fnewsclip2110.zip [Size] 56.0KB [Date] 2017/07/17.
Ver 2.11.0 をダウンロードする (このサイトから)
[Version] 2.10.0 [File] fnewsclip2100.zip [Size] 55.6KB [Date] 2016/12/03.
Ver 2.10.0 をダウンロードする (このサイトから)

※脆弱性に関する注意
Ver 2.4.0以下には、クロスサイトスクリプティングの脆弱性があります。 Ver 2.5.0で解決しておりますので、Ver 2.5.0以降のバージョンをご使用下さい。古いバージョンをお使いの場合は、早急にアップグレード頂きますようお願い致します。

※旧バージョンからのアップグレード(バージョンアップ)方法については、下記の解説「バージョンアップ方法」をご参照下さい。

CGIの動作サンプル

動作サンプルを見たい場合や、書き込みを試したい場合は、下記のテスト運用版をご自由にご使用下さい。投稿や各種管理操作をご自由にお試し頂けます。

コントロールパネルのパスワードは「guest」です。(半角英字)
公序良俗に反する書き込みはしないようにお願い致します。あまりにひどいと、試用版の掲載を中止せざるを得なくなってしまいますので。

CGIの設置方法・設置環境・カスタマイズ方法

CGIの設置環境要件

  • CGIは Perl で記述しています。動作には、Perl 5 が必要です。
  • CGIモジュールが使用できることが必須です。(※CGIが設置可能なサーバであればたいてい問題ないでしょう。CGIモジュールがサーバにインストールされていない場合でも、CGIモジュールを別途入手し、このCGIと同じディレクトリに格納すれば使えます。)
  • それ以外には、特に必要なものはありません。(データベースは使いません。

CGIの設置方法(パーミッションの設定)

ZIPを展開したファイルの内、説明用の「README.TXT」ファイルを除く9個のファイルを、同一のディレクトリにアップロードして、下表に記したパーミッション(アクセス権/属性)に設定して下さい。

ファイル名パーミッション補足
▼実行ファイル
hb.cgi755 (705)メインCGI
fumyxml.pl644 (604)補助プログラム (メインCGIから呼び出されます)
▼データファイル(CGIによって書き換えられるファイル)
hb.xml666 (606)クリップ(エントリ)記録用ファイル(CGIによって編集されます) ※1,2
hbsettings.txt666 (606)各種設定記録用ファイル(CGIによって編集されます) ※1,3
upf.cgi666 (606)パスワード・セッションID格納ファイル(CGIによって編集されます) ※1,4
▼表示HTML関連ファイル
ncskin.html644 (604)表示用スキンファイル(テンプレートHTMLファイル:外枠用) ※1
ncclip.html644 (604)表示用スキンファイル(テンプレートHTMLファイル:クリップ個別用) ※1
ncsmap.html644 (604)表示用スキンファイル(テンプレートHTMLファイル:サイトマップ用) ※1,6
ncstyle.css644 (604)表示用スタイルシートファイル ※1,5

※1:ファイル名は自由に変更可能です。(ファイル名の変更内容は hb.cgi 内に反映させる必要があります。よく分からない場合はデフォルトのままご使用下さい。)
※2:ファイル拡張子は.xml以外に変更しても構いません。(記録形式はXMLです。)
※3:ファイル拡張子は.txt以外に変更しても構いません。(記録形式はINIベースの独自仕様です。)
※4:ファイル拡張子は.cgi以外でも構いませんが、外部から閲覧されるのを防ぐために「.cgi」にしてあります。他の拡張子に変更する場合は、.htaccessファイルなどを使って中身が閲覧されないように設定しておく方が無難です。ログイン用のパスワードを忘れてしまった場合は、このファイルの中身を空っぽにして再度アップロードすると、無条件ログインが可能になります。
※5:ファイル拡張子は.cssでなければなりません。
※6:サイトマップ用のスキンファイルは、存在しなくても動作します。(その場合は、内蔵のデフォルト形態で表示されます。)

※実行ファイル群のファイル名は変更できません。
※上記の「755」や「644」などのパーミッション(アクセス権/属性)値は、ウェブサーバによっては「705」や「604」のように真ん中(=グループ権限)をゼロにしないといけない場合もあります。詳しくはウェブサーバのヘルプをご参照下さい。
※ZIP内に含まれている「Readme.txt」ファイルは、アップロードしないで下さい。解説を記述したただのテキストファイルです。

※別スキン(オプションスキン)を使う場合

Ver 2.8.0以降には、別スキンを一時適用する機能があります。その機能を使う場合は、「1スキン=1サブディレクトリ」でサブディレクトリにアップロードして下さい。
スキンファイルは、置き場所に応じて以下のように扱われます。

  • CGIと同じディレクトリにあるスキンファイル = 標準スキンとして適用
  • CGIのあるディレクトリのサブディレクトリ内にあるスキンファイル = オプション別スキンとして管理画面から切り替えられるスキンとして機能

この機能は、一時的にスキンを切り替えて表示確認するためのものです。一般のアクセス者からは常に「標準スキン」しか見えませんので、最終的に適用したいスキンは「CGIと同じディレクトリ」に格納して下さい。

CGIの設置方法(CGIファイルの書き換え)

* hb.cgi をエディタで開いて、次の箇所を必要に応じて書き換えます。

※デフォルトの状態で使用するのであれば、1行目以外、まったく書き換えなくても動きます

(1行目) #! /usr/bin/perl
Perlの位置を必要に応じて書き換えます。 /usr/local/bin/perl など。
(33行目) my $bmsdata = 'hb.xml';
クリップ記録ファイル名(拡張子はxmlでなくても構いませんが、記録形式はXMLです。)
(35行目) my $setfile = 'hbsettings.txt';
各種記録ファイル名(拡張子はtxtでなくても構いません。)
(37行目) my $charcode = 'Shift_JIS';
文字コード(デフォルトは "Shift_JIS")
▲変更する場合はCGIや各種データファイルの文字コードも一緒に変更して下さい。
(40行目) my $coverskin = 'ncskin.html';
外側スキンファイル名(テンプレートHTMLファイル名)
(42行目) my $clipskin = 'ncclip.html';
個別クリップ用スキンファイル名(テンプレートHTMLファイル名)
(44行目) my $skinfilemap = 'ncsmap.html';
サイトマップ用スキンファイル名(テンプレートHTMLファイル名)
(47行目) my $passfile = "upf.cgi";
パスワード・セッションID格納ファイル名(デフォルトは upf.cgi )
▲中身を閲覧されないようにするため拡張子をcgiにしています。他の拡張子に変更しても動作は可能ですが、中身は第三者に閲覧されないようにしておく方が無難です。(※パスワードは暗号化されて記録されています。)
(50行目) my $keepsession = 1;
セッション維持の有無(1:ブラウザを終了してもログイン状態を維持する/0:ブラウザを終了するとログアウトする)
▲ログイン状態を維持する場合、デフォルトの維持期限は(最後の操作から)1.5時間です。(CGIの管理画面で、20分~1年の範囲内で自由に設定できます。)
(52~56行目)
ここには必須ではない設定項目が数個あります。必要に応じて設定して下さい。

※上記以外の設定は、CGIを実行した後で「管理画面」にログインしてから設定でき、各種設定記録用ファイルに保存されます。(デフォルトのファイル名は「hbsettings.txt」です。)

ウェブサーバへのファイルのアップロード方法

アップロードは、すべて「アスキーモード」(テキストモード)で行います。

※文字コードについて

配布ファイルの文字コードは、すべて SHIFT-JIS になっています。
文字コードは、SHIFT-JISのままアップロードされることをお勧めしますが、他の文字コードを使用したい場合は、全ファイルを使用したい文字コードに変換した上でアップロードして下さい。一部のファイルだけ文字コードを変えると、文字化けが起こります。 (文字コードを変更した場合は、hb.cgi の37行目を適切に書き換える必要があります。)
よく分からない場合は、文字コードを変換せずSHIFT-JISコードのままご使用下さい。

※サンプルデータについて

データファイル内には、サンプルデータが含まれています。 サンプルデータが不要なら(※当然不要でしょうが:^^;)最初に使用する際にコントロールパネルから削除して下さい。(もしくは、空のファイルを新しく作成してからアップロードしても構いません。)

バージョンアップ方法

以前のバージョン(Ver 2.x.x)を既にお使いの場合は、 hb.cgi と fumyxml.pl の2つのファイルのみを上書きアップロードして下さい。 それ以外のファイルをアップロードする必要はありません。 特に、データファイル(hb.xml)を上書きしてしまうと、過去のデータが消えてしまいますので、くれぐれもご注意下さい。

※Ver 2.12.0 以下から 2.13.0 以上へアップグレードする場合: 標準スキンに ncsmap.html が追加されていますので、このファイルも追加アップロードして下さい。

なお、CGIソースに直接記述する形の設定は、上書きするとデフォルト設定に戻ってしまいます。アップロードする前に、以前と同じように編集しておいて下さい。

※データの互換性について

Ver 2.x.x ではデータファイルの記録形式に下位互換性がありますので、以前のデータはそのまま引き継げます。(※Ver.1以下との互換性はありません。)
データファイルはそのままの状態で、CGIを最新版に更新するだけで使い続けられます。

※スキンの更新について

もし、標準スキンをそのまま利用している場合は、スキンファイル群(ncskin.html・ncclip.html・ncsmap.html・ncstyle.css)も上書きアップロードすると、新しく加わった機能をそのまま活用できます。 スキンをカスタマイズして使っている場合は、上書きアップロードはしないようご注意下さい。その際は、新パッケージに含まれるスキンHTMLの中身を別途ご覧になりつつ既存スキンを編集すると、カスタマイズしやすいでしょう。

CGIのカスタマイズ方法

次の3つのファイルを書き換えることで、自由にカスタマイズが可能です。

  • デザインのカスタマイズ
    • ncstyle.css : クリップ表示に使われるスタイルシートです。スタイルを変更したい場合に書き換えます。
  • ページそのもののカスタマイズ
    • ncskin.html : ページ全体用のスキン(テンプレートHTML)ファイルです。(編集方法は後述)
    • ncclip.html : 個別クリップ表示用のスキン(テンプレートHTML)ファイルです。(編集方法は後述)
    • ncsmap.html : サイトマップ表示用のスキン(テンプレートHTML)ファイルです。(編集方法は個別クリップ表示用と同じ)
▼ページ全体用のスキン「ncskin.html」の編集方法

CGIが出力するページ全体を作るスキン(テンプレートHTML)ファイルです。テキストエディタやホームページ作成ソフトなどで編集できます。以下のキーワードを含めておくことで、CGI側が各情報を挿入して表示します。

  • HTML内に、[[NEWSCLIP]] と記述すると、その位置にクリップが挿入されます。(1スキン内で1回のみ記述可能)
  • HTML内に、[[PAGELINKS]] と記述すると、その位置にページ移動用のリンクが(必要に応じて)挿入されます。表示対象クリップを限定している場合に表示される「元の表示に戻す」リンクもここに含まれます。(1スキン内で何回でも記述できます。)
  • HTML内に、[[PAGELISTLINKS]] と記述すると、その位置にページ番号リストリンクが挿入されます。ただし、2ページ目以降が存在しない場面では何も挿入されません。(1スキン内で何回でも記述できます。)
  • HTML内に、[[CATEGORIES]] と記述すると、その位置にカテゴリ一覧がリスト形式で挿入されます。(1スキン内で何回でも記述できます。)
  • HTML内に、[[SEARCHBOX]] と記述すると、その位置に検索窓が挿入されます。標準では全クリップを対象に全文検索しますが、カテゴリ表示時には表示中のカテゴリ内に限定した全文検索もできます。検索語に指定できる単語は1つのみで、複数の検索語を組み合わせた検索はできません。(1スキン内で何回でも記述できます。)
  • HTML内に、[[DATEBOX]] と記述すると、その位置に日付限定窓が挿入されます。標準では全クリップを対象にして指定年月だけのクリップを表示しますが、カテゴリ表示時には表示中のカテゴリ内に限定した日付指定もできます。(1スキン内で何回でも記述できます。)
  • HTML内に、[[TOPCLIPSLINK:種別:個数]] と記述すると、その位置に最新クリップ一覧が挿入されます。「種別」には、C=カテゴリ/D=日付/T=タイトル(リンク付き)の3文字を組み合わせて自由な順序で記述できます。例えば「TD」だとタイトル→日付の順に挿入されます。「個数」には掲載したいクリップ数を半角数値で記述します。例えば、[[TOPCLIPSLINK:TDC:5]]なら「タイトル→日付→カテゴリ名」の順序で最新5つのリストが表示されます。(1スキン内で何回でも記述できます。)
  • HTML内に、[[FREESPACE]] と記述すると、その位置にフリースペースとして登録された文章が挿入されます。(1スキン内で何回でも記述できます。)
    ※フリースペースの本文内に区切り文字を入力することで、複数個のフリースペースを使い分けられます(Ver 2.6.2以降)。方法は「フリースペースの書き方」をご参照下さい。
  • HTML内に、[[FREESPACEEDIT]] と記述すると、その位置にフリースペースを編集できる管理画面へのURLが挿入されます。編集用リンクを作りたい場合に使えます。(1スキン内で何回でも記述できます。)
  • HTML内に、[[HASHTAGLIST]] と記述すると、その位置にハッシュタグリスト(使用されているハッシュタグ名と出現回数)が挿入されます。(1スキン内で何回でも記述できます。)
  • HTML内に、[[LIMITMESSAGE]] と記述すると、表示するクリップが限定されている場合(カテゴリ別表示や検索結果など)に、限定内容を案内する文言が表示されます。(1スキン内で何回でも記述できます。)
  • HTML内に、[[SITEMAPLINK]] と記述すると、その位置にサイトマップページへのリンクが挿入されます。(1スキン内で何回でも記述できます。)
  • HTML内に、[[SITEMAPURL]] と記述すると、その位置にサイトマップページのURLが挿入されます。(1スキン内で何回でも記述できます。)
  • HTML内に、[[SITEMAPNAME]] と記述すると、その位置にサイトマップの名称(設定画面で自由に設定可能)が挿入されます。(1スキン内で何回でも記述できます。)
  • HTML内に、[[REVERSEURL]] と記述すると、その位置に今の表示を逆順にするURLが挿入されます。(1スキン内で何回でも記述できます。)
  • HTML内に、[[REVERSENAME]] と記述すると、その位置に今の表示を逆順にする名称(設定画面で自由に設定可能)が挿入されます。(1スキン内で何回でも記述できます。)
  • HTML内に、[[QUICKPOST]] と記述すると、ログインされている状況でのみ「クイック投稿フォーム」が挿入されます。ログインされていなければ、非表示用のCSSが挿入されます。(1スキン内で何回でも記述できます。)
    • HTMLの要素に、class="Login-Required" のようにclass属性を付加しておくと、ログインされていない場合には、その要素は(CSSで)非表示になります。(この機能は、スキン内に [[QUICKPOST]] を記述している場合にのみ有効です。)
    • この [[QUICKPOST]] の記述がある場合は、ページが表示されるたびにログイン状態の有無をチェックする処理が実行されます。もし、クイック投稿フォームが不要であれば、この [[QUICKPOST]] の記述自体を削除しておくことで、無駄な処理を省略でき、負荷を軽減できます。
  • HTML内に、[[CHARCODE]] と記述すると、CGIの文字コード名が挿入されます。(1スキン内で何回でも記述できます。) ※標準では「Shift_JIS」です。
  • HTML内に、[[VERSION]] と記述すると、CGIの名称とバージョン番号が挿入されます。(1スキン内で何回でも記述できます。) ※この記述が1度もない場合は、CGI側が強制的にHTML末尾に同文を挿入します。スキン内にこの表記を使っておく方が、望み通りにデザインを作れると思います。
  • コントロールパネルに移動するリンクは、<a href="?mode=admin">管理用</a>と記述することで作れます。
  • 新規投稿ページへ直接移動するリンクは、<a href="?mode=edit">新規投稿</a>と記述することで作れます。
▼個別クリップ表示用のスキン「ncclip.html」とサイトマップ表示用のスキン「ncsmap.html」共通の編集方法

個別クリップを表示する部分を作るためのスキン(テンプレートHTML)ファイルと、サイトマップ(記事一覧)を表示する部分を作るためのスキン(テンプレートHTML)です。下記のキーワードはどれも、1スキン内に何度でも挿入できます。(1度も使わない項目があっても構いません)

  • HTML内に、[[ID]] と記述すると、その位置にクリップの固有番号が挿入されます。
  • HTML内に、[[TITLE]] と記述すると、その位置にクリップのタイトルが挿入されます。
  • HTML内に、[[NEWSURL]] と記述すると、その位置にクリップのリンク先URL(リンク用)が挿入されます。(クリップ自身のURLではありません:※1)
  • HTML内に、[[NEWSURL:DISP]] と記述すると、その位置にクリップのリンク先URL(表示用)が挿入されます。(クリップ自身のURLではありません:※1)
  • HTML内に、[[CATEGORY]] と記述すると、その位置にクリップの所属カテゴリが挿入されます。
  • HTML内に、[[CATEGORYURL]] と記述すると、その位置に同一カテゴリのクリップのみを表示するページへのURLが挿入されます。
  • HTML内に、[[CATEGORYURL:SITEMAP]] と記述すると、その位置に同一カテゴリのクリップのみを表示するサイトマップページへのURLが挿入されます。
  • HTML内に、[[COMMENT]] と記述すると、その位置にクリップのコメント本文が挿入されます。
  • HTML内に、[[COMMENTCOUNT]] と記述すると、その位置にクリップのコメント本文の文字数が挿入されます。
  • HTML内に、[[PARMALINK]] と記述すると、その位置にクリップ単体を表示するための固有URLが挿入されます。
  • HTML内に、[[EDITLINK]] と記述すると、その位置にクリップの内容を編集するための編集ページの固有URLが挿入されます。
  • HTML内に、[[DATE]] と記述すると、その位置にクリップの日付が「2016/07/23 13:26:20」形式で挿入されます。
  • HTML内に、[[DATE:JP]] と記述すると、その位置にクリップの日付が「2016年7月23日 13時26分20秒」形式で挿入されます。
  • HTML内に、[[DATELINK:SITEMAP]] と記述すると、その位置にクリップの日付サイトマップページへのリンク付きで挿入されます。
  • HTML内に、[[NEW]] と記述すると、その位置に新規投稿から間もないことを示す文字列(標準では「New!」)が挿入されます。表示時間や文字列は管理画面から設定できます。

※1:[[NEWSURL]] にも [[NEWSURL:DISP]] にも、共に「CLIP URL」欄に入力された文字列が挿入されます。ただし、 [[NEWSURL]] はリンク用のURLを挿入する目的なので「CLIP URL」の入力が省略されていた場合でも「?」記号が1つ入ります。それに対して、 [[NEWSURL:DISP]] は表示用のURLを挿入する目的なので「CLIP URL」の入力が省略されていた場合は何も表示されません。

スキン編集の補足
  • クリップ自体を挿入する [[NEWSCLIP]] 以外はすべて何回でも記述できます。デフォルトのスキン内でも、同一キーワードを何度も使用しています。
  • HTML内のその他の部分は、何でも自由に書き換えることができます。
  • 付属のスキンファイルを参考にして編集すれば、楽にカスタマイズできるでしょう。
  • スキン内に記述したキーワードが認識されない場合は、以下の点を確認してみて下さい。
    • 括弧が二重になっているか? [DATE][[DATE] では認識されません。[[DATE]] のように開始括弧も終了括弧も二重になっているかどうか確認して下さい。
    • 余計な空白文字が入っていないか? 括弧とキーワードの間は詰めて記述する必要があります。空白があると認識されません。
    • 半角の大文字で記述しているか? 括弧とキーワードは半角文字でしか認識されません。また、英字は大文字でしか認識されません。
▼仕様:フリースペースの書き方/基本編 (Ver 2.6.2以降)

わざわざスキンHTMLのソースを編集することなく、CGIの管理画面から手軽に任意の文章を更新できる方法として「フリースペース」機能を用意しています。 フリースペースの入力欄は1つしかありませんが、区切り文字「<>」を使うことで、複数個のフリースペースを別々の場所に何度でも掲載できます。

  • スキンHTML内に、[[FREESPACE]] と記述すると、その位置にフリースペースとして登録された文章の全文が挿入されます。
  • フリースペースの本文内に、区切り文字「<>」を1つ以上使った場合は、以下のような動作になります。
    • HTML内に [[FREESPACE:0]] と記述すれば、先頭から最初の区切り文字までの内容だけが挿入されます。
    • HTML内に [[FREESPACE:1]] と記述すれば、1つ目の区切り文字から次の区切り文字(または末尾)までの内容だけが挿入されます。
    • HTML内に [[FREESPACE:2]] と記述すれば、2つ目の区切り文字から次の区切り文字(または末尾)までの内容だけが挿入されます。
    • 区切り文字の使用個数に制限はありません。
    • 区切り文字は半角で記述した場合のみ認識されます。
    • 例えば区切り文字が5つしか使われていない状態で、[[FREESPACE:6]] のように「存在しない番号」を記述した場合は、何も挿入されません。
    • さらに複雑な表示条件を加える方法もあります。

※区切り文字を使用している場合でも、[[FREESPACE]] のように数字を付けずに記述した場合は、全文が挿入されます。(ただし、区切り文字そのものは表示されません。)
※フリースペースの本文にはHTMLタグも使用可能です。ただし、フリースペース入力欄内で「改行」した場合には、実際の表示でも改行される仕様になっています。そのため、HTMLタグの記述途中で改行してしまうとHTMLとして成立しなくなります。フリースペース内にHTMLタグを記述する場合は、改行せずに1行で入力しておくのが無難です。

▼仕様:フリースペースの書き方2/条件指定編 (Ver 2.7.0以降)

複数個のフリースペースを作った場合は、表示される条件を指定しておくこともできます。この機能を使うことで「HOMEページだけで表示されるメッセージ」などを作れます。

  • 以下のように記述することで、フリースペース本文の掲載条件を指定できます。
    • HTML内に [[FREESPACE:5/IF-HOME]] と記述すれば、5個目の区切り文字から次の区切り文字(または末尾)までの内容だけが、HOMEページでのみ挿入されます。(※HOMEページ=表示クリップが限定されていない状態の1ページ目)
    • HTML内に [[FREESPACE:6/IF-NORMALINDEX]] と記述すれば、6個目の区切り文字から次の区切り文字(または末尾)までの内容だけが、表示クリップが限定されていない状態の各ページでのみ挿入されます。
    • HTML内に [[FREESPACE:7/IF-CATEGORY]] と記述すれば、7個目の区切り文字から次の区切り文字(または末尾)までの内容だけが、カテゴリ限定ページでのみ挿入されます。(※全カテゴリが対象)
      • HTML内に [[FREESPACE:8/IF-CATEGORY:1]] と記述すれば、8個目の区切り文字から次の区切り文字(または末尾)までの内容だけが、1つ目のカテゴリページでのみ挿入されます。
      • HTML内に [[FREESPACE:9/IF-CATEGORY:2]] と記述すれば、9個目の区切り文字から次の区切り文字(または末尾)までの内容だけが、2つ目のカテゴリページでのみ挿入されます。
    • HTML内に [[FREESPACE:10/IF-ONECLIP]] と記述すれば、10個目の区切り文字から次の区切り文字(または末尾)までの内容だけが、クリップ単独ページでのみ挿入されます。

※数字を付けずに [[FREESPACE/IF-条件]] のように掲載条件を加えることはできません。その場合は [[FREESPACE:0/IF-条件]] のように「:0」を加えて記述して下さい。

CGIの使用方法

以下は「Fumy News Clipper2」の簡単な使用方法です。(文中のリンク先は動作サンプルです。)
シンプルなインターフェイスのCGIなので、説明を読まなくても使えるとは思いますが。

閲覧

閲覧するには、hb.cgi にブラウザでアクセスします。
スキンファイルである ncskin.html などを直接表示させても意味がない点にご注意下さい。

条件付き閲覧

Fumy News Clipperの投稿年月限定の表示例

Fumy News Clipperの全文検索結果の表示例

■カテゴリ限定
特定のカテゴリに限定して閲覧するには、「カテゴリ一覧」メニューから望みのカテゴリを選択するか、または hb.cgi?category=1 のように「category=(カテゴリ番号)」のパラメータを加えてブラウザでアクセスします。
なお、カテゴリ「なし」に限定して閲覧することはできません。
■投稿日付限定
特定の年月に投稿されたクリップに限定して閲覧するには、「日付限定」メニューから望みの年・年月を選択するか、または hb.cgi?date=2016/07 のように「date=(年月)」のパラメータを加えてブラウザでアクセスします。
パラメータに指定する日付は、「date=2016」のように年だけを指定することもできますし、「date=2016/07」のように年月を指定することもできますし、「date=2016/07/09」のように年月日を指定することもできます。
■ハッシュタグ指定
特定のハッシュタグに限定して閲覧するには、「ハッシュタグ一覧」メニューから望みのタグ名を選択するか、または hb.cgi?tag=UpdateLog のように「tag=(ハッシュタグ名)」のパラメータを加えてブラウザでアクセスします。
空白を含んでいたり日本語を含んでいるハッシュタグを表示するためには、パラメータの値をURLエンコードする必要があります。「ハッシュタグ一覧」メニューから選択する方が簡単です。
■全文検索
簡易的な全文検索機能があります。検索窓に検索語を入力することで使えます。
指定できる検索語は1つだけです。検索語内に空白文字を含めた場合は「単語の分割」ではなく「空白文字そのもの」が検索語として解釈されて検索されます。

なお、一部のパラメータは複数同時に指定できます。例えば、hb.cgi?date=2016&category=2 のように指定すると、日付「2016年」でカテゴリ「2番」のクリップに限定した表示が可能です。 パラメータを直接指定しなくても、最初に「カテゴリ一覧」機能からカテゴリを選択することで、「日付限定」メニューや「全文検索」メニューが複合検索モードの表示になります。

■クリップ単独表示
クリップ1つを単独で表示することもできます。
どのようにしてアクセスできるかはスキンHTMLの書き方次第ですが、付属の標準スキンでは「Permalink」をクリックするとアクセスでき、オプションのブログタイプスキンではクリップタイトルをクリックするとアクセスできます。hb.cgi?clip=172 のように「clip=(クリップ番号)」のパラメータを加えることでもアクセスできます。
■サイトマップページ
全クリップのタイトルとリンクを一覧掲載したサイトマップページを表示するには、サイトマップページへのリンクをクリックするか、または hb.cgi?mode=sitemap のようにパラメータを加えてブラウザでアクセスします。
すべてのクリップへのリンクが一覧で閲覧できるので「目次」のような使い方ができます。なお、サイトマップページ内に表示されるリスト内にあるカテゴリ名をクリックすると、「そのカテゴリに限定したサイトマップページ」が生成されます。
※パラメータ「&mode=sitemap」を加えれば、カテゴリ以外の条件(例えば「ハッシュタグ指定」状態や「投稿日付限定」状態でも、その条件)に限定したサイトマップページを生成可能です。
■逆順表示
標準ではクリップはほぼ「投稿日付の新しい順」に表示されます。それを逆転させて「日付の古い順」に表示することもできます。逆順表示用のリンクをクリックするか、hb.cgi?order=reverse のようにパラメータを加えてブラウザでアクセスします。
※パラメータ「&order=reverse」を加えれば、様々な表示限定条件を維持したまま逆転できます。サイトマップでも逆順に表示できます。

設定・管理

Fumy News Clipperの管理画面

設定などの各種管理を行うには、 hb.cgi?mode=admin にブラウザでアクセスします。
初回アクセス時には無条件ログインができますので、まずはパスワードを設定して下さい。(管理画面は不特定多数のユーザが同時に使用することは想定していないため、必ずパスワードを設定して使用して下さい。)
この管理画面からは、以下の管理操作ができます。(管理画面もモバイル端末に対応しています。)

  • 新規投稿: 新規クリップを投稿できます。
  • クリップ削除/編集: 過去に投稿したクリップのタイトルを一覧して、指定クリップの削除・表示・編集ができます。
  • 設定: ページの表示やシステム動作に関する各種設定を行います。フリースペースの文面もここで編集できます。
  • パスワード変更: ログイン用のパスワードを変更できます。
  • クリップを再カウント: ハッシュタグの個数・年月別個数・カテゴリ個数は、投稿直後や設定変更直後には自動でカウントされます。しかし、クリップを編集した結果としてハッシュタグが減った場合には自動でカウントできないケースがあります。その際には、このメニューから手動で再カウントを実行して下さい。
  • データをバックアップ: 全クリップのデータをXML形式でバックアップできます。万一クリップデータが失われてしまった場合には、このバックアップファイルを「CGIで設定しているデータファイル名」にリネームしてアップロードすれば、バックアップ時点の状態に戻せます。
  • 別スキンの一時適用: サブディレクトリに置いた別スキンファイルを使って表示を試せます。
  • ログアウト: ログアウトします。標準設定では、最後の使用から1時間30分が経てば自動ログアウトします。自動ログアウト時間は上記の「設定」から変更できます。また、CGIソース内の設定フラグを変更すれば、ブラウザの終了と同時に自動ログアウトするよう設定することも可能です。

※ログインパスワードを忘れてしまった場合は、「パスワード・セッションID格納ファイル」(upf.cgi)の中身を空っぽにして上書きアップロードすると、無条件ログインができるようになります。ログイン後にパスワードを設定し直して下さい。(※パスワードなしの状態で運営しないで下さい。)

新規投稿

Fumy News Clipperの投稿画面

新規投稿するためには、 hb.cgi?mode=edit にブラウザでアクセスします。 ログインしていない状態であれば、まずはログイン画面が表示されます。既にログインしている状態なら、直接新規投稿画面が表示されます。

  • Edit No.: 編集中のクリップ番号です。
    • 新規の場合: 新規投稿の場合は「NEW」と表示されています。
    • 編集の場合: 編集の場合はクリップ番号が表示されていて、編集(上書き投稿)する「Edit」と新規投稿する「New」を選択できます。
  • タイトル: 投稿タイトルです。標準設定では、HTMLタグや実体参照の使用も可能です。省略すると「NO TITLE」という文字列が記録されます。
  • CLIP URL: ニュース記事のURLを記述します。省略することもできます。※元々が「ニュースクリップ用途」のCGIなので、このような欄があります。
    • 用途はスキン次第: 標準のスキンでは、このURLが「タイトル」文字を使ってリンクになりますが、どのように表示するか(または表示しないか)はスキンHTMLの書き方次第で自由にできます。
  • カテゴリ: カテゴリで分類できます。カテゴリそのものは、管理画面の「設定」から追加・削除が可能です。
  • コメント: 投稿本文を記述する領域です。
    • HTMLタグ: 直接HTMLタグを書くことも可能です。(※HTMLタグの記述を許可する設定になっている場合のみ。デフォルトでは許可する設定になっています。)
    • 実体参照: 本文内には「&copy;」(=©)や「&#9758;」(=☞)のような文字実体参照や数値文字参照を書くことも可能です。(※実体参照の記述を許可する設定になっている場合のみ。デフォルトでは許可する設定になっています。)
    • ハッシュタグ: 投稿本文内には「#」記号を使ってハッシュタグを記述することができます。(ハッシュタグの仕様は後述)
    • 続きを読む機能: 投稿本文内に区切り文字「<>」を入力することで、それ以後の文章を初期状態では非表示にしておき、「続きを読む」ボタンが押された際に動的に表示する機能が使えます。(続きを読む機能の仕様は後述)
  • 日付: 投稿日付を入力します。(標準では、フォームを表示した瞬間の時刻が入力されています。)
    • 空欄にすると: 空欄にすれば、投稿処理が行われた瞬間の日時が自動記録されます。
    • 任意に記述可: この欄には、日時以外にも任意の文字列を何でも入力可能です。(ただし、日付以外の表記を入れると、投稿日時による一覧表示機能では表示対象外になります。)
    • 年月指定表示時の制限: CGI側の「日付限定」機能を使って特定年月のクリップを一覧したい場合は、この日付欄には「YYYY/MM/DD hh:mm:ss」の形式(例えば「2016/07/15 16:54:44」)で入力されている必要があります。特段の理由がなければ、自動入力されている時刻表記をそのまま使っておくことをお勧め致します。

※セッション時間(標準設定では1.5時間)を過ぎると自動ログアウトしてしまい、投稿に失敗するので注意して下さい。投稿に時間を掛けすぎて自動ログアウトしてしまう場合は、セッション維持時間の設定を見直して下さい。
不要なら非表示に: どの入力欄も、設定で非表示にすることもできます。不要なら消しておくとシンプルに使えるでしょう。(設定場所は、CGIソースの冒頭です。)

クイック投稿フォーム

Fumy News Clipperのクイック投稿フォーム

スキンHTML内に [[QUICKPOST]] の記述がある場合は、ログインされている状況でのみ「クイック投稿フォーム」が表示されます。 この機能を使えば、いちいち新規投稿画面へ移動することなく投稿できます。 ログインしていない環境では表示されないため、一般のアクセス者に投稿フォームが見えてしまうことはありません。

デフォルトのスキンでは図のように、クリップを表示した後に(ログイン状態の場合のみ)クイック投稿フォームが表示されるよう記述してあります。 スキンHTMLの記述を修正することで、ページの先頭にフォームを表示させたり、脇に表示されたり、自由な場所に表示できます。

ハッシュタグの仕様 (Ver 2.12.0以降)

Fumy News Clipperで使えるハッシュタグの仕様

ハッシュタグは、コメント欄(本文領域)内のみに記述できます。 半角「#」記号に続いて任意の文字列を入力することでハッシュタグとして認識されますが、以下の制約があります。

  • 英数字のみの場合はそのまま書ける: #abc や #123 のように「#」記号に続いて直接ハッシュタグ名を記述できます。(半角英数字のみ)
  • 空白や日本語文字を含む場合は括弧が必須: #[Test Tag] や #[日本語] のように「#」記号に続いて半角の角括弧「[」~「]」でハッシュタグ名を括ることで英数字以外の文字や記号もタグとして認識させられます。半角英数字以外は、角括弧がないとハッシュタグとして認識されません。
  • 記述可能な位置: ハッシュタグを示す「#」記号は、URLの一部や数値文字参照を誤認しないよう、記述可能な位置に制限があります。
    • #[タグ] のように角括弧で囲んだ場合: この方法は制約が少なく様々な場所に書けます。#[タグ]#[日本語]のように連続することも可能です。
    • #Tag123 のような英数字のみの場合: この場合は、「行頭に書いた場合」または「直前の文字が英数字・&記号・スラッシュ記号・セミコロン記号以外の場合」にのみ認識されます。しかし、文字コードにSHIFT-JISを使っている場合では、直前の文字が日本語文字でも英数字と誤判定されてしまうケースがあり、文字によって使えたり使えなかったりします。
  • 大文字・小文字の区別なし: ハッシュタグ内の半角英字に限っては、大文字・小文字を区別しません。#tag #TAG #Tag は、すべて同じタグ名として扱われます。(全角文字は除きます。)
  • 再カウント処理が必要な場合がある: ハッシュタグを含んだクリップを投稿した場合や、ハッシュタグの整列順序の設定を変更した場合には、ハッシュタグの再カウントは自動で実行されます。しかし、ハッシュタグを含むクリップを削除したり、クリップを編集した結果としてハッシュタグが減った場合には、そのままではハッシュタグの個数表示は変化しません。その際は、管理画面から「ハッシュタグの再カウント」を実行して下さい。(※閲覧時に毎回カウントすると動作が遅くなるので、事前にカウントしておいた値を表示する仕様になっています。)

※タグには必ず角括弧を使うようにすると奇術場所の自由度は増します。角括弧を使わずに複数のタグを書く場合は、 #Tag,#ABC,#123 のように何らかの記号や空白で区切ると確実です。
※CGIやデータファイルの文字コードにSHIFT-JISを使っている場合(※デフォルトではそうです)、Ver 2.11.0以下では一部の文字がハッシュタグに使えないことがあります。

続きを読む機能の仕様

Fumy News Clipperで使える「続きを読む」機能の仕様
▲「続きを読む」機能の表示例と動作例

投稿本文内に区切り文字「<>」を入力することで、それ以後の文章を初期状態では非表示にしておき、「続きを読む」ボタンが押された際に動的に表示する機能が使えます。 以下のような仕様になっています。

  • 区切り文字: クリップの編集画面で、コメント入力欄内に区切り文字として「<>」(半角)を入力すると、それ以降が「続きを読む」として隠されるようになります。
  • 何個でも使用可: この区切り文字「<>」は、1クリップ内に何度でも使用可能です。複数個使用した場合は、「続きを読む」→「続きを読む2」→「続きを読む3」……のように2個目のボタンから連番が振られます。
  • JavaScriptで実装: この「続きを読む」機能では「表示・非表示を切り替える動的な処理部分」がJavaScriptで実装されているため、JavaScriptが無効な環境では最初から全文が表示されます。(JavaScriptが無効な環境ではボタン自体も表示されません。)

「続きを読む」ボタンは、以下の方法で自由に装飾できます。

  • ボタン型の見た目はCSSで実現: 「続きを読む」ボタンの実体は、ただのテキストリンクです。ボタンっぽく見えるのは、CSSでデザインされているためです。CSSを修正すれば見た目を変更できます。
  • ラベル「続きを読む」の変更方法: 「続きを読む」という文字列自体は、管理画面の『設定』ページで自由に変更できます。1文字以上あれば、どんな文字列にも変更できます。

「続きを読む」機能は、表示場面によって有効/無効を設定できます。 管理画面の『設定』ページに設定項目があります。デフォルトでは、以下のように設定されていますが、どの項目も自由に変更できます。

  • 標準の表示時: ○有効
  • カテゴリ限定表示時: ○有効
  • 全文検索結果表示時: ×無効(検索目的の場合は最初から全文が見える方が便利なので)
  • 投稿日付限定表示時: ○有効
  • ハッシュタグ検索時: ×無効(全文を見せないとハッシュタグが見えない可能性があるため)
  • 単独クリップ表示時: ○有効(※Ver 2.13.0以降で設定可能)

※上記で「有効」に設定した場面では、投稿コメント内に区切り文字「<>」が含まれているとき、JavaScriptが有効な環境では「続きを読む」ボタンが表示され、後続の内容が隠されます。「無効」に設定した場面では最初から全文が表示されますが、区切り文字「<>」自体は表示されません。
※もし「続きを読む」機能が完全に不要なら、全項目を「無効」に設定しておくと、余計な走査処理が省略されるため、クリップの表示速度が少し速くなります。(ただし、全項目を「無効」に設定すると、コメント本文内に区切り文字「<>」が記入されている場合、区切り文字「<>」は消されずにそのまま出力されます。)

「続きを読む」機能で動的に表示した内容を再度非表示にするための「畳む」ボタンを表示する機能もあります。ただし、標準ではOFFに設定されていますので、必要なら管理画面の『設定』ページでONに設定して下さい。

更新履歴

[Ver 2.13.0 → Ver 2.13.1] (2017/08/09)
新規に投稿されて間もないものと分かる「New!」表示機能を追加。(管理画面で表示時間と挿入文字列を指定可能)
先頭固定クリップに表示する「固定である旨を表す文字列」を設定画面で自由に変更可能に。標準では「(先頭固定)」。
微細な不具合を修正。

[Ver 2.12.0 → Ver 2.13.0] (2017/08/05)
カテゴリ一覧で各カテゴリの該当クリップ数をカウントして表示できる仕様を追加。
各カウント値を <span class="num">(1)</span> の形でマークアップするよう変更。
カウントデータをデータファイルに保存(キャッシュ)することで、毎回のカウント処理を省略し、高速動作できるようになりました。
3種類の再カウント処理(カテゴリ該当数、年月別該当数、ハッシュタグ該当数)をまとめて実行できる仕様を追加。
新規投稿時・編集時・削除時の後に、必要な再カウントを自動で実行する仕様を追加。(編集によってハッシュタグが減った場合の再カウントは手動で必要。)
「続きを読む」機能をクリップ個別ページでも有効に設定できる仕様を追加。
一度展開した「続きを読む」を再度閉じる(畳む)機能(JavaScript)を追加。※デフォルト設定ではOFF(非表示)です。
カテゴリ「なし」だけを表示できるよう仕様を変更。※カテゴリ一覧には表示されません。
サイトマップ表示時のタイトル先頭に付ける文字列(※デフォルトは「サイトマップ:」)を設定する仕様を追加。
サイトマップもスキンファイル(ncsmap.html)から読める仕様を追加。※<div class="sitemappage"> ~ </div> で囲まれる仕様。
サイトマップで1ページに表示するクリップ数を指定できる仕様を追加。※デフォルト設定では1,000件。
クリップを逆順で表示できる仕様を追加。(URLに order=reverse を追加/固定クリップはどちら順でも常に先頭固定)
URLをリンクにするかどうか、投稿フォーム表示項目の選択などを、管理画面の「設定」から設定できる仕様を追加。
CLIPスキン・SITEMAPスキンで使える以下のキーワードを追加。
 *[[CATEGORYURL:SITEMAP]] カテゴリ別サイトマップを表示できるURLを挿入する。
 *[[DATELINK:SITEMAP]] 日付別サイトマップを表示できるURLを挿入する。
 *[[COMMENTCOUNT]] コメント本文の文字数を挿入する。
カバースキンで使える以下のキーワードを追加。
 *[[SITEMAPURL]] サイトマップを表示するURLを挿入する。
 *[[SITEMAPNAME]] サイトマップの名称を挿入する。
 *[[REVERSEURL]] 今の表示を逆順にするURLを挿入する。
 *[[REVERSENAME]] 今の表示を逆順にする名称を挿入する。
ソースコードのリファクタリングを実施。ソースの短縮化とCGIの動作効率を向上させました。

[Ver 2.11.0 → Ver 2.12.0] (2017/07/21)
*不具合解消:文字コードがSHIFT-JISのとき、「ニュース」などの長音記号「ー」を含む単語で全文検索するとエラーになる不具合を解決。
*不具合解消:文字コードがSHIFT-JISのとき、「ニュース」などの長音記号「ー」を含む単語をハッシュタグにすると再カウント時にフリーズする不具合を解決。
*不具合解消:文字コードがSHIFT-JISのとき、ハッシュタグ「タグ」などで該当クリップ一覧を出すと、何もヒットしない不具合を解決。
*不具合解消:文字コードがSHIFT-JISのとき、ハッシュタグ「ポット」などで該当クリップ一覧を出すと、多数のクリップがヒットしてしまう不具合を解決。
コメント入力欄に入力された文字数をリアルタイムにカウントして表示する機能を追加。(JavaScript有効時のみ)
ハッシュタグを記述可能な位置の制約を緩和。 #[タグ]のように角括弧で囲んだ場合は(どんな文字の後でも)様々な場所で認識できます。
コメント本文内に書かれたURLを自動でリンクにする機能を追加。OFFにも設定できます。(※設定箇所はCGIソース冒頭)
投稿フォームにある各入力欄を表示するかどうかの設定機能を追加。(※設定箇所はCGIソース冒頭)
年月リストの表記形式で、「年」の単独項目を出力しない設定を追加。(※設定箇所はCGIソース冒頭)
年月リストの表記形式で、「年月」の項目では「年」と「月」に別々のclass名を付加するよう改善。※CSSを使えば、 .year { display: none; } を追加することで「2017年07月」などの表記が「07月」だけにできます。
*パッケージ不備解消:配布パッケージ内の標準スキンファイル「ncclip.html」が古いままだったのを差し替え。

[Ver 2.10.0 → Ver 2.11.0] (2017/07/17)
サイトマップページ生成機能の追加。
ブログタイプスキンのアップデート。

[Ver 2.9.1 → Ver 2.10.0] (2016/12/03)
最近の投稿リンクリストの掲載機能を追加。
細かな仕様変更と、セキュリティ対策を追加。

[Ver 2.9.0 → Ver 2.9.1] (2016/10/29)
任意のクリップを固定している際に新規投稿したとき、クリップの並び順が変わってしまう不具合と、エラーメッセージがそのままクリップになってしまう不具合を修正。
固定しているクリップのID名欄に「(固定表示)」のラベルを付加。
スキンに文字コードを示す文字列を挿入できる仕様を追加。
添付の標準スキンをリニューアルしました。

[Ver 2.8.0 → Ver 2.9.0] (2016/10/17)
任意のクリップを先頭に固定表示できるようになりました。

[Ver 2.7.0 → Ver 2.8.0] (2016/08/26)
コメント本文の後半を隠すことができる「続きを読む」ボタン表示機能を加えました。
別スキンの一時適用機能を搭載しました。1スキンごとに1つのサブディレクトリに格納しておくと、管理画面から試験適用ができます。
CLIP URLのURLを文字列として直接表示する際に使える [[NEWSURL:DISP]] を追加しました。クリップスキン内で利用できます。(URLが記録されている場合はそのままURLが出力されますが、何も記録されていない場合は空文字列を出力します。)
投稿フォーム内に「CLIP URL」入力欄が不要であれば、非表示に設定できるようになりました。(簡易ブログツールとして利用する際など、URL入力欄が不要であれば投稿画面をシンプルにできます。)
投稿フォームの「コメント」入力欄の長さ(行数)を設定できるようになりました。普段入力する分量に応じて表示行数を増減させておくと便利です。

[Ver 2.6.2 → Ver 2.7.0] (2016/07/31)
年月限定機能を改善。実際に投稿のあった年月だけを表示した上で、該当件数を常時表示するようになりました。
年月限定機能の表示形態が、「プルダウンメニュー」と「リンクリスト」の2種類になりました。[[DATEBOX:PULL]]でプルダウンメニュー、[[DATEBOX:LIST]]でリンクリストになります。
フリースペースに掲載条件を加えられるようになりました。「HOMEページの場合のみ」・「NORMALINDEX各ページの場合のみ」・「クリップ単独ページの場合のみ」・「カテゴリページの場合のみ」の4つの条件を使って、フリースペースの文面を表示できるようになりました。(カテゴリの場合は、特定のカテゴリの場合だけに限定することもできます。)
フリースペース内の行末がHTMLタグや区切り文字で終わっている場合には、改行を自動挿入しないようにしました。

[Ver 2.6.1 → Ver 2.6.2] (2016/07/23)
管理画面の「クリップの削除」項目を「クリップの管理」に変更し、削除の他に編集もできるようになりました。
フリースペースの本文内に区切り文字を入力することで、複数個のフリースペースを使い分けられるようになりました。
ハッシュタグ一覧の表示順序設定を変更した際には、自動でハッシュタグの再カウントを実行するようになりました。
ハッシュタグのカウントに関する不具合を修正しました。
クリップの日付表記を日本語に設定可能になりました。スキン内に [[DATE]] と書けば従来通り「2016/07/23 13:26:20」形式で挿入され、 [[DATE:JP]] と書けば日本語表記「2016年7月23日 13時26分20秒」形式で挿入されます。

[Ver 2.6.0 → Ver 2.6.1] (2016/07/21)
管理画面から、全クリップのバックアップファイルをダウンロードできるようになりました。
ハッシュタグを含んだ投稿の後に、ハッシュタグの再カウントを自動で実行するようになりました。
ページ番号リストのリンク数が多い場合に、描画領域の端で自動改行されない不具合が起きる可能性がある点を修正しました。
CGIの実行速度を多少向上させるための施策を加えました。

[Ver 2.5.3 → Ver 2.6.0] (2016/07/10)
指定の年月に限定したクリップの一覧を表示できるようになりました。(カテゴリを指定して閲覧している状態なら、カテゴリ選択状態を維持したまま指定の年月に絞っての表示も可能です。)
「前のページへ」・「次のページへ」だけでなく、ページ番号リストを表示して移動できるようになりました。

[Ver 2.5.2 → Ver 2.5.3] (2015/06/17)
クリップの先頭にハッシュタグを記述すると、ハッシュタグとして自動でリンクにならない不具合を修正しました。
管理画面を微妙に(ほんの少しだけ)モバイル端末からでも使いやすいようにしてみたような気がします。

[Ver 2.5.0 → Ver 2.5.2] (2015/01/24)
ハッシュタグ一覧表示の掲載順序を選択可能にしました。 (管理画面から、出現順・多い順・少ない順などで表示順を選択できます。)
各種設定を(CGIソースを修正せずに)管理画面から設定できるようにしました。

[Ver 2.4.0 → Ver 2.5.0] (2015/01/13)
ハッシュタグ一覧表示機能を搭載しました。
不具合を修正しました。脆弱性の解消

[Ver 2.3.5 → Ver 2.4.0] (2014/12/20)
過去のクリップを編集した際に、クリップの掲載順序を「維持する」か「トップに繰り上げる」かを選択可能になりました。(デフォルトは「維持する」になっています。)
ハッシュタグをクリックした際に、無関係なクリップまでリストアップされる不具合を修正しました。

[Ver 2.3.4 → Ver 2.3.5] (2014/12/15)
タイトルが省略されていても、コメント欄に入力があれば、投稿できるようにしました。
(タイトル・クリップURL・コメントの3項目のうち、どれか1つにでも入力があれば投稿できるようになりました。)

[Ver 2.3.1 → Ver 2.3.4] (2014/12/14)
ハッシュタグ機能を追加しました。「#」記号に続いて英数字を書くとタグとして認識されます。
タグ内部に空白や日本語文字(多バイト文字)を含ませたい場合は、#[日本語] のように角括弧で括って下さい。

[Ver 2.3.0 → Ver 2.3.1] (2014/10/26)
管理画面TOPに掲載されるセッション有効期限の案内を分かりやすくしました。
ログイン画面でもセッション有効期限の設定状況を案内するようにしました。

[Ver 2.2.3 → Ver 2.3.0] (2014/10/25)
クイック投稿ボックス(ログインしている場合にのみ表示される簡易投稿欄)の表示機能を追加しました。
ログインされていない場合に、特定の要素を非表示にできるCSS出力機能を追加しました。
ブラウザを終了しても、(セッション維持期間が過ぎるまでは)ログイン状態を維持できるようにしました。(この機能はOFFにもできます。)
投稿した際に(セッション維持期間が過ぎていた場合などで)ログアウト状態になっていても、入力した内容が失われない仕様にしました。
セッションの維持期間を「秒」単位ではなく「時間」単位で設定できるようにしました。(小数を使うことで1時間未満の時刻も表せます。)
そのほか、細かな機能改善などを行いました。

[Ver 2.2.0 → Ver 2.2.3] (2014,10,04)
表示対象のクリップが1つもない場合には、その旨のメッセージを表示するようにしました。(検索結果の表示時など)
登録外のカテゴリ名は空欄にせず「名称未設定」として表示するように修正しました。
パラメータに不正な値が指定できてしまう仕様を修正しました。
CGIのバージョン番号を出力できるようにし、スキンHTML側に掲載する著作権表示を短くしました。
ページリンクの表示内容に関する設定項目を増やしました。(分岐の改行や矢印をカスタマイズ可能にしました。)

[Ver 2.1.0 → Ver 2.2.0] (2014,09,30)
全文検索機能を追加しました。
フリースペースの設置機能を追加しました。
カテゴリ限定時や検索結果表示時に、表示内容が限定されている旨を表示できるようにしました。
新規投稿時に、そのときの日時がデフォルトで入るようにしました。
その他、セッションがタイムアウトした際の挙動などを少し修正しました。

[Ver 2.01 → Ver 2.1.0] (2014,09,28)
カテゴリ一覧の表示機能を追加しました。
投稿日時を自分で入力・修正できるようにしました。
ページ移動用リンクの文言を自由に変更できるようにしました。(設定はCGIソース内)
ページ移動用リンクが同一スキン内に何度でも記述できるようになりました。
URLの登録が省略された場合に、無効なURLへリンクが作られてしまう点を修正しました。
セキュリティ面で問題のあった処理を修正しました。

[Ver 2.00 → Ver 2.01] (2006,11,16)
カテゴリ限定表示時にページ移動リンクが正しく生成されない不具合を修正しました。
HTTPヘッダに余計な文字列を出力していたのを修正しました。
表示対象クリップを限定して表示したときに、元の状態に戻すリンクを表示するようにしました。

[Ver 0.10 → Ver 2.00]
ソースコードを1から作り直しました。操作性もセキュリティも向上しています。

著作権と免責

  • このCGIの著作権は、西村文宏(にしし)にあります。
  • このCGIを使用した結果、使用者にいかなる損害を与えたとしても、製作者および公開者は、その責を一切負いません。使用者個人の責任でご使用下さい。

CGI使用条件(ライセンス)

■どなたでも使用可能
個人サイト・法人サイト・商用サイト・非商用サイト等の種別を問わず、どなたでも無料でご使用頂けます。一般公開サイト・非公開サイトなど、どこにでも設置してご使用頂けます。
■禁止事項
CGIの著作権表示は、削除したり編集したり隠したり極端に見えにくくしたりしないで下さい。(どうしても削除して運営したい場合はお問い合わせ下さい。複数のライセンス形態を用意しています。)
■代行設置可能
ウェブ作成業者(個人事業・法人問わず)等による無償または有償での代行設置にお使い頂くことも可能です。ただし、CGIそのものを販売してはならず、CGIの著作権表示は(上記項目の通り)削除したり修正したり隠したりしないで下さい。また、CGIに関して作者は保証もサポートもしない点をあらかじめご了承下さい。

フィードバックのお願い(ご感想・ご要望歓迎)

このCGIを使ってみたご感想、ご要望などをぜひお送り下さい。
ご要望には(作者の興味が続いている限り)できるだけ応じたいと考えています。
ご要望等をお送り頂く先はメールでも構いませんし、掲示板でも構いません。お気軽にどうぞ。

設置された報告だけでも歓迎です。 活用されていることが分かると、開発の励みになりますので(^-^)、ぜひよろしくお願い致します。

開発検討中の機能など

  • 時刻の表記形式をスキンで選択可能にする機能。
  • カテゴリ一覧をプルダウンメニューの形で表示できる機能。
  • カテゴリの表示順序を後から自由に変更できるようにする機能。
  • RSSフィードの出力機能。
  • サイトマップXMLの生成機能。
  • 個別クリップページ(Permalink)にも前後のクリップに移動できるナビゲーションリンクを表示する機能。
  • 読み込むデータファイルを切り替えることで、1つのCGIで複数サイトを運営する機能。
  • スキンと設定をセットにした「テーマ」を切り替えて使える機能。
  • 投稿日時リストの表記形式を選択できる機能。(年別、年月別、年月日別など)
  • 全文検索で、2つ以上の単語を同時に指定した検索をできるようにする機能。(※現状では空白も検索語の内として扱います)
  • カテゴリ一覧では1つ目を必ず「なし」にしないといけない不思議仕様をなくす。(^_^;)
  • ログインしていなくても投稿可能にする機能(掲示板的な使い方ができるように)
  • 誤って修正や削除してしまわないようにするロック機能。
  • データ更新時に直前のデータを別ファイルに保存しておく、自動バックアップ機能。
  • 日付順でのデータソート機能。
  • カテゴリ一覧・ハッシュタグ一覧・日付一覧で、サイトマップにリンクするかどうかを選択できる機能。
  • 検索結果に、クリップ本文を表示するのではなく、サイトマップ型の表示にする(=クリップタイトル一覧だけを出す)機能。
  • 投稿されたばかりの記事タイトルに「New!」などの新着であることを示す文字列を表示する機能。Ver 2.13.1で搭載。
  • クリップの表示順序を「降順(新しい順)」ではなく「昇順(古い順)」にもできるようにする設定機能。Ver 2.13.0で搭載。
  • 投稿フォームに表示する項目を自由に取捨選択できる設定機能。(タイトル欄とコメント欄しか表示しない、など)Ver 2.13.0で搭載。
  • 「続きを読む」機能を、クリップ個別ページでも有効に設定できるようにする。Ver 2.13.0で搭載。
  • カテゴリ別の該当クリップ数をカウントして表示できる機能。Ver 2.13.0で搭載。
  • コメント投稿欄に、入力文字数のリアルタイムカウント機能を加える。(JavaScriptで)Ver 2.12.0で搭載。
  • 全文検索機能やハッシュタグで「ニュース」や「ポット」のような文字列が使えない(使うとエラーになる)問題を解決。Ver 2.12.0で解決。
  • 年月リストの表記形式で、「年」単独の項目を出力しない設定ができるようにする。Ver 2.12.0で搭載。
  • ハッシュタグの記述位置の制約を緩和する。Ver 2.12.0で搭載。
  • コメント本文内のURLを自動でリンクにする。Ver 2.12.0で搭載。
  • サイトマップページ(クリップの目次)表示機能。Ver 2.11.0で搭載。

※順不同。検討はしていますが、追加できるかどうかは別問題です。(^_^;) 気長にお待ち頂ければ幸いです。なお上記のリストに存在しても「この機能は是非とも欲しい」というものがありましたら、何度でもお知らせ頂ける方が、優先度の決定の参考にできてありがたいです。

--- 当サイト内を検索 ---