Open main menu

Extension:PageTriage

This page is a translated version of the page Extension:PageTriage and the translation is 73% complete.
Other languages:
English • ‎español • ‎français • ‎中文 • ‎日本語
MediaWiki extensions manual
OOjs UI icon advanced.svg
PageTriage
Release status: estable
PagesFeedInfoFlyout.png
Implementación Special page , User interface
Descripción Facilita la revisión y aprobación de nuevas páginas
Autor(es) Ryan Kaldari, Benny Situ
Última versión 0.3.0 (2018-06-26)
Política de compatibilidad release branches
MediaWiki 1.27+ . La rama master de PageTriage solo debe usarse con master core; de lo contrario, use ramas coincidentes (por ejemplo, PageTriage REL1_27 con el núcleo REL1_27 o ramas de lanzamiento de WMF coincidentes).
Cambios de la base de datos
Licencia MIT License
Descarga
Ejemplo Special:NewPagesFeed on the English Wikipedia
  • $wgPageTriageCacheVersion
  • $wgPageTriageCurationModules
  • $wgPageTriageDeletionTagsOptionsContentLanguageMessages
  • $wgPageTriageDeletionTagsOptionsMessages
  • $wgPageTriageDraftNamespaceId
  • $wgPageTriageEnableCurationToolbar
  • $wgPageTriageEnabledEchoEvents
  • $wgPageTriageFeedbackUrl
  • $wgPageTriageInfiniteScrolling
  • $wgPageTriageLearnMoreUrl
  • $wgPageTriageMarkPatrolledLinkExpiry
  • $wgPageTriageMaxAge
  • $wgPageTriageNamespaces
  • $wgPageTriageNoIndexTemplates
  • $wgPageTriageNoIndexUnreviewedNewArticles
  • $wgPageTriagePagesPerRequest
  • $wgPageTriageProjectLink
  • $wgPageTriageStickyControlNav
  • $wgPageTriageStickyStatsNav
  • $wgPtTemplatePathPageTriageTagsOptionsMessages
  • $wgTalkPageNoteTemplate
Translate the PageTriage extension if it is available at translatewiki.net
Verificar uso y versión de la matriz.
Asuntos Tareas abiertas · Reportar un bug

PageTriage es una extensión que tiene como objetivo proporcionar una interfaz rica en funciones para clasificar artículos recién creados. Su objetivo es reemplazar la función principal de patrullaje de páginas nuevas al tiempo que agrega funcionalidad adicional para revisar, etiquetar y mejorar nuevos artículos. Agrega una nueva página a Special:NewPagesFeed y una barra de herramientas de revisión de páginas para páginas nuevas para aquellos con el permiso de verificador. Fue desarrollado por el equipo de desarrolladores de caracteísticas de la Fundación Wikimedia. Para detalles adicionales, véase Revisión de páginas.

Una nota importante es que parte de la configuración y el código son específicos de los flujos de trabajo de Wikipedia en inglés y, como está construido ahora, la extensión es prácticamente imposible de internacionalizar. (Véase Phabricator:T50552.)

Descarga

The extension can be retrieved directly from Git [?]:

  • Browse code
  • Some extensions have tags for stable releases.
  • Each branch is associated with a past MediaWiki release. There is also a "master" branch containing the latest alpha version (might require an alpha version of MediaWiki).

Extract the snapshot and place it in the extensions/PageTriage/ directory of your MediaWiki installation.

If you are familiar with git and have shell access to your server, you can also obtain the extension as follows:

cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/PageTriage.git

Instalación

  • Descarga y extrae los archivos en el directorio «PageTriage» dentro del directorio extensions/ existente.
  • Añade el siguiente código a tu LocalSettings.php (preferiblemente al final):
    wfLoadExtension( 'PageTriage' );
    // These two settings are optional, and will enable the Articles-for-Creation mode.
    $wgExtraNamespaces[118] = 'Draft';
    $wgPageTriageDraftNamespaceId = 118;
    
  • Ejecuta el script de actualización, que creará automáticamente las tablas que necesita esta extensión en la base de datos.
  •   Hecho – Navega a Special:Version en tu wiki para verificar que la apariencia se haya instalado correctamente.

Para quienes usan MediaWiki 1.24 o versiones anteriores:

Estas instrucciones describen la nueva forma de instalar extensiones usando wfLoadExtension(). Si necesitas instalar esta extensión en versiones anteriores (MediaWiki 1.24 y anteriores), debes usar lo siguiente en lugar de wfLoadExtension( 'PageTriage' );:

require_once "$IP/extensions/PageTriage/PageTriage.php";

Para ver la extensión en funcionamiento:

La nueva página debería aparecerSin categorías marcada como "Sin categorías", "Huérfana", etc. Para ver la barra de herramientas de revisión de páginas:

  • Inicie sesión como usuario con el permiso 'sysop', o agregue un grupo con el permiso "patrol", y agregue algún usuario a ese grupo, e inicie sesión como ese usuario.
  • Visita Special:NewPagesFeed
  • Ahora debería ver un botón "Revisar" al lado de la nueva página.
  • Haga clic en esto y debería ver la barra de herramientas de revisión de página en la nueva página.

Configuración de extensión

La extensión se basa en el permiso de "verificador". Para obtener más información sobre la configuración de patrullaje, véase Manual:Patrullaje .

Las siguientes variables de configuración se pueden establecer desde su archivo LocalSettings.php:

  • $wgPageTriageEnableCurationToolbar: Establecer en falso para deshabilitar la barra de herramientas de revisión (el valor predeterminado es verdadero)
  • $wgPageTriageInfiniteScrolling: Si se usa o no el desplazamiento infinito en el nuevo feed de páginas (el valor predeterminado es verdadero)
  • $wgPageTriageNoIndexUnreviewedNewArticles: Establezca esto en verdadero si los artículos nuevos no revisados deben establecerse en noindex. En otras palabras, si no deben ser indexados por los motores de búsqueda hasta que sean revisados. (el valor predeterminado es falso)
  • $wgPageTriageMaxAge: The age (in days) at which PageTriage allows unreviewed articles to become indexed by search engines (if $wgPageTriageNoIndexUnreviewedNewArticles is true) (default is 90).
  • $wgPageTriageNamespaces: The namespaces that PageTriage is active in. (default is NS_MAIN and NS_USER).

Véase extension.json para la lista completa de variables de configuración.

Configuración en wiki

Es posible configurar gran parte de PageTriage a nivel de wiki a través de las páginas MediaWiki:PageTriageExternalDeletionTagsOptions.js y MediaWiki:PageTriageExternalTagsOptions.js, aunque la estructura de la configuración puede cambiar en el futuro (para acomodar mejor los wikis además de Wikipedia en inglés).

Puede obtener una idea general de cómo funciona la configuración mirando lo siguiente:

Sección de la barra de herramientas Archivo predeterminado Personalización de Wikipedia en inglés
  Añade funciones de análisis sintáctico modules/ext.pageTriage.defaultTagsOptions/ext.pageTriage.defaultTagsOptions.js en:MediaWiki:PageTriageExternalTagsOptions.js
  Nominar para borrado modules/ext.pageTriage.defaultDeletionTagsOptions/ext.pageTriage.defaultDeletionTagsOptions.js en:MediaWiki:PageTriageExternalDeletionTagsOptions.js

Ambos archivos funcionan de la misma manera.

Hay dos variables jQuery de nivel superior que definen las plantillas de revisión que se enumeran en la barra de herramientas de revisión debajo de los botones   (agregar etiquetas) y   (nominar para eliminación). Son:

$.pageTriageTagsOptions = {};
$.pageTriageDeletionTagsOptions = { Main: {}, User: {} };

'(Principal)' y 'Usuario:' se refieren al espacio de nombres de la página que se está revisando. Cada subelemento en los tres conjuntos anteriores define las pestañas que se muestran en el lado izquierdo de la barra de herramientas y tiene la siguiente forma:

{
    label: 'Short title',
    desc: 'A longer description.', // Text only, no HTML or Wikitext markup
    multiple: false, // Whether more than one of the tags can selected at once.
    tags: { tag1 = {}, tag2 = {} }
}

Luego, las plantillas reales que se enumeran se definen en la variable etiqueta anterior. Cada plantilla de eliminación tiene la siguiente forma:

{
    tag: 'Actual_template_name', // Without the 'Template:' prefix.
    label: 'Friendly template title',
    desc: 'A longer description.', // Text only, no HTML or Wikitext markup
    code: '',
    params: {},
    anchor: '',
    talkpagenotiftopictitle: 'message-name', // The message name (e.g. pagetriage-del-tags-speedy-deletion-nomination-notify-topic-title) used as the section/topic title when posting to the editing user's talk page.  Usually, you can reuse one of the existing messages (currently pagetriage-del-tags-speedy-deletion-nomination-notify-topic-title, pagetriage-del-tags-prod-notify-topic-title, pagetriage-del-tags-xfd-notify-topic-title).  If you need a new one, file a task so $wgPageTriageDeletionTagsOptionsContentLanguageMessages or the PageTriage repository can be updated.
    talkpagenotiftpl: 'Template_name' // The template that will be added to the editing user's talk page, not including the talk page heading (handled by talkpagenotiftopictitle).
}

Por el momento, algunas etiquetas deben estar presentes:

  1. $.pageTriageDeletionTagsOptions.Main.xfd.tags.articlefordeletion

Ejemplo

Entonces, si no desea utilizar ninguna de las plantillas de eliminación integradas (que se pueden importar desde NewPagesFeed_Templates.xml , por cierto), puede reemplazarlos por uno solo agregando lo siguiente en la parte inferior de su página de MediaWiki:PageTriageExternalDeletionTagsOptions.js:

var deletionSection = {
    label: 'Deletion',
    desc: 'Nominate for deletion.',
    multiple: false,
    tags: {
        articlefordeletion: {
            tag: 'delete',
            label: 'Delete',
            desc: 'Nominate this page for deletion.',
            code: '',
            params: {},
            anchor: '',
            talkpagenotiftopictitle: 'pagetriage-del-tags-xfd-notify-topic-title',
            talkpagenotiftpl: 'Deletion notification'
        }
    }
};
$.pageTriageDeletionTagsOptions = { Main: { xfd: deletionSection }, User: { xfd: deletionSection } };

Client-side hooks

PageTriage provides a specialized action queue system to allow other scripts and gadgets to integrate with it. This is similar to mw.hook except that it uses promises. This is done using the mw.pageTriage.actionQueue module. See the comments in the source code for documentation on how the system works.

The actionQueue module is available after the mw.hook ext.pageTriage.toolbar.ready fires. PageTriage will give the action queue handler an Object with the following data, in addition to other data as noted below:

  • pageid — ID of the page being reviewed.
  • title — Title of the page, including namespace.
  • reviewer — Username of who is using PageTriage.
  • creator — Username of the creator of the page.
  • reviewed — Whether or not the page is currently or will be marked as reviewed.

Available actions

  • delete — Fired when the reviewer tags a page for deletion. The data given to the handler also includes:
    • tags — An object of all the templates added to the page. The keys are the template title, and the values are an object of metadata, including things like the speedy deletion code.
  • mark — Fired when the review status of a page is changed. Also includes:
    • note — The personal message the reviewer added for the creator of the page. This may be blank.
  • tags — Fired when maintenance tags are added to the page. Also includes:
    • tags — An array of the titles of all templates that were added to the page.
    • note — The personal message the reviewer added for the creator of the page. This may be blank.

Example

To use the action queue, register a function to be ran when an aforementioned action is fired. PageTriage will wait for any asynchronous code to complete before doing anything else, such as refreshing the page. For example, to edit Sandbox after a page has been marked as reviewed, you could use:

$( function () {
	// You must first listen for the ext.pageTriage.toolbar.ready event using mw.hook, to ensure your handler is registered at the right time.
	mw.hook( 'ext.pageTriage.toolbar.ready' ).add( function ( queue ) {
    	// Listen for the 'mark' action.
		queue.add( 'mark', function ( data ) {
			return new mw.Api().edit( 'Sandbox', function ( revision ) {
				// Replace 'foo' with the note the reviewer left.
				return revision.content.replace( 'foo', data.note );
			} );
		} );
	} );
} );

API

PageTriage agrega 5 endpoint de API que se pueden usar:

  • api.php?action=pagetriagestats: recupera estadísticas sobre el número de páginas en la cola y los revisores principales
  • api.php?action=pagetriagelist: recupera la lista de páginas en la cola y los metadatos asociados
  • api.php?action=pagetriageaction: marca una página como revisada o no revisada
  • $etiquetado: agregua etiquetas de limpieza o plantillas de eliminación a una página
  • api.php?action=pagetriagetemplate: API interna para buscar plantillas de Backbone para usar en la aplicación JS

Véase también