1

Mediawiki を使用して、いくつかの記事をフォーマットして、論理的に一緒に流れるようにしています。ここに私が持っているものがあります:

テンプレート A はベース テンプレートです。

ページ B はテンプレート A を使用するページです

ページ C は、ページ B の一部をトランスクルージョンしたページです

テンプレート A には次のようなものがあります。

<onlyinclude>

  <includeonly>'''Role'''</includeonly>
  {{{role}}}
</onlyinclude>

ページ B:

{{PageB|role=Admin}}  //Page B combined to avoid whitespace questions

ページ C:

{{:PageB}}  //Again name combined in order to avoid whitespace questions 

結果:

ページ B の「役割」部分であるページ C で期待される結果が得られます。

私が望んでいない部分は、ページ B にはテンプレート A の「役割」部分しかないということです。

希望:

私がやりたいことは、ページ B がテンプレート A のすべてを表示し、ページ C がページ B の関心のある部分のみをトランスクルージョンすることです。ページ B の各インスタンスを配置することは別として (テンプレート A は次のように作成されましたa...テンプレート...ページ B のすべてのバリエーション用) ページ B がトランスクルージョンされたときに含めたいのですが、テンプレート (テンプレート A) を使用してこれを行うにはどうすればよいですか? それは可能ですか?

4

1 に答える 1

0

あなたの質問を完全に理解できるかどうかはわかりませんが、明確にできるかどうか見てみましょう。あなたはTemplate:Role次の内容を持っています:

<onlyinclude><includeonly>'''Role'''</includeonly>{{{role}}}</onlyinclude>

どちらが返されるか:

役割{{{役割}}}

あなたはまたPage_B、次の内容を持っています:

B Some text<br />
{{Role|role=Admin}}<br />
B Some more text<br />
B And more text

次のように表示されます。

Bいくつかのテキスト
役割管理者
Bいくつかのより多くのテキスト
Bそしてより多くのテキスト

次に、次Page_Cのコンテンツがあります。

{{:Page_B}}<br />
C Some text<br />
C Some more text

これは次のようになります:

Bいくつかのテキスト
役割管理者
Bいくつかのより多くのテキスト
Bそしてより多くのテキスト
Cいくつかのテキスト
Cいくつかのより多くのテキスト

だが!あなたはそれが次のように出てくることを望みます:

役割管理者
Bもう少しテキスト
Cもう少しテキストC
もう少しテキスト

これが正しければ、、、およびの理解<noinclude><onlyinclude>わずか<includeonly>に歪んでいます。 <noinclude>は、コンテンツが書き込まれているページにのみコンテンツを保持するために使用され、トランスクルージョンされません。<onlyinclude>主に、テンプレートを介して渡される内容を制御するのに役立ちます。エディターがトランスクルージョンされる内容を定義するのに役立ちます。空白や不要な改行の境界を設定するのに役立ちます。セット<includeonly>タグ間のコンテンツは、そのコンテンツが書き込まれたページに表示されないようにし、トランスクルージョンされたページにのみ表示されます。

したがって、Template:Role代わりに次のように表示する必要があります。

<onlyinclude>'''Role'''{{{role}}}</onlyinclude>

そして、Page_B代わりに次のようにする必要があります。

B Some text<br />
<onlyinclude>{{Role|role=Admin}}<br />
B Some more text<br /></onlyinclude>
B And more text

これがあなたの質問を満たし、あなたに役立つことを願っています。

于 2012-04-13T14:33:35.807 に答える