Help:ChangeContentModel/zh

The Special:ChangeContentModel page can be used to change the "content model" of a page. A content model, very broadly, is the format or type of a given page on a wiki. By default a page's content model is wikitext, a rich text format that makes use of wiki markup. Content models used on Wikimedia projects include css and javascript for storing code, wikibase-item for entries on Wikidata, and Campaign on Wikimedia Commons for upload campaigns such as Wiki Loves Monuments. A list of content models is available at content handlers. More technical information is available at Manual:ContentHandler.

All actions are logged to Special:Log/contentmodel, with a convenient "" link to undo changes if necessary. Users must have the  permission to be able to change content models. On Wikimedia projects this permission is currently granted to sysops.

背景
在以前，你只能在MediaWiki上创建一种页面类型，即维基文本：用维基文本标记编写的富文本文档. 这对于在维基百科上编写百科全书条目是合适的，但对于其他类型的内容，如源代码块、结构化数据内容或复杂的工作流程是不合适的. This is acceptable for writing encyclopedia entries on Wikipedia, but falls short for content of other types, such as blocks of source code, structured data content, or complex workflows.

随着2012年维基数据项目（以及维基资料库扩展）的出现，开发的ContentHandler分支允许创建wiki文档之外的页面. 从MediaWiki 1.21开始，ContentHandler是核心MediaWiki软件的一部分. As of MediaWiki 1.21, ContentHandler is a part of the core MediaWiki software.

Some generic content models include those meant for storing and presenting source code, but they can also be used to create customized editing interfaces. For example, instead of using a horrible mess of templates to structure content on a page, you could store the underlying data in a structured format such as JSON and then write a MediaWiki extension that builds a custom editing interface on top of this structured data. This approach is used by MassMessage to create delivery list pages and by CollaborationKit for creating WikiProjects. Although these extensions have their own workflows for creating pages, Special:ChangeContentModel can also be used.

As an alternative to setting content models on a page-by-page basis, you can specify alternative defaults for a given namespace. For example, the default content model in the Module namespace is ScribuntoContent. Similarly, you can enforce that a given content model is only used in a given namespace; ScribuntoContent can only be used in the Module namespace.

查看页面当前的内容模型
要查看一个页面当前的内容模型，点击侧边栏工具箱中的“”. 你也可以在网址上追加 前往相同的页面. You can also append  to a URL to get the same page.

更改页面的内容模型
Go to Special:ChangeContentModel (or follow the "change" link on the "Page information" page), enter the page name you wish to change. This can be a non-existent page if you wish to create a new page that uses a different content model from the default. Next, choose the content model you wish to change to. Click "" to make the change.

Note that not all conversions are possible. If you are trying to convert a page that already exists and the MediaWiki software cannot figure out how to re-interpret the current page's content, the content model will not be converted and you will get an error message. When this happens, it is recommended that you archive the old page and create the page anew in the new content model. For instance, you could rename "Project:Foo" to "Project:Foo/old" and then use Special:ChangeContentModel to create a new page at "Project:Foo". If possible, you should include a link to "Project:Foo/old" on the new page.

復原一個操作
All content model changes are logged at Special:Log/contentmodel on your wiki. To undo a change, go to the relevant entry in the log and click "". You will see a pre-filled form; click "" to carry out the revert. If you are viewing the page history and the most recent change was the one that changed the content model, you can use the undo feature to change the content model back. Rollback will also undo any content model changes.

Note that this may not always work, particularly if the page was edited after the content model was changed in such a way to make it incompatible with the old content model. When this happens, you will have to undo the edits that made it incompatible. Alternatively, you could carry out the content model change anew and archive the old content. Ideally, content model changes are few and far between. In most situations, a page will not have to change content model more than once.