モジュール:出典リンク
ナビゲーションに移動
検索に移動
この説明文は 『 モジュール:出典リンク/doc 』 から呼び出されています。
廃止されたモジュール このモジュールは廃止されました。
ここはソースが再利用可能かもしれないことから残してあるだけの残骸です。多数の外部リンク出力に対応した多目的外部リンクモジュール。
メインテンプレート:{{出典リンク}}
使い方[編集]
{{#invoke:出典リンク|main|label=出力フォーマット指定ラベル(必須)|id=ID(必須)|type=出力形式(省略可)|title=リンクタイトル(省略可)}}
または
{{#invoke:出典リンク|main|出力フォーマット指定ラベル(必須)|ID(必須)|出力形式(省略可)|リンクタイトル(省略可)}}
引数名 既定値 説明 1, label- なし - 出力フォーマット指定ラベルを入力します(下記参照)。 2, id- なし - URLに含まれるIDを入力します。 3, title- {{PAGENAME}}
- リンク名を指定出来ます。「id」と入力するとidと同じになります。空白で現在のページ名になります。 4, type- type2 - 出力形式を指定出来ます。デフォルトはtype2です。 ┌─────────┘
4, typeの形式 type1 - [[ほげほげ]]:[url+id title]
- {{NDL}}など出典文献用。 type2 - [url+id title] - [[ほげほげ]]
- {{Facebook}}など外部リンク汎用。 type3 - 『[url+id title]』 - [[ほげほげ]]
- {{コトバンク}}など書籍・辞書用。 type4 - [url+id @title] - [[ほげほげ]]
- {{Twitter}}専用。 type5 - [url+id title]
- 前置・後置内部リンクなし。 入力ラベルと検索URLの一覧[編集]
指定以外のラベル入力は全てエラーになります。
ラベル 説明 入力するID部分 1. allcinema_c - allcinemaの映画タイトル記事 - テンプレート:Http://www.allcinema.net/prog/show_c.php?num_c=87913 2. allcinema_p - Allcinemaの俳優記事 - テンプレート:Http://www.allcinema.net/prog/show_p.php?num_p=14218 3. ameba - アメーバブログのアカウント+entryID - テンプレート:Http://ameblo.jp/risa-celeblog/entry-12180644690.html 4. asincom, amazoncom - amazon.com(米)の商品 - テンプレート:Https://www.amazon.com/dp/B00086U61Y 5. asinjp, amazonjp, amazon - amazon.com(日)の商品 - テンプレート:Https://www.amazon.co.jp/dp/B000J7WVEW 6. chiebukuro - Yahoo知恵袋のQ&A - テンプレート:Http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12161059147 7. chiebukuro_note - Yahoo知恵袋の質問ノート - テンプレート:Http://note.chiebukuro.yahoo.co.jp/detail/n351637 8. ciniiauthor - CiNiiの著者 - テンプレート:Http://ci.nii.ac.jp/author/DA0986045X/ 9. cinii1 - CiNii論文検索結果 - 任意の文字列 10. cinii2 - CiNii著者検索結果 - 任意の著者名 11. cinii3 - CiNii全文検索結果 - 任意の文字列 12. das - 国立国会図書館の公開デジタルデータ - テンプレート:Http://www.jacar.go.jp/DAS/meta/image_A03020029600 13. - facebookのアカウント - テンプレート:Https://www.facebook.com/nogijinja/ 14. - google検索結果 - 任意の文字列 15. imdb_title - IMDbの映画記事 - テンプレート:Http://www.imdb.com/title/tt0112384/ 16. imdb_name - IMDbの俳優記事 - テンプレート:Http://www.imdb.com/name/nm0000136/ 17. isbn, isbn2 - ISBN - 10桁または13桁のISBNコード番号 18. jcdb - 文化庁の映画データベース - テンプレート:Http://www.japanese-cinema-db.jp/Details?id=5302 19. kotobank - コトバンクの単語記事 - テンプレート:Http://kotobank.jp/word/林羅山 20. naid - CiNiiの論文 - テンプレート:Http://ci.nii.ac.jp/naid/40015923727/ 21. ncid - CiNiiの書誌 - テンプレート:Http://ci.nii.ac.jp/ncid/BA79996686/ 22. nico - ニコニコ動画の動画ID - テンプレート:Http://www.nicovideo.jp/watch/sm9 23. nicodic - ニコニコ大百科の記事名 - テンプレート:Http://dic.nicovideo.jp/a/スク水 24. nicoseiga - ニコニコ動画の静画ID - テンプレート:Http://seiga.nicovideo.jp/seiga/im1936063 25. nicocomm - ニコニコ動画のコミュニティID - テンプレート:Http://com.nicovideo.jp/community/co499 26. nicouser - ニコニコ動画のユーザーID - テンプレート:Http://www.nicovideo.jp/user/2 27. nicomylist - ニコニコ動画のマイリストID - テンプレート:Http://www.nicovideo.jp/mylist/26 28. nico3d - ニコニコ立体の立体ID - テンプレート:Http://3d.nicovideo.jp/works/td17856 29. nrid - CiNiiの話題提供者 - テンプレート:Http://ci.nii.ac.jp/nrid/9000002571408/ 30. ndl - 国立国会図書館の書籍情報 - テンプレート:Http://iss.ndl.go.jp/api/openurl?ndl_jpno=69015175 31. ndldc, ndljp, pid - 国立国会図書館の著作権切れ公開書籍 - テンプレート:Http://dl.ndl.go.jp/info:ndljp/pid/888725 32. pixiv - pixivのイラストID - テンプレート:Http://www.pixiv.net/member_illust.php?mode=medium&illust_id=26985970 33. pixiv_dic - ピクシブ百科事典の記事名 - テンプレート:Http://dic.pixiv.net/a/戦艦大和 34. pixiv_user - pixivのユーザーID - テンプレート:Http://www.pixiv.net/member.php?id=15702680 35. pixiv_search - pixiv内検索結果 - 任意の文字列 36. togetter - togetterのまとめID - テンプレート:Http://togetter.com/li/1001574 37. - twitterアカウント - テンプレート:Https://twitter.com/itm_nlab 38. vine - Vineの映像 - テンプレート:Https://https://vine.co/v/577v9LbVxeE 39. vine - Vineのアカウント - テンプレート:Https://vine.co/SamuelGrubbs 40. vimeo - Vimeoの映像またはアカウント - テンプレート:Https://vimeo.com/165378709 41. weblio - weblio辞書の単語記事 - テンプレート:Http://www.weblio.jp/content/延々 42. youtube - youtubeの動画ID - テンプレート:Https://www.youtube.com/watch?v=Xh9Cp4rd7mI 43. youtube_channel - youtubeのチャンネルID - テンプレート:Https://www.youtube.com/channel/UCulYu1HEIa7f70L2lYZWHOw 例[編集]
{{#invoke:出典リンク|main|label=google|id=ショー・コスギ|title=id|type=type3}}
『ショー・コスギ』 - google検索結果
{{#invoke:出典リンク|main|nicodic|スク水|id|type1}}
- typeの入力を省略するとtype2の出力フォーマットになる
{{#invoke:出典リンク|main|nicodic|スク水|id}}
- titleの入力を省略すると表記が記事名になる(リンクURLはid指定のまま)
{{#invoke:出典リンク|main|nicodic|スク水}}
local p = {}
-- エラーメッセージ表示用
function p._error( message )
return '<strong class="error">エラー: ' ..message ..'</strong>'
end
-- ここをいじると表記形式を追加出来ます。※基本的に既存の表示フォーマットは変更・除去しないで下さい。
function p._format( type, text, url, id, title )
-- type : 表記形式タイプ
-- text : 内部リンク用文字列
-- url : 基幹URL
-- id : 入力ID
-- title: リンクタイトル
local format = ({
-- リンク単語: [基幹URL+ID TITLE]
type1 = '[[' ..text ..']]:[' ..url ..id ..' ' ..title ..']',
-- [基幹URL+ID TITLE] - [[リンク単語]]
type2 = '[' ..url ..id ..' ' ..title ..'] - ' ..'[[' ..text ..']]',
-- 『[基幹URL+ID TITLE]』 - [[リンク単語]]
type3 = '『[' ..url ..id ..' ' ..title ..']』 - ' ..'[[' ..text ..']]',
-- 『[基幹URL+ID @ID]』 - [[リンク単語]] ※Twitter専用
type4 = '[' ..url ..id ..' @' ..title ..'] - ' ..'[[' ..text ..']]',
-- [基幹URL+ID TITLE]
type5 = '[' ..url ..id ..' ' ..title ..']',
})[type]
if format then
return format
else
return p._error('typeが指定されてないと見た(きりっ)')
end
end
function p.main( frame )
local args = require('Module:Arguments').getArgs(frame, { removeBlanks = false })
local label = string.lower(args.label or args[1]) or ''
local id = args.id or args[2] or ''
if id == '' then
return p._error('IDを入力して下さい')
end
local title = args.title or args[3] or ''
if title == 'id' then
title = id
elseif title == '' then
title = frame:preprocess('{{PAGENAME}}')
end
--ISBN判定
if label == '' then
return p._error('labelを入力して下さい')
elseif label == 'isbn' then
return 'ISBN ' ..id
elseif label == 'isbn2' then
return '[[特別:文献資料/' ..id ..'|' ..id ..']]'
end
local type = args.type or args[4] or ''
if type == '' then
type = 'type2'
end
-- 新しくフォーマットを追加するときはここをいじります。
-- label名 = { 'リンク文字列', '基幹URL', }, ※リンク文字列の部分に前後の[[]]は要りません。ラベル名は小文字のみ。
local link = ({
-- A
allcinema_c = { 'Allcinema|allcinema(作品)', 'http://www.allcinema.net/prog/show_c.php?num_c=' },
allcinema_p = { 'Allcinema|allcinema(人物)', 'http://www.allcinema.net/prog/show_p.php?num_p=' },
asincom = { 'amazon.com', 'https://www.amazon.com/dp/' },
amazoncom = { 'amazon.com', 'https://www.amazon.com/dp/' },
asinjp = { 'amazon.com|amazon.co.jp', 'https://www.amazon.co.jp/dp/' },
ameba = { 'アメーバブログ', 'http://ameblo.jp/' },
amazonjp = { 'amazon.com|amazon.co.jp', 'https://www.amazon.co.jp/dp/' },
amazon = { 'amazon.com|amazon.co.jp', 'https://www.amazon.co.jp/dp/' },
-- B
-- C
chiebukuro = { 'Yahoo知恵袋', 'http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/' },
chiebukuro_note = { 'Yahoo知恵袋|Yahoo知恵袋(ノート)', 'http://note.chiebukuro.yahoo.co.jp/detail/' },
ciniiauthor = { 'CiNii|NRID', 'http://ci.nii.ac.jp/author/' },
cinii1 = { 'CiNii|CiNii論文検索結果', 'http://ci.nii.ac.jp/search?q=' },
cinii2 = { 'CiNii|CiNii著者検索結果', 'http://ci.nii.ac.jp/author?q=' },
cinii3 = { 'CiNii|CiNii全文検索結果', 'http://ci.nii.ac.jp/fulltext?q=' },
-- D
das = { 'アジア歴史資料センター', 'http://www.jacar.go.jp/DAS/meta/image_' },
-- E
-- F
facebook = { 'facebook', 'https://www.facebook.com/' },
-- G
google = { 'google|google検索結果', 'https://www.google.co.jp/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=' },
-- H
-- I
imdb_title = { 'インターネット・ムービー・データベース|IMDb(作品)', 'http://www.imdb.com/title/tt' },
imdb_name = { 'インターネット・ムービー・データベース|IMDb(人物)', 'http://www.imdb.com/name/nm' },
-- J
jcdb = { '日本映画情報システム|JMdb', 'http://www.japanese-cinema-db.jp/Details?id=' },
-- K
kotobank = { 'コトバンク', 'https://kotobank.jp/word/' },
-- L
-- M
-- N
naid = { 'CiNii|NAID', 'http://ci.nii.ac.jp/naid/' },
naver = { 'NAVERまとめ', 'http://matome.naver.jp/odai/' },
ncid = { 'CiNii|NCID', 'http://ci.nii.ac.jp/ncid/' },
nico = { 'ニコニコ動画', 'http://www.nicovideo.jp/watch/' },
nico3d = { 'ニコニコ動画|ニコニコ立体', 'http://3d.nicovideo.jp/works/' },
nicocomm = { 'ニコニコ動画|Nico Comm', 'http://com.nicovideo.jp/community/' },
nicodic = { 'ニコニコ大百科', 'http://dic.nicovideo.jp/a/' },
nicomylist = { 'ニコニコ動画|Nico Mylist', 'http://www.nicovideo.jp/mylist/' },
nicoseiga = { 'ニコニコ動画|ニコニコ静画', 'http://seiga.nicovideo.jp/seiga/' },
nicouser = { 'ニコニコ動画|Nico User', 'http://www.nicovideo.jp/user/' },
nrid = { 'CiNii|NRID', 'http://ci.nii.ac.jp/nrid/' },
ndl = { '全国書誌番号|NDL', 'http://id.ndl.go.jp/bib/' },
ndldc = { '国立国会図書館デジタルコレクション|NDLDC', 'http://dl.ndl.go.jp/info:ndljp/pid/' },
ndljp = { '国立国会図書館デジタルコレクション|NDLJP', 'http://dl.ndl.go.jp/info:ndljp/pid/' },
-- O
-- P
pid = { '国立国会図書館デジタルコレクション|永続的識別子', 'http://dl.ndl.go.jp/info:ndljp/pid/' },
pixiv = { 'Pixiv', 'http://www.pixiv.net/member_illust.php?mode=medium&illust_id=' },
pixiv_dic = { 'ピクシブ百科事典', 'http://dic.pixiv.net/a/' },
pixiv_user = { 'Pixiv', 'http://www.pixiv.net/member.php?id=' },
pixiv_search = { 'Pixiv|Pixiv検索結果', 'http://www.pixiv.net/search.php?word=' },
-- Q
-- R
-- S
-- T
togetter = { 'togetter', 'http://togetter.com/li/' },
twitter = { 'Twitter', 'https://twitter.com/' },
-- U
-- V
vine_v = { 'Vine|Vine(映像)', 'https://vine.co/v/' },
vine = { 'Vine', 'https://vine.co/' },
Vimeo = { 'Vimeo', 'https://vine.co/v/' },
-- W
weblio = { 'Weblio辞書', 'http://www.weblio.jp/content/' },
-- X
-- Y
youtube = { 'youtube', 'https://www.youtube.com/watch?v=' },
youtube_c = { 'youtube|youtubeチャンネル', 'https://www.youtube.com/channel/' },
-- Z
})[label]
if link == nil then
return p._error('たぶん入力ラベルが定義されていないぽい(´・ω・`)')
else
return p._format( type, link[1], link[2], id, title )
end
end
return p