pukiwikiプラグイン:tbsend
表記、そんな感じのものを作ったので、一応公開しておきます。
プラグイン概要 †
pukiwiki に「トラックバックの送信」機能を追加するプラグインです。
インストール方法 †
- 本ページに添付されている下記ファイルをダウンロードし、pukiwiki の pluginフォルダに「tbsend.inc.php」の名前でおいてください。
使い方 †
tbsendプラグインは、インラインプラグインです。
パラメータの仕様は以下の通りです。
&tbsend( <url>[, <text> [, <sent_state>] );
- <url> : トラックバックを送りたい、リンク先のURL
- <text> : 画面表示用代替テキスト。省略可能、省略した場合 <url>をそのまま表示
- <sent_state> : トラックバック送信記録。これはプラグインが勝手に出力するので、利用者は記載しなくてかまいません。
上記のように記載すると、画面上は以下のような表示となります:
左側のリンク部分は、pukiwiki書式で以下のように記載したのと同じ内容です。
[[text>url]]
ボタン部分を押すと、url のページに対するトラックバック送信を行います。
その後、このボタン部分は非表示になります。
※注意
トラックバック送信を行うには、このプラグインが置かれたページに対する編集権限が必要です。
権限がない人物がボタンを押しても送信は行われませんし、ボタンも残ったままです。
通信結果 †
通信した結果は、プラグインの第3パラメータに記述されます。
正常に送信された場合、"_send"と記載されます。
技術的な話。 †
送信するデータと pageinfoプラグインとの連携 †
トラックバック送信では4つのパラメータが期待されています。
このプラグインでは、以下のようにこれらを決めています。
- title : このプラグインが記載されているページの pukiwiki ファイル名
- url :このプラグインが記載されている当該ページのURL
- excerpt:このプラグインが記載されているページのwikiテキストの先頭200文字
- blog_name:pukiwiki 内で $page_title で定義されるサイト名称。
ただし、拙作のpageinfoプラグインを導入している場合、titleおよび excerpt は pageinfo の仕様に準じます。
リスク:トラックバックスパムの発信基地となってしまう恐れ †
本プラグインでは『一度送信するとボタンを消す』という仕組みによって、同じURLに対するトラックバックの連打が発生しないようにしています。
また『送信するには編集権限が必要』なため、上記に実例を示している通り、権限がない人間からのトラックバック送信は阻止しています。
ですが wikiシステムの都合上、wikiのいずれかのページを編集できる人間は当該ページを何度も編集することで、このプラグインを何度も記述・トラックバック送信することが可能です。
そのような恐れがある場合、このプラグインの導入を避けることを推奨します。
コメント †
ご意見などがあれば。