API:Expandtemplates
Appearance
Ta strona jest częścią dokumentacji API akcji MediaWiki. |
GET request to expand all templates in the wikitext.
Wersja MediaWiki: | ≥ 1.12 |
Dokumentacja API
Przykład
Żądanie GET
A sample request to expand the Project:Sandbox template.
Odpowiedź
"expandtemplates": {
"wikitext": "\n<table class=\"plainlinks ombox ombox-notice\" role=\"presentation\" style=\"margin:auto;\"><tr><td class=\"mbox-image\">[[File:Sandbox.png|75px|alt=|link=]]</td><td class=\"mbox-text\">Welcome to this [[Wikipedia:About the Sandbox|sandbox page]]. Sandbox pages provide space to experiment with the process of editing Wikipedia pages.<br/>To edit this sandbox, click <span class=\"plainlinks\">'''[//en.wikipedia.org/w/index.php?title=API&action=edit here]'''</span> or the \"Edit\" tab along the top of this page..."
}
Przykładowy kod
Python
#!/usr/bin/python3
"""
expand_templates.py
MediaWiki API Demos
Demo of `Expandtemplates` module: Expand the Project:Sandbox template.
MIT License
"""
import requests
S = requests.Session()
URL = "https://en.wikipedia.org/w/api.php"
PARAMS = {
"action": "expandtemplates",
"text": "{{Project:Sandbox}}",
"prop": "wikitext",
"format": "json"
}
R = S.get(url=URL, params=PARAMS)
DATA = R.json()
print(DATA)
PHP
<?php
/*
expand_templates.php
MediaWiki API Demos
Demo of `Expandtemplates` module: Expand the Project:Sandbox template.
MIT License
*/
$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
"action" => "expandtemplates",
"text" => "{{Project:Sandbox}}",
"prop" => "wikitext",
"format" => "json"
];
$url = $endPoint . "?" . http_build_query( $params );
$ch = curl_init( $url );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$output = curl_exec( $ch );
curl_close( $ch );
echo( $output );
JavaScript
/*
expand_templates.js
MediaWiki API Demos
Demo of `Expandtemplates` module: Expand the Project:Sandbox template.
MIT License
*/
var url = "https://en.wikipedia.org/w/api.php";
var params = {
action: "expandtemplates",
text: "{{Project:Sandbox}}",
prop: "wikitext",
format: "json"
};
request.get({ url: url, qs: params }, function(error, res, body) {
if (error) {
return;
}
console.log(body);
});
MediaWiki JS
/*
expand_templates.js
MediaWiki API Demos
Demo of `Expandtemplates` module: Expand the Project:Sandbox template.
MIT License
*/
var params = {
action: "expandtemplates",
text: "{{Project:Sandbox}}",
prop: "wikitext",
format: "json"
},
api = new mw.Api();
api.get( params ).done( function ( data ) {
console.log( data );
} );
Możliwe błędy
Kod | Info |
---|---|
invalidtitle | Zły tytuł „title”. |
nosuchrevid | Nie ma wersji z identyfikatorem revid. |
revwrongpage | rrevid nie jest wersją strony title. |
Parameter history
- v1.26 - Wprowadzono
encodedjsconfigvars
,jsconfigvars
,modules
- v1.25 - Wprowadzono
revid
,properties
- v1.24 - Wprowadzono
prop
- v1.18 - Wprowadzono
includecomments
- v1.13 - Wprowadzono
generatexml
Dodatkowe informacje
- Special:ExpandTemplates - This is a special page that has two input boxes, one to enter wikitext, and another one to enter a page name. It produces in the
Result
window the expanded wikitext, i.e., templates, parser functions, and variables are expanded recursively; variables depending on page name are expanded based on the supplied page name. This is an intermediate result before a page is rendered after saving or pressingPreview
(or the resulting wikitext is submitted to other processing), helpful in understanding and debugging wikitext expansion. More information about this page can be found here: Help:ExpandTemplates
Zobacz też
- API:Parse - parse content of a page and obtain the output.
- API:Revisions - obtain revision information of page(s)
- Help:ExpandTemplates - contains detailed information on expanding templates