API:Expandtemplates
| API MediaWiki Action |
|---|
| Fonctions de base |
| Authentification |
| Comptes et utilisateurs |
| Opérations sur les pages |
|
| Chercher |
| Outils pour les développeurs |
| Tutoriels |
| v · d · e |
Requête GET pour développer tous les modèles du wikicode.
Documentation de l'API
action=expandtemplates
- This module requires read rights.
- Source: MediaWiki
- License: GPL-2.0-or-later
Expands all templates within wikitext.
- title
Title of the page.
- text
Wikitext to convert.
- This parameter is required.
- revid
Revision ID, for
{{REVISIONID}}and similar variables.- Type: integer
- prop
Which pieces of information to get.
Note that if no values are selected, the result will contain the wikitext, but the output will be in a deprecated format.
- wikitext
- The expanded wikitext.
- categories
- Any categories present in the input that are not represented in the wikitext output.
- properties
- Page properties defined by expanded magic words in the wikitext.
- volatile
- Whether the output is volatile and should not be reused elsewhere within the page.
- ttl
- The maximum time after which caches of the result should be invalidated.
- modules
- Any ResourceLoader modules that parser functions have requested be added to the output. Either jsconfigvars or encodedjsconfigvars must be requested jointly with modules.
- jsconfigvars
- Gives the JavaScript configuration variables specific to the page.
- encodedjsconfigvars
- Gives the JavaScript configuration variables specific to the page as a JSON string.
- parsetree
- The XML parse tree of the input.
- Values (separate with | or alternative): categories, encodedjsconfigvars, jsconfigvars, modules, parsetree, properties, ttl, volatile, wikitext
- includecomments
Whether to include HTML comments in the output.
- Type: boolean (details)
- showstrategykeys
Whether to include internal merge strategy information in jsconfigvars.
- Type: boolean (details)
- generatexml
- Deprecated.
Generate XML parse tree (replaced by prop=parsetree).
- Type: boolean (details)
- templatesandboxprefix
Template sandbox prefix, as with Special:TemplateSandbox.
- Separate values with | or alternative.
- Maximum number of values is 50 (500 for clients that are allowed higher limits).
- templatesandboxtitle
Parse the page using templatesandboxtext in place of the contents of the page named here.
- templatesandboxtext
Parse the page using this page content in place of the page named by templatesandboxtitle.
- templatesandboxcontentmodel
Content model of templatesandboxtext.
- One of the following values: GadgetDefinition, Graph.JsonConfig, Json.JsonConfig, JsonSchema, MassMessageListContent, NewsletterContent, Scribunto, SecurePoll, css, flow-board, javascript, json, sanitized-css, text, translate-messagebundle, unknown, vue, wikitext
- templatesandboxcontentformat
Content format of templatesandboxtext.
- One of the following values: application/json, application/octet-stream, application/unknown, application/vue+xml, application/x-binary, text/css, text/javascript, text/plain, text/unknown, text/x-wiki, unknown/unknown
- Expand the wikitext {{Project:Sandbox}}.
- api.php?action=expandtemplates&text={{Project:Sandbox}} [open in sandbox]
Exemple
Requête GET
Réponse
"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..." }
Exemple de code
Python
#!/usr/bin/python3 """ expand_templates.py MediaWiki API Demos Demo of `Expandtemplates` module: Expand the Project:Sandbox template. MIT License """ importrequests 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 */ varurl="https://en.wikipedia.org/w/api.php"; varparams={ 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 */ varparams={ action:"expandtemplates", text:"{{Project:Sandbox}}", prop:"wikitext", format:"json" }, api=newmw.Api(); api.get(params).done(function(data){ console.log(data); });
Erreurs possibles
| Code | Info |
|---|---|
| invalidtitle | Mauvais titre « title ». |
| nosuchrevid | Il n’y a pas de révision d’ID revid. |
| revwrongpage | rrevid n’est pas une révision de title. |
Historique des paramètres
- v1.26 - Ajoutés :
encodedjsconfigvars,jsconfigvars,modules - v1.25 - Ajoutés :
revid,properties - v1.24 - Ajouté :
prop - v1.18 - Ajouté :
includecomments - v1.13 - Ajouté :
generatexml
Notes supplémentaires
- Special:ExpandTemplates - Ceci est une page spéciale avec deux boîtes de saisie, une pour le nom de page et une autre pour entrer le wikicode. Il produit dans la fenêtre
Resultde résultats le wikicode expansé, c'est-à-dire les modèles, les fonctions d'analyse et les variables sont développées récursivement; les variables qui dépandent du nom de page sont développées en fonction du titre de page fourni. Ceci est un résultat intermédiaire avant qu'une page ne soit générée après avoir été enregistrée, ou que le boutonPreviewd'aperçu n'ait été pressé (ou que le wikicode résultant ne soit soumis à un autre processus), ce qui est utile pour comprendre et pour déboguer l'expansion du wikicode. Autres informations à propos de cette page disponibles sur → ExpandTemplates
Voir aussi
- API:Parse - analyser le contenu d'une page et obtenir la sortie
- API:Revisions - récupérer les informations de révision d'une ou plusieurs pages
- ExpandTemplates - contient des informations détaillées sur l'expansion des modèles