「テンプレート:Infobox/doc」の版間の差分

提供: Yourpedia
移動: 案内検索
(テンプレ修正対応)
1行目: 1行目:
'''Infobox'''テンプレートは、Infoboxを作成するための[[メタテンプレート]]です。Wikipediaの同名テンプレートとの互換を実現するために作成したものですが、引数とその指定方法に違いがあるため、移入には調整を要します。
+
<noinclude>{{Documentation subpage}}</noinclude>
 +
'''Infobox'''テンプレートは、Infoboxを作成するための[[メタテンプレート]]です。Wikipediaの同名テンプレートとの互換を実現するために作成しました。
  
 
== 引数一覧 ==
 
== 引数一覧 ==
 
*body全体にかかる引数
 
*body全体にかかる引数
 
**'''bodyclass''':cssクラスを指定します。既定値は「infobox」に設定されており、引数を指定すると「infobox (bodyclass)」という名前のクラスになります。
 
**'''bodyclass''':cssクラスを指定します。既定値は「infobox」に設定されており、引数を指定すると「infobox (bodyclass)」という名前のクラスになります。
**'''bodystyle''':スタイルを指定します。既定値として幅(width)が22emに設定されており、引数を指定するとスタイルが追加されます。
+
**'''bodystyle''':スタイルを指定します。既定値として「width:22em; clear:right; float:right」が設定されており、引数を指定するとスタイルが追加・修正されます。
 
*最下部の、テンプレート本体への内部リンク
 
*最下部の、テンプレート本体への内部リンク
 
**'''name'''または'''tnavbar''':「テンプレート:ほげほげ」の「ほげほげ」にあたる文字列を入力します。
 
**'''name'''または'''tnavbar''':「テンプレート:ほげほげ」の「ほげほげ」にあたる文字列を入力します。
**'''nameflag'''または'''tnavbarflag''':引数の入力があれば'''name'''または'''tnavbar'''が出力表示され、なければ表示されません。
+
**'''nameflag'''または'''tnavbarflag''':引数にNULL値を指定すると、テンプレートへのリンクが出力表示されなくなります。
*引数「child」を指定することによって、別のInfobox内に組込み可能なInfobox(Infoboxからtableタグをなくした版)にすることは、今のところ、できません。
+
 
+
*以下で、'''☆印'''は、入力があればテーブルの中に当該行が表示され、なければ表示されなくなる引数です。
+
**テーブルの各行の表示・非表示は、データ(data)の入力の有無ではなく、ヘッダ(header)・ラベル(label)またはフラグ(flag)の入力の有無によって制御する仕組みになっています。
+
**ヘッダとラベルの入力は出力表示にも利用されます。フラグの入力は内部的な行の表示制御のみに使用します。'''ヘッダ・ラベル・フラグに入力する内容は任意ですが、refタグを使用すると表示が壊れるため、使用しないでください'''。なお、データには使用しても大丈夫です。
+
 
{{Multicol}}
 
{{Multicol}}
 
=== コンテンツ ===
 
=== コンテンツ ===
 
{{Infobox
 
{{Infobox
|title          = title☆
+
|title          = title
|above          = above☆
+
|titlestyle      = background-color:#ccf
 +
|above          = above
 
|abovestyle      = background-color:#ccf
 
|abovestyle      = background-color:#ccf
 
|headerstyle    = background-color:#ccf
 
|headerstyle    = background-color:#ccf
|subheaderflag  = subheaderflag
+
|subheader      = subheader<br />&nbsp;
|subheader      = subheader subheaderflag☆<br /> 
+
|subheader2      = subheader2<br />&nbsp;
|subheaderflag2  = subheaderflag2
+
|image          = image<br />&nbsp;
|subheader2      = subheader2 subheaderflag2☆<br /> 
+
|caption        = caption<br />&nbsp;
|imageflag      = imageflag
+
|image2          = image2<br />&nbsp;
|image          = image imageflag☆<br /> 
+
|caption2        = caption2<br />&nbsp;
|caption        = caption 同上☆
+
|header1  = header1
|imageflag2      = imageflag2
+
|label1  = label1
|image2          = image2 imageflag2☆<br /> 
+
|caption2        = caption2 同上☆
+
|header1  = header1☆
+
|label1  = label1☆
+
 
|data1    = data1
 
|data1    = data1
|header2  = header2☆
+
|header2  = header2
|label2  = label2☆
+
|label2  = label2
 
|data2    = data2
 
|data2    = data2
 
|header3  = …
 
|header3  = …
 
|label3  = …
 
|label3  = …
 
|data3    = …
 
|data3    = …
|header50 = header50☆
+
|header40 = header40
|label50   = label50☆
+
|label40   = label40
|data50   = data50
+
|data40   = data40
|belowflag  = belowflag
+
|below      = below
|below      = below belowflag☆
+
 
|belowstyle = background-color:#ccf
 
|belowstyle = background-color:#ccf
|tnavbarflag = tnavbarflag
+
|tnavbarflag =
}}
+
{{Multicol-break}}
+
=== クラス ===
+
{{Infobox
+
|title          = titleclass
+
|above          = aboveclass
+
|abovestyle      = background-color:#ccf
+
|headerstyle    = background-color:#ccf
+
|subheaderflag  = subheaderflag
+
|subheader      = subheaderclass,<br />subheaderrowclass
+
|subheaderflag2  = subheaderflag2
+
|subheader2      = subheaderclass,<br />subheaderclass2
+
|imageflag      = imageflag
+
|image          = imageclass,<br />imagerowclass
+
|caption        = 同上
+
|imageflag2      = imageflag2
+
|image2          = imageclass,<br />imagerowclass2
+
|caption2        = 同上
+
|header1  = class1
+
|label1  = rowclass1
+
|data1    = class1, rowclass1
+
|header2  = class2
+
|label2  = label2
+
|data2    = class2, rowclass2
+
|header3  = …
+
|label3  = …
+
|data3    = …
+
|header50  = class50
+
|label50  = rowclass50
+
|data50    = class50, rowclass50
+
|belowflag  = belowflag
+
|below      = belowclass
+
|belowstyle = background-color:#ccf
+
|tnavbarflag = tnavbarflag
+
 
}}
 
}}
 
{{Multicol-break}}
 
{{Multicol-break}}
85行目: 43行目:
 
{{Infobox
 
{{Infobox
 
|title          = titlestyle
 
|title          = titlestyle
 +
|titlestyle      = background-color:#ccf
 
|above          = abovestyle
 
|above          = abovestyle
 
|abovestyle      = background-color:#ccf
 
|abovestyle      = background-color:#ccf
 
|headerstyle    = background-color:#ccf
 
|headerstyle    = background-color:#ccf
|subheaderflag  = subheaderflag
 
 
|subheader      = subheaderstyle,<br />subheaderstyle1
 
|subheader      = subheaderstyle,<br />subheaderstyle1
|subheaderflag2  = subheaderflag2
 
 
|subheader2      = subheaderstyle,<br />subheaderstyle2
 
|subheader2      = subheaderstyle,<br />subheaderstyle2
|imageflag      = imageflag
+
|image          = imagestyle,<br />imagestyle1
|image          = imagestyle<br /> 
+
|caption        = captionstyle,<br />captionstyle1
|caption        = captionstyle
+
|image2          = imagestyle,<br />imagestyle2
|imageflag2      = imageflag2
+
|caption2        = captionstyle,<br />captionstyle2
|image2          = imagestyle<br /> 
+
|caption2        = captionstyle
+
 
|header1  = headerstyle
 
|header1  = headerstyle
 
|label1  = labelstyle
 
|label1  = labelstyle
107行目: 62行目:
 
|label3  = …
 
|label3  = …
 
|data3    = …
 
|data3    = …
|header50 = 同上
+
|header40 = 同上
|label50   = 同上
+
|label40   = 同上
|data50   = 同上
+
|data40   = 同上
|belowflag  = belowflag
+
 
|below      = belowstyle
 
|below      = belowstyle
 
|belowstyle = background-color:#ccf
 
|belowstyle = background-color:#ccf
|tnavbarflag = tnavbarflag
+
|tnavbar =
 
}}
 
}}
 
{{multicol-end}}
 
{{multicol-end}}
 
{{Clear}}
 
{{Clear}}
== 移入時の調整手順 ==
+
== Infobox使用テンプレートの移入時調整手順 ==
=== Infobox使用テンプレートの修正 ===
+
*条件文は、表示崩れの原因になるため、除去します。
*フラグで行表示を制御しているデータ項目(subheader、subheader2、image、caption、image2、caption2、below、tnavbar)は、それぞれの項目に対応するフラグに値を入力しないと出力表示されない状態になっていますので、引数を定義して、初期値を設定してください。例えば、メタ引数「image」について引数「画像」の入力を想定している場合、「image」の表示を制御するフラグ「imageflag」について、
+
*スタイルの設定がやや複雑に書かれていて、title行やsubheader行、caption行が活用されていない場合などは、入力先を整理して簡潔に書き直した方がいいと思います。
:<code><nowiki>|imageflag = {{{画像フラグ|画像フラグ}}}</nowiki></code>
+
*最下部のテンプレートへのリンクを表示したくない場合は、nameflagないしtnavbarflagの引数にNULL値を指定します。表示したい場合は、既にnameないしtnavbarが入力指定されていれば、そのままで問題ないと思いますが、入力指定がなければ、テンプレート名を入力指定します。
:のように記述を追加します。引数名は例示ですが、なるべく『対応するデータ項目と同じ引数名+「フラグ」』のような引数名にし、同じ文字列を初期値にしておくことをお勧めします。メタ引数「tnavbar」については、テンプレートの作成時に表示・非表示を固定してもいいと思います。下記は、「表示」で固定した例です。
+
 
:<code><nowiki>|tnavbarflag = tnavbarflag</nowiki></code>
+
=== 限界 ===
*ラベルで行表示を制御しているデータ項目(label1 - label50、data1 - data50)は、メタ引数label1-label50に固定の値が入力されていると、常に出力表示される状態になっています。入力がないときに行を非表示にしたい場合は、もとの入力値を初期値とした引数の定義を追加してください。例えば、メタ引数「label1」について
+
*ラベル付データ行は40行あり、それを超える行は表示されなくなります。
:<code><nowiki>|label1 = 生年月日</nowiki></code>
+
*ラベル付データ行のラベルの列を消してデータを表示することはできません。
:と入力されている場合、
+
*引数「child」を指定することによって、別のInfobox内に組込み可能なInfobox(Infoboxからtableタグをなくした版)にする機能はありません。
:<code><nowiki>|label1 = {{{生年月日ラベル|生年月日}}}</nowiki></code>
+
*行の表示・非表示は、制御できません。条件文が使えない前提があり、また<nowiki>class{{{変数|}}}="hiddenStructure"</nowiki>のように書いて、「変数」に入力があったときコードを壊して出力表示させるというやり方を使うと、レイアウトが崩れ易くなるためです。
:のように書き直します。引数名は例示ですが、なるべく『もとのラベルと同じ引数名+「ラベル」』のような引数名にしておくことをお勧めします。入力がなくても行を表示したままで支障なければ、特に修正を要しません。
+
:とはいえ、或る行に何も入力がなければ、行が細く表示されますので、
*ヘッダで行表示を制御している項目(title、above、header1-header50)についても、ラベルと同様です。
+
:*画像の欄は、「画像ファイル」と「画像サイズ」と「画像コメント」を別々に入力する仕様にするよりも、「<nowiki>[[画像:画像ファイル{{!}}画像サイズ{{!}}画像コメント]]</nowiki>」をまとめて入力する仕様にする
*Infobox使用テンプレートの中で、条件文が使用されている場合は、条件文を使わないように適宜書き直します。
+
:*外部リンクの欄を作るときは、「URL」と「サイト名」を別々に入力する仕様にするよりも、「<nowiki>[URL サイト名]</nowiki>」をまとめて入力する仕様にする
*テンプレートの修正例を2例挙げておきます。
+
:など工夫すれば、それほど目立たなくなると思います。
**[https://ja.yourpedia.org/mediawiki/index.php?title=%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%3A%E5%9F%BA%E7%A4%8E%E6%83%85%E5%A0%B1_%E8%BB%8D%E4%BA%BA&action=historysubmit&type=revision&diff=354463&oldid=93818 「テンプレート:基礎情報 軍人」の版間の差分]
+
**[https://ja.yourpedia.org/mediawiki/index.php?title=%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%3A%E5%9F%BA%E7%A4%8E%E6%83%85%E5%A0%B1_%E6%AD%A6%E5%A3%AB&action=historysubmit&type=revision&diff=354462&oldid=174866 「テンプレート:基礎情報 武士」の版間の差分]
+
=== テンプレート使用記事の修正 ===
+
*フラグで行表示を制御しているデータ項目(subheader、subheader2、image、caption、image2、caption2、below、tnavbar)について、データの入力がなく、行を非表示にしたい場合、そのデータ項目に対応するフラグにNULL値を入力する記述を追加します。例えば、フラグ「画像フラグ」で表示を制御しているデータ「画像」の入力がないときは、
+
:<code><nowiki>|画像フラグ = </nowiki></code>
+
:のように記述を追加します。表示したままで支障なければ、特に修正を要しません。
+
*ラベルで行表示を制御しているデータ項目(label1 - label50、data1 - data50)について、データ項目の入力がなく、行を非表示にしたい場合、そのデータ項目に対応するラベルにNULL値を入力する記述を追加します。例えば、ラベル「生年月日ラベル」で表示を制御しているデータ項目「生年月日」の入力がないときは、もし
+
:<code><nowiki>|生年月日 = </nowiki></code>
+
:というコードがあれば、
+
:<code><nowiki>|生年月日ラベル = </nowiki></code>
+
:のように書き直し、もしもともとコードがなければ、記述を追加します。表示したままで支障なければ、特に修正を要しません。
+
*ヘッダで行表示を制御している項目(title、above、header1-header50)についても、ラベルと同様です。
+
*記事の修正例を2例挙げておきます。
+
**[https://ja.yourpedia.org/mediawiki/index.php?title=%E8%BE%BB%E6%94%BF%E4%BF%A1&type=revision&diff=354460&oldid=69576 「辻政信」の版間の差分] - 「テンプレート:基礎情報 軍人」の使用例
+
**[https://ja.yourpedia.org/mediawiki/index.php?title=%E7%AB%8B%E8%8A%B1%E5%AE%97%E8%8C%82&action=historysubmit&type=revision&diff=354458&oldid=174867 「立花宗茂」の版間の差分] - 「テンプレート:基礎情報 武士」の使用例
+
=== Infobox使用テンプレートの説明文書の修正 ===
+
*上記でInfobox使用テンプレートを修正した際に追加した、フラグ・ラベルの引数およびその初期値に関する説明を追加します。
+
  
 
== フォーマット ==
 
== フォーマット ==
<pre style="overflow:auto">{{Infobox
+
<pre style="overflow:auto">
|bodyclass =
+
{{Infobox
|bodystyle =
+
|bodyclass=
 
+
|bodystyle=
|title     =
+
|title=
|titleclass =
+
|titlestyle=
|titlestyle =
+
|above=
|above     =
+
|abovestyle=
|aboveclass =
+
|subheader=
|abovestyle =
+
|subheaderstyle=
 
+
|subheader2=
|subheaderflag    =
+
|subheaderstyle2=
|subheader         =
+
|image=
|subheaderclass    =
+
|imagestyle=
|subheaderrowclass =
+
|caption=
|subheaderstyle   =
+
|captionstyle=
 
+
|image2=
|subheaderflag2    =
+
|imagestyle2=
|subheader2         =
+
|caption2=
|subheaderrowclass2 =
+
|captionstyle2=
 
+
|headerstyle=
|imageflag    =
+
|labelstyle=
|image         =
+
|datastyle=
|imageclass    =
+
|header1=
|imagerowclass =
+
|label1=
|imagestyle   =
+
|data1=
|caption       =
+
|header2=
|captionstyle =
+
|label2=
 
+
|data2=
|imageflag2    =
+
|image2        =
+
|imagerowclass2 =
+
|caption2      =
+
 
+
|headerstyle =
+
|labelstyle =
+
|datastyle   =
+
 
+
|header1   =
+
|class1    =
+
|label1   =
+
|rowclass1 =
+
|data1     =
+
 
+
|header2   =
+
|class2    =
+
|label2   =
+
|rowclass2 =
+
|data2     =
+
 
.
 
.
 
.
 
.
 
.
 
.
|header50    =
+
|header40=
|class50    =
+
|label40=
|label50    =
+
|data40=
|rowclass50  =
+
|below=  
|data50      =
+
|belowstyle=
 
+
|tnavbar=
|belowflag  =  
+
|below       =
+
|belowclass  =
+
|belowstyle =
+
 
+
|tnavbarflag = tnavbarflag
+
|tnavbar     =
+
 
}}
 
}}
 
</pre>
 
</pre>

2018年5月27日 (日) 00:56時点における版

Tech Doc このページは、テンプレートの解説ページです。このページを直接参照すると、リンク先のページ名やURLを変数で指定しているリンク赤リンクになる場合がありますが、リンク先を指定し直さなくてよい場合もあります。リンクの設定の不具合に関する質問等は親ページの会話ページに投稿して下さい。

Infoboxテンプレートは、Infoboxを作成するためのメタテンプレートです。Wikipediaの同名テンプレートとの互換を実現するために作成しました。

引数一覧

  • body全体にかかる引数
    • bodyclass:cssクラスを指定します。既定値は「infobox」に設定されており、引数を指定すると「infobox (bodyclass)」という名前のクラスになります。
    • bodystyle:スタイルを指定します。既定値として「width:22em; clear:right; float:right」が設定されており、引数を指定するとスタイルが追加・修正されます。
  • 最下部の、テンプレート本体への内部リンク
    • nameまたはtnavbar:「テンプレート:ほげほげ」の「ほげほげ」にあたる文字列を入力します。
    • nameflagまたはtnavbarflag:引数にNULL値を指定すると、テンプレートへのリンクが出力表示されなくなります。

コンテンツ

title
above
subheader
 
subheader2
 
image
 
caption
 
image2
 
caption2
 
header1
label1data1
header2
label2data2
header40
label40data40
below

スタイル

titlestyle
abovestyle
subheaderstyle,
subheaderstyle1
subheaderstyle,
subheaderstyle2
imagestyle,
imagestyle1
captionstyle,
captionstyle1
imagestyle,
imagestyle2
captionstyle,
captionstyle2
headerstyle
labelstyledatastyle
同上
同上同上
同上
同上同上
belowstyle
[[テンプレート:|テンプレートを表示]]


Infobox使用テンプレートの移入時調整手順

  • 条件文は、表示崩れの原因になるため、除去します。
  • スタイルの設定がやや複雑に書かれていて、title行やsubheader行、caption行が活用されていない場合などは、入力先を整理して簡潔に書き直した方がいいと思います。
  • 最下部のテンプレートへのリンクを表示したくない場合は、nameflagないしtnavbarflagの引数にNULL値を指定します。表示したい場合は、既にnameないしtnavbarが入力指定されていれば、そのままで問題ないと思いますが、入力指定がなければ、テンプレート名を入力指定します。

限界

  • ラベル付データ行は40行あり、それを超える行は表示されなくなります。
  • ラベル付データ行のラベルの列を消してデータを表示することはできません。
  • 引数「child」を指定することによって、別のInfobox内に組込み可能なInfobox(Infoboxからtableタグをなくした版)にする機能はありません。
  • 行の表示・非表示は、制御できません。条件文が使えない前提があり、またclass{{{変数|}}}="hiddenStructure"のように書いて、「変数」に入力があったときコードを壊して出力表示させるというやり方を使うと、レイアウトが崩れ易くなるためです。
とはいえ、或る行に何も入力がなければ、行が細く表示されますので、
  • 画像の欄は、「画像ファイル」と「画像サイズ」と「画像コメント」を別々に入力する仕様にするよりも、「[[画像:画像ファイル{{!}}画像サイズ{{!}}画像コメント]]」をまとめて入力する仕様にする
  • 外部リンクの欄を作るときは、「URL」と「サイト名」を別々に入力する仕様にするよりも、「[URL サイト名]」をまとめて入力する仕様にする
など工夫すれば、それほど目立たなくなると思います。

フォーマット

{{Infobox
|bodyclass=
|bodystyle=
|title=
|titlestyle=
|above=
|abovestyle=
|subheader=
|subheaderstyle=
|subheader2=
|subheaderstyle2=
|image=
|imagestyle=
|caption=
|captionstyle=
|image2=
|imagestyle2=
|caption2=
|captionstyle2=
|headerstyle=
|labelstyle=
|datastyle=
|header1=
|label1=
|data1=
|header2=
|label2=
|data2=
.
.
.
|header40=
|label40=
|data40=
|below= 
|belowstyle=
|tnavbar=
}}