「モジュール:EditAtWikidata」の版間の差分
(ページの作成:「-- Module to display an icon with a tooltip such as "Edit this at Wikidata". -- Icon will be linked to the Wikidata entry for the article where this is placed. -- This message is only displayed if a local_parameter is not supplied -- i.e. when called from a template, it can be coded not to display the message -- when a local parameter is in use, preventing the value form Wikidata being fetched. -- The qid of a Wikidata entry can optionally be supplied for testing ou…」) |
編集の要約なし |
||
34行目: | 34行目: | ||
-- Get the object containing all the claims for the article | -- Get the object containing all the claims for the article | ||
local entity = mw.wikibase.getEntityObject( | local entity = mw.wikibase.getEntityObject(id) | ||
if entity then | if entity then | ||
local thisQid | local thisQid |
2022年8月24日 (水) 13:27時点における版
このLuaモジュールは400,000以上のページで使われています。 余計な混乱やサーバーへの負荷を避けるために、どんな変更でも最初はモジュールのサンドボックス・サブページ、テストケース・サブページで試すべきです。そうすれば、試した変更を1度の編集でこのモジュールに加えることができます。しかし、最初にあなたの提案した変更を、この項目のノートで議論するようにお願いします。 |
{{EditAtWikidata}}を実装するテンプレート。詳しくは当該テンプレートの解説を参照してください。
-- Module to display an icon with a tooltip such as "Edit this at Wikidata". -- Icon will be linked to the Wikidata entry for the article where this is placed. -- This message is only displayed if a local_parameter is not supplied -- i.e. when called from a template, it can be coded not to display the message -- when a local parameter is in use, preventing the value form Wikidata being fetched. -- The qid of a Wikidata entry can optionally be supplied for testing outside the article. -- Usage: -- {{#invoke:EditAtWikidata|showMessage|local_parameter}} -- {{#invoke:EditAtWikidata|showMessage|qid=<ArticleID>|local_parameter}} local p = {} local i18n = { ["message"] = "ウィキデータを編集" } p.showMessage = function(frame) -- There may be a local parameter supplied, if it's blank, set it to nil local local_parm = mw.text.trim(frame.args[1] or "") if local_parm and (local_parm == "") then local_parm = nil end -- If there is a local parameter used, we don't want to display the message if local_parm then return nil end -- Can take a named parameter |qid which is the Wikidata ID for the article. -- This will not normally be used except for testing outside the article. local qid = frame.args.qid if qid and (qid == "") then qid = nil end -- The module can take a parameter pid= -- which will create a link to that property in the Wikidata entry for the article local propertyID = mw.text.trim(frame.args.pid or "") -- Get the object containing all the claims for the article local entity = mw.wikibase.getEntityObject(id) if entity then local thisQid if qid then thisQid = qid else thisQid = entity.id end -- Named parameter nbsp allows replacing the leading space with local space if frame.args.nbsp and (frame.args.nbsp ~= "") then space = " " else space = " " end return space .. "[[File:OOjs UI icon edit-ltr-progressive.svg |frameless |text-top |10px |alt=" .. i18n.message .. " |link=https://www.wikidata.org/wiki/" .. thisQid .. (propertyID == "" and "" or ("#" .. propertyID)) .. "|" .. i18n.message .. "]]" end end return p