模板:Excerpt
此模板使用Lua语言: |
这种模板用于在其他页面中重复使用部分页面。这种做法有以下优点:
- 通过避免必须多次更新的重复内容而减少维护工作
- 通过鼓励编辑合并相关内容来提高内容质量,而不是在不同的开发阶段有多个版本。
- 通过引导贡献者到一个地方编辑来促进合作。
但它也具有以下缺点 :
- 因为您必须转到子文章才能对主要文章进行更改
- 由于代码生成的问题,一篇文章的摘录格式不能完美地融入一篇新文章,存在段落丢失问题
- 对子文章的更改不会出现在主文章的编辑监视列表中
This template extends the capabilities of the built-in normal transclusion and labeled section transclusion.
Usage
[编辑]Basic usage
[编辑]{{Excerpt|Page title}}
— Transclude the lead section (example){{Excerpt|Page title|Section title}}
— Transclude a specific section, excluding any subsections (example)
Parameters
[编辑]1
orarticle
orpage
— Required. Name of the article or page to transclude. By default the lead section is transcluded (example). If the page contains an infobox, the image and caption of the infobox will be transcluded (unlessfiles=0
is set). Also, templates listed at Module:Excerpt/config will not be transcluded (unless requested explicitly with|templates=
, see below).2
orsection
orfragment
— Name of the section to transclude (example) or of the<section>
tag to transclude (example). Must be marked with<section begin=Name of the fragment/>
and<section end=Name of the fragment/>
in the transcluded page. Notice that this template provides other ways of targeting specific fragments of a page without having to resort to section tags.only
— Elements to transclude. By default all elements are transcluded (except templates blacklisted at Module:Excerpt/config)only=file
— Transclude only the first fileonly=files
— Transclude only filesonly=list
— Transclude only the first listonly=lists
— Transclude only listsonly=table
— Transclude only the first tableonly=tables
— Transclude only tables (example)only=template
— Transclude only the first templateonly=templates
— Transclude only templatesonly=paragraph
— Transclude only the first paragraphonly=paragraphs
— Transclude only paragraphs
paragraphs
— Paragraphs to transclude. By default all paragraphs are transcluded.paragraphs=0
— Transclude no paragraphsparagraphs=1
— Transclude the first paragraphparagraphs=2
— Transclude the second paragraphparagraphs=1,3
— Transclude the first and third paragraphsparagraphs=1-3
— Transclude the first, second and third paragraphsparagraphs=1-3,5
— Transclude the first, second, third and fifth paragraphsparagraphs=-1
— Transclude all paragraphs except the firstparagraphs=-2
— Transclude all paragraphs except the secondparagraphs=-1,3
— Transclude all paragraphs except the first and thirdparagraphs=-1-3
— Transclude all paragraphs except the first, second and thirdparagraphs=-1-3,5
— Transclude all paragraphs except the first, second, third and fifth
lists
— Lists to transclude. By default all lists are transcluded. Same syntax as when transcluding paragraphs.files
— Files to transclude. By default all files are transcluded. Same syntax as when transcluding paragraphs, but also:files=A.jpg
— Transclude the file named 'A.jpg'files=A.jpg, B.png, C.gif
— Transclude the files named 'A.jpg', 'B.png' and 'C.gif'files=.+%.png
— Transclude all PNG filesfiles=-A.jpg
— Transclude all files except the one named 'A.jpg'files=-A.jpg, B.png, C.gif
— Transclude all files except the ones named 'A.jpg', 'B.png' and 'C.gif'files=-.+%.png
— Transclude all non-PNG files
tables
— Tables to transclude. By default all tables are transcluded. Same syntax as when transcluding paragraphs, but also:tables=Stats2020
— Transclude the table with id 'Stats2020'tables=Stats2020, Stats2019, Stats2018
— Transclude the tables with ids 'Stats2020', 'Stats2019' and 'Stats2018'tables=-Stats2020
— Transclude all tables except the one with id 'Stats2020'tables=-Stats2020, Stats2019, Stats2018
— Transclude all tables except the ones with ids 'Stats2020', 'Stats2019' and 'Stats2018'
templates
— Templates to transclude. By default all templates are transcluded except those blacklisted at Module:Excerpt/config. Using a hyphen before a comma-delimited list of templates adds those templates to the blacklist.templates=-Ocean
— Add the template 'Ocean' to the blacklisttemplates=-Ocean, Nature
— Add the templates 'Ocean' and 'Nature' to the blacklisttemplates=Infobox person
— Ignore the blacklist and transclude the template 'Infobox person'templates=Infobox person, Ocean
— Ignore the blacklist and transclude the templates 'Infobox person' and 'Ocean'templates=.*
— Ignore the blacklist and transclude all templates
this
— Change the initial text of the hatnote. For example, if the transcluded content is a gallery, you can setthis=This gallery is
so that the hatnote reads "This gallery is an excerpt from..." (example).displaytitle
— Change the text of the link in the hatnote. For example, add italics, subscripts, etc.hat=no
— Hide the hatnote "This section is an excerpt from..."bold=yes
— Preserve bold text.links=no
— Remove all wikilinks.quote=yes
— Wrap the excerpt with<blockquote>
tags.inline=yes
— Remove the hatnote and<div>
tags around the excerpt, to use it inside other text.onlyfreefiles=no
— Enables transclusion of non-free files.briefdates=yes
— Abbreviate birth and death information to (YYYY-YYYY) formatreferences=no
— Remove all references.subsections=yes
— Include subsections of the transcluded section. Notice that if the transclusion is done from a section level 3, and the transcluded subsections are level 3 too, then the transcluded subsections will show with the same hierarchy as the transcluding section, which is probably not desirable, so use with caution.
Replacing Template:Main
[编辑]Sections are often summaries of more precise subpages (generally linked with Template:Main). Sometimes it's convenient to replace the content of such sections for excerpts of the subpages (after merging any valuable content of the section into the subpage). In such cases, an efficient way to proceed is:
- Open the section in one tab and the subpage in another.
- Edit both.
- Copy the text of the section and paste it below the lead section of the subpage.
- Delete repeated content and adjust using common sense.
- Save the changes in the subpage with an edit summary like: Bring content from [[Page]].
- Back to the section, delete all content and replace it for an excerpt of the subpage.
- Save the changes in the section with an edit summary like: Move content to [[Subpage]] and leave an excerpt.
Refinement using inclusion control
[编辑]Sometimes, a passage will almost fit for a transclusion, but not quite. In these cases, you can edit the source page to add <noinclude>...</noinclude>
tags around content you don't want in the excerpt and <includeonly>...</includeonly>
tags around content you want only in the excerpt.
For instance, the page COVID-19 misinformation begins The COVID-19 pandemic has resulted in misinformation.... However, when excerpting this lead to the misinformation section of COVID-19 pandemic, we don't need to specify which pandemic we're referring to. Therefore, the code The <noinclude>[[COVID-19 pandemic]]</noinclude><includeonly>pandemic</includeonly> has resulted in [[misinformation]]
can be used at the misinformation page, so that it will appear at the pandemic page as The pandemic has resulted in misinformation....
For pages with a high volume of edits, it may be a good idea to leave a hidden comment explaining why the tags are there, so that no one will be tempted to remove them.
Please note that when the </noinclude>
tag is wrapped into a new line, a character next to it would be interpreted as a line beginning. This can lead to some formatting problems. For example, when a </noinclude>
at line beginning is succeeded by a whitespace character, the page engine would translate this as a leading space that renders the subsequent paragraph in code block and monospaced font with preserved formatting. For this reason, no spaces should separate the </noinclude>
tag from the text it precedes.
Compared to #section
[编辑]For simple cases of transcluding sections of articles, the {{#section}}, {{#section-x}}, and {{#section-h}} (abbreviated {{#lst}}, {{#lstx}}, and {{#lsth}})) parser functions can be used instead of this template. {{#lsth:article|fragmentname}} will transclude the section of "article" with the header "fragmentname", and {{#lsth:article}} will transclude the lead section of "article". Excerpting only specific paragraphs can be done by marking up the source article with <section begin=fragmentname/>...<section end=fragmentname/>
tags and using {{#lst:article|fragmentname}} to transclude those fragments, which is equivalent to using the |fragment=fragmentname
parameter with this template. {{#lsth:article|fragmentname}} can also be used to transclude everything but those fragments.
The text will not be trimmed of excess whitespace, there will not be a header (equivalent to |hat=no
, and all files, templates, tables, references, and subsections will be included unless the source article is marked up with <section begin=fragmentname/>...<section end=fragmentname/>
, <noinclude>...</noinclude>
, or <onlyinclude>...</onlyinclude>
tags. Self links will appear in bold.
Excerpt trees
[编辑]When a very general article uses excerpts from more specific articles, which in turn use excerpts from even more specific articles, then a tree structure emerges, called an "Excerpt tree".
Here you can navigate the main excerpt trees on the English Wikipedia. It's useful for editors interested in expanding or improving them. To navigate the trees, click the following button(S):
See also
[编辑]- Module:Excerpt
- Module:Excerpt/config
- Module:Transcluder
- Help:Transclusion#Drawbacks
- Category:Articles with excerpts, or Articles that link to "Template:Excerpt" (unsorted)
- Category:Articles with broken excerpts
- Help:Labeled section transclusion – A more efficient method for simple section transclusions
- Wikipedia:Transclusion#Selective transclusion – how to transclude one or more sections of an article or project page into another
- Wikipedia:Summary style#Synchronization
- Wikipedia:Manual of Style/Lead section
- Wikipedia:WikiProject Introductions
- {{Transcluded section}} – creates hatnote but does not transclude the section
- {{Transcluding article}} – transcludes one or more entire pages
- meta:Grants:Project/Rapid/Sophivorus/Excerpts - Grant to spread excerpts to various Wikipedias
- meta:Concise Wikipedia - Perennial new project proposal (see the comparison table at the bottom in particular)
- Single source of truth
- Excerpts: Modular and Reusable Content within Wikipedia - Video presentation about excerpts for Wikimania 2021
- {{Transclude lead excerpt}} and {{Transclude linked excerpt}} – templates designed for excerpt transclusion in portals
Template data
[编辑]此模板用于在条目中嵌入指定的另一条目的特定内容。
参数 | 描述 | 类型 | 状态 | |
---|---|---|---|---|
条目 | 1 article page | 要纳入的条目名或页面名
| 页面名称 | 必需 |
章节 | 2 section fragment | 要纳入的章节名称或<section>标签
| 字符串 | 可选 |
仅限 | only | 仅纳入指定的元素类型
| 字符串 | 可选 |
段落 | paragraphs paragraph | 要纳入的段落
| 字符串 | 可选 |
文件 | files file | 要纳入的文件
| 字符串 | 可选 |
表格 | tables table | 要纳入的表格
| 字符串 | 可选 |
列表 | lists list | 纳入的列表
| 字符串 | 可选 |
模板 | templates template | 纳入的模板
| 字符串 | 可选 |
参考文献 | references | 是否纳入参考文献
| 布尔 | 可选 |
子章节 | subsections | 是否纳入所请求章节的子章节
| 布尔 | 可选 |
Hatnote | hat | 是否包含hatnote
| 布尔 | 可选 |
粗体 | bold | 是否保留文字粗体格式
| 布尔 | 可选 |
维基内链 | links | 是否保留内链格式
| 布尔 | 可选 |
引用 | quote | 用<blockquote>标签包覆此节选
| 布尔 | 可选 |
This | this | Change the initial text of the hatnote
| 字符串 | 可选 |
显示标题 | displaytitle | Change the text of the link in the hatnote | 字符串 | 可选 |
内联 | inline | 移除节选中的hatnote和<div>标签,便于放在其他文本之中
| 布尔 | 可选 |
仅自由文件 | onlyfreefiles | 允许纳入非自由文件
| 布尔 | 可选 |
日期简化 | briefdates | 生卒信息简化为YYYY-YYYY格式
| 布尔 | 可选 |
CSS类 | class | 额外CSS类
| 字符串 | 可选 |