وحدة:Ill-WD2
اذهب إلى التنقل
اذهب إلى البحث
- تستخدم هذه الوحدة أساساً عبر قالب:Ill-WD2.
الهدف من القالب[عدل]
يستخدم هذا القالب كما قالب {{وصلة إنترويكي}} ولكن يعتمد هذا القالب بشكل أساسي على عنصر ويكي بيانات الذي يتم وضعه في القيمة الثانية |id=Q001
عند وجود قيمة للوسيط الأول |1=وصلة
أو يوضع في الوسيط |id=Q001
عند عدم وجود أول قيمة، فإن كانت هناك وصلة في ويكي بيانات فستظهر عند عدم وضع وصلة محلية، أو تظهر بدل ذلك الوصلة التي توضع في الوسيط الأول |1=وصلة
.
- سؤال: لماذا هذا القالب؟!
- جواب: للتأكد من أن المقالة ربطت بالمقالة المطلوبة، حتى عند وجود تكرار في الإسم أو الوصلة، حيث أن القالب لا يظهر الصفحة في تصنيف:صفحات بها وصلات للإزالة إلا عند ارتباط مقالة في العنصر المطلوب في ويكي بيانات.
- في حالة وجود صفحة في ويكي بيانات للوسيط
|id=
سيقوم البوت Mr.Ibrahembot بإزالة القالب ووضع الوصلة المناسبة.
الاستعمال[عدل]
- الوسيط
|id=
يجب أن يستخدم كشرط أساسي لعمل القالب.
استخدام |نص=[عدل]
- يمكن استخدام
|نص=
في جميع الحالات التي ينتج فيها القالب وصلة، سواء حمراء أم زرقاء.{{Ill-WD2|جائزة الرئيس|id=Q17011862}}
ينتج: ← خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value).{{Ill-WD2|id=Q76|نص=أوباما}}
ينتج: ← خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value).
وصلة موجودة في ويكي بيانات[عدل]
- عند وجود وصلة في ويكي بيانات سيتجاهل القالب عمل الوسائط
|1=
و|target=
و|en=
.{{Ill-WD2|id=Q76}}
ينتج: ← خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value).
- استعمال
|1=
(يقوم القالب بتجاهله لوجود وصلة في ويكي بيانات) :{{Ill-WD2|أوباما|id=Q76}}
ينتج: ← خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value).{{Ill-WD2|أوباما|target=fa|id=Q76}}
ينتج: ← خطأ لوا في السطر 99: attempt to index field 'wikibase' (a nil value).
- يمكن استعمال
|نص=
(ليظهر مكان الوصلة) :{{Ill-WD2|id=Q76|نص=أوباما}}
ينتج: ← خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value).{{Ill-WD2|id=Q21857932}}
ينتج: ← خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value).{{Ill-WD2|id=Q21857932|نص=2017}}
ينتج: ← خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value).
عدم وجود وصلة في ويكي بيانات[عدل]
استخدام |en=[عدل]
- يمكن استخدام
|en=
في جميع حالات عدم وجود وصلة عربية في ويكي بيانات:- يظهر هذا الوسيط التسمية الإنجليزية في ويكي بيانات عند عدم استخدام
|1=
وعدم وجود تسمية عربية.{{Ill-WD2|id=Q1153257|en=true}}
ينتج: ← خطأ لوا في السطر 99: attempt to index field 'wikibase' (a nil value).{{Ill-WD2|id=Q21475076|en=true}}
ينتج: ← خطأ لوا في السطر 99: attempt to index field 'wikibase' (a nil value).
- يظهر هذا الوسيط التسمية الإنجليزية في ويكي بيانات عند عدم استخدام
- إذا أردنا إستخدام تسمية غير الإنجليزية فيمكن استخدام الوسيط
|target=
.
استخدام |target=[عدل]
القيم المستخدمة: رمز لغة.
- يظهر الوسيط الوصلة إلى ويكي بيانات أو إلى أحد الموسوعات الشقيقة للمقالة التي نريد.
- يمكن استخدام
|لغ=
أو|target=
في جميع حالات عدم وجود وصلة عربية في ويكي بيانات:
- وجود تسمية عربية في ويكي بيانات أو بإستخدام
|1=
{{Ill-WD2|id=Q17011862|target=en}}
ينتج: ← خطأ لوا في السطر 19: attempt to index field 'wikibase' (a nil value).{{Ill-WD2|جائزة الرابطة الوطنية لتقدّم الملونين|target=fa|id=Q1153257}}
ينتج: ← خطأ لوا في السطر 99: attempt to index field 'wikibase' (a nil value).
- عدم وجود تسمية عربية
{{Ill-WD2|id=Q1153257|target=en}}
ينتج: ← خطأ لوا في السطر 19: attempt to index field 'wikibase' (a nil value).{{Ill-WD2|id=Q1153257|target=fa|en=true}}
ينتج: ← خطأ لوا في السطر 99: attempt to index field 'wikibase' (a nil value).- عند عدم استخدام
|en=
سيظهر التسمية التي نضع رمز لغتها:{{Ill-WD2|id=Q1153257|target=fa}}
ينتج: ← خطأ لوا في السطر 99: attempt to index field 'wikibase' (a nil value).
- عند استخدام رمز لغة خاطئ
- باستخدام
|en=
لإضافة التسمية الإنجليزية{{Ill-WD2|id=Q1153257|target=fai|en=true}}
ينتج: ← خطأ لوا في السطر 99: attempt to index field 'wikibase' (a nil value). {{Ill-WD2|id=Q1153257|target=fai}}
ينتج: ← خطأ لوا في السطر 99: attempt to index field 'wikibase' (a nil value).
- باستخدام
تسمية عربية أو |1=[عدل]
النص يساوي مقالة موجودة[عدل]
- (مع استخدام
|id=
للعنصر (Q6262037))
- عند وجود تسمية عربية تساوي (جون جونز) أو أستخدمنا
|1=جون جونز
: - سيتجاهل القالب عمل وصلة إلى "جون جونز" بسبب وجود مقالة جون جونز تحمل هذا الاسم في ويكبيديا العربية وهي مرتبطة بعنصر آخر في ويكي بيانات:
- وستظهر الصفحة في تصنيف:وصلات إنترويكي بحاجة لمراجعة.
توصيف | يظهر |
---|---|
{{Ill-WD2|id=Q6262037}} |
خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value). |
توصيف | يظهر |
---|---|
{{Ill-WD2|جون جونز|id=Q6262037}} |
خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value). |
توصيف | يظهر |
---|---|
{{Ill-WD2|اليمن|target=en|id=Q6262037}} |
خطأ لوا في السطر 19: attempt to index field 'wikibase' (a nil value). |
- استخدام
|1=جون جونز (فيزيائي)
لنفس العنصر:{{Ill-WD2|جون جونز (فيزيائي)|id=Q6262037}}
ينتج: ← خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value).{{Ill-WD2|جون جونز (فيزيائي)|نص=جون جونز|id=Q6262037}}
ينتج: ← خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value).{{Ill-WD2|جون جونز (فيزيائي)|نص=جون جونز|target=en|id=Q6262037}}
ينتج: ← خطأ لوا في السطر 19: attempt to index field 'wikibase' (a nil value).
النص لا يساوي مقالة موجودة[عدل]
- مع وجود تسمية عربية:
{{Ill-WD2|id=Q17011862}}
ينتج: ← خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value).{{Ill-WD2|id=Q17011862|target=en}}
ينتج: ← خطأ لوا في السطر 19: attempt to index field 'wikibase' (a nil value).{{Ill-WD2|جائزة الرئيس|id=Q17011862}}
ينتج: ← خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value).
أمثلة أخرى[عدل]
- عدم وجود تسمية عربية وعدم استخدام
|1=
:
توصيف | يظهر |
---|---|
{{Ill-WD2|id=Q1153257}} |
خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value). |
y[عدل]
|y=أي قيمة
يستخدم عند الرغبة في إظهار السنة فقط إن كانت موجودة وإن لم تكن موجودة يظهر الوصلة كما هي، تستخدم غالبا في قوالب السباقات مثل : قالب:طواف لومبارديا- مثال بدون استخدام الوسيط :
توصيف | يظهر |
---|---|
{{Ill-WD2|id=Q29456648}} |
خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value). |
- مثال يستخدم الوسيط:
توصيف | يظهر |
---|---|
{{Ill-WD2|id=Q29456648|y=true}} |
خطأ لوا في السطر 124: attempt to index field 'wikibase' (a nil value). |
ملاحظة[عدل]
- عند عدم وجود أي وصلات لغات أخرى في عنصر ويكي بيانات لن تظهر
[لغات أخرى]
ولن تظهر وصلة عربية.- وسيتم إضافة الصفحة في: تصنيف:صفحات بها قالب:Ill-WD2 دون وصلات لغات
تصنيفات التتبع[عدل]
- تصنيف:صفحات بها قالب:Ill-WD2 دون وصلات لغات (0 صفحة)
- تصنيف:صفحات بها وصلات للإزالة (0 صفحة)
- تصنيف:وصلات إنترويكي بحاجة لمراجعة (0 صفحة)
وسائط[عدل]
local p = {} local wd2 = require('Module:wikidata2') local Frame; local Category = {} Category["remove"] = " [[تصنيف:صفحات بها وصلات للإزالة]]" Category["review"] = " [[تصنيف:وصلات إنترويكي بحاجة لمراجعة|%s]]" Category["nositelinks"] = " [[تصنيف:صفحات بها قالب:Ill-WD2 دون وصلات لغات|%s]]" Category["add"] = "[[تصنيف:صفحات بها وصلات إنترويكي|%s]]" function makeCategory(key,args) line = Category[key] if key ~= 'add' and Frame.args["nocat"] and Frame.args["nocat"] ~= '' then return '' end return line end function labelIn(langcode,id) local label, lange = mw.wikibase.getLabelWithLang( id ) if lange == langcode then return label else --mw.log("Module:Ill-WD2: label = " ..label .. "lange = " ..lange .. "langcode = " .. langcode) return "" end end function maketext(String) local y = Frame.args["y"] local text = Frame.args["text"] or Frame.args["نص"] if text and text ~= "" then return text elseif y and y ~= "" then String2 = mw.ustring.gsub( String , '–', '-' ) ca = mw.ustring.match( String2 , "%d%d%d%d%-%d%d%d%d", 1 ) or mw.ustring.match( String2 , "%d%d%-%d%d%d%d", 1 ) or mw.ustring.match( String2 , "%d%d%d%d%-%d%d", 1 ) ca = ca or mw.ustring.match( String2 , "%d%d%d%d", 1 ) or String return ca end return String end function make_suffix(id , target_Site , target_Link , sitelinks_count, fromlua) if sitelinks_count == 0 then if fromlua == "" then return string.format(makeCategory("nositelinks") , ( id or "1" ) ) end end local other_lang = '"'.. id ..'" في لغات أخرى' --local other_lang = '<span title="'.. other_lang ..'">لغات أخرى</span>' --local other_lang = mw.text.tag('span', {title= other_lang }, "لغات أخرى") local other_lang = '<sup class=reference title="'.. other_lang..'">[لغات أخرى]</sup>' local other_lang_text = ' [[d:'.. id ..'#sitelinks-wikipedia|' ..other_lang..']]' --local suff = '<span class="noprint" style="font-size: smaller; font-style: normal; font-weight: normal;">' .. other_lang_text.. '</span>' local suff = '' .. mw.text.tag('span' , {class= "noprint" , style="font-size: smaller; font-style: normal; font-weight: normal;"} , other_lang_text) if (target_Link and target_Link ~= "") and (target_Site and target_Site ~= "") then --language = '{{#language:'.. target_Site ..'|ar}}' language = Frame:callParserFunction('#language', target_Site , "ar") suff = '[[:'.. target_Site ..':'.. target_Link ..'|<sup class=reference title="'.. target_Link ..'">['.. language ..']</sup>]]' end --suffe = Frame:preprocess(" " .. suff) --suff suffe = " " .. suff tt = string.format (makeCategory("add") , ( id or "1" ) ) if fromlua == "" then tt = "" end return suffe .. tt end function make_ar_link(title, suffix,id, sitelinks_count,fromlua) local text = maketext(title) local link; local tit = mw.title.new(title) local cate = string.format (makeCategory("review") , ( id or "1" ) ) local nositelinks = string.format(makeCategory("nositelinks") , ( id or "1" ) ) if fromlua == "" then cate = "" nositelinks = "" end if tit and tit.exists then link = text .. suffix .. cate mw.log( 'Module:Ill-WD2: review "' .. title .. '", id: ' .. id) --mw.log(cate) else title = mw.ustring.gsub(title , "^تصنيف:", "") text = mw.ustring.gsub(text , "^تصنيف:", "") link = '[[' .. title .. "|" .. text .. "]]" .. suffix end if sitelinks_count == 0 then link = text .. suffix end return link end function sitelink( id , site ) local site = site or 'arwiki' local link = mw.wikibase.sitelink( id , site ) or "" --mw.log("Module:Ill-WD2: mw.wikibase.sitelink : " .. link) return link end function p.link(frame) Frame = frame; local target_label; local ar_link; local en_label = "" local pframe = frame:getParent() Frame = pframe local fromlua = pframe.args["fromlua"] or "" local id = pframe.args["id"] or pframe.args[2] if not id or id == "" then return "No ID" end local lab_1 = pframe.args[1] or pframe.args["label"] local target_SiteLink = "" local target = pframe.args["target"] or pframe.args["لغ"] or "" if pframe.args["en"] and pframe.args["en"] ~= "" then target = "en" --mw.log("Module:Ill-WD2: target = en" ) elseif target == "en" then en_label = labelIn("en",id) end if target ~= "" then target_SiteLink = sitelink( id , target .. "wiki" ) end local SiteLink = mw.wikibase.sitelink( id ) local sitelinks_count = wd2.countSiteLinks( id ) if SiteLink then Link = '[[' .. SiteLink .. "|" .. maketext(SiteLink) .. "]]" mw.log("Module:Ill-WD2: remove: " .. id ) return Link .. makeCategory("remove") end local ar_label = labelIn("ar",id) local suffix = make_suffix(id , target , target_SiteLink , sitelinks_count, fromlua ) if lab_1 and lab_1 ~= "" then ar_link = lab_1 elseif ar_label ~= "" then ar_link = ar_label end if ar_link and ar_link ~= "" then --mw.log("Module:Ill-WD2: ar_link : " .. ar_link) return make_ar_link(ar_link , suffix , id , sitelinks_count,fromlua ) end if en_label ~= "" then --mw.log("Module:Ill-WD2: en_label " .. en_label) return maketext(en_label) .. make_suffix(id , "" , "" , sitelinks_count , fromlua ) end if target ~= "" and target_SiteLink ~= "" then --mw.log("Module:Ill-WD2: target " .. target .. ": " .. target_SiteLink) return maketext(target_SiteLink) .. suffix end --mw.log("Module:Ill-WD2: nothing en_label: " .. en_label ) return "" end return p