Página de información de Wikipedia
Un gadget de Wikipedia es un programa JavaScript o un fragmento de código CSS que se puede habilitar simplemente marcando una opción en las preferencias . La función del gadget la proporciona la extensión Gadgets de MediaWiki .
Muchos gadgets comenzaron como scripts de usuario . Una vez que un script de usuario se aprueba como gadget, se elimina de Wikipedia:Scripts de usuario/Lista .
Criterios generales para gadgets
Para poder implementarse en la Wikipedia en inglés, los gadgets generalmente deben cumplir las siguientes condiciones:
- Los gadgets deben funcionar si se incluyen sin ninguna configuración adicional. Se pueden configurar a través de common.js personal , pero deben funcionar sin configurar.
- Los gadgets deben ser compatibles con todos los navegadores principales, es decir, no deben finalizar con errores.
- Los gadgets deben funcionar en la mayoría de los navegadores principales (compatibilidad entre navegadores). Las excepciones deben indicarse claramente.
- La duplicación de dispositivos solo debe realizarse si es razonable.
- Las colecciones de scripts deben dividirse si tienen funciones dispares.
- Los gadgets que requieren permisos deben estar marcados y deben fallar correctamente si los permisos no están presentes.
- Los gadgets que solo funcionan en algunas máscaras deben marcarse como tales si esos datos están disponibles.
Los gadgets que están marcados como predeterminados y se cargan para grandes grupos de usuarios tienen criterios adicionales que deben cumplir.
Propuestas
Se deben proponer nuevos gadgets en la Bomba Técnica del Pueblo .
Históricamente, los gadgets nuevos se proponían en una subpágina de esta página , pero esa página se marcaba como histórica debido a la baja participación. Además, los scripts de usuario de WikiProject existentes solían evaluarse para su conversión a gadgets, pero ese proceso también se marcó como histórico.
Instalación
Los administradores de la interfaz pueden instalar los gadgets después de discutirlos en la sección técnica de la bomba de la aldea de la siguiente manera:
- Agregue el encabezado a continuación y el código del script a MediaWiki:Gadget- scriptname .js
- Opcionalmente, agregue el encabezado a continuación y el código CSS a MediaWiki:Gadget- scriptname .css
- Agregue una descripción del script a MediaWiki:Gadget- scriptname . Incluya un vínculo a la página de inicio o de ayuda del script y, si es necesario, indique los requisitos del navegador.
- Añadir a MediaWiki:Gadgets-definition bajo el encabezado correspondiente
* nombre_del_script|nombre_del_script.js [|nombre_del_script.css|otro_script.js|...]
El gadget ahora debería aparecer en Especial:Gadgets .
Comentarios
Se pueden agregar comentarios o advertencias a las plantillas de descripción del gadget de dos maneras:
- etiqueta noinclude (visible en la página de descripción con enlaces):
<noinclude> comment </noinclude>
- Comentarios HTML (visibles sólo en el texto fuente):
<!-- comment -->
Los comentarios agregados de esta manera se descartarán automáticamente durante el proceso de creación de la página.
Encabezamiento
Se debe agregar el siguiente encabezado a los archivos del gadget:
/* _____________________________________________________________________________ * | | * | === ADVERTENCIA: ARCHIVO DE GADGET GLOBAL === | * | Los cambios en esta página afectan a muchos usuarios. | * | Por favor, discuta los cambios en la página de discusión o en [[WT:Gadget]] antes de editar. | * |_____________________________________________________________________________| * * Importado de la versión XXXX a partir de DATE desde [[SCRIPT_SOURCE]] * DESCRIPCIÓN_BREVE, consulte [[SCRIPT_HOME_PAGE]] */
Gadgets predeterminados
Un gadget con una palabra clave predeterminada está habilitado para todos los visitantes de Wikipedia y solo los usuarios registrados pueden deshabilitarlo. Un gadget con [default|rights=minoredit]
una descripción se habilitaría automáticamente solo para los usuarios registrados.
Criterios
Los gadgets que están habilitados de forma predeterminada para todos los usuarios deben cumplir con reglas más estrictas. Básicamente, son las mismas reglas que se aplican a todo el código predeterminado. Esto se debe a que los usuarios no tienen la opción de habilitarlos y los gadgets pueden afectar el rendimiento, la seguridad y la estabilidad de todo el sitio web. Estos gadgets deberían:
- Han sido revisados por un desarrollador de JavaScript experimentado (generalmente un administrador de interfaz).
- Estar "bien mantenido".
- Cumplir con la política de recursos de terceros.
- Debe escribirse para que funcione de manera eficiente, es decir, con la menor cantidad de código necesaria. Si la funcionalidad completa del gadget requiere una gran cantidad de código JavaScript, entonces este código debe cargarse de manera condicional y diferida, o solo cuando se lo solicite (haga clic para cargar).
- No causa problemas de accesibilidad.
- No es necesario que el contenido sea legible, a excepción de los gadgets de solo estilos.
- No interferir con la impresión de páginas.
- Cumplir con los estándares actuales de seguridad y privacidad.
Esta lista no debe considerarse exhaustiva.
Gadgets de plantilla
Los gadgets de plantilla son una categoría especial de gadgets predeterminados. Estos gadgets solo se ejecutan en páginas de categorías de activación explícitas, generalmente controladas mediante la adición de una plantilla a una página. Las categorías de activación deben estar protegidas contra movimientos, ya que están integradas con la definición.
Gadgets instalados actualmente
Los usuarios pueden explorar una lista de todos los gadgets disponibles en la sección de gadgets de su página de preferencias:
Preferencias → Gadgets
Consulte Especial:Gadgets para obtener una lista de todos los gadgets activos y enlaces a sus archivos de script.
Pros y contras de cambiar un script de usuario a un gadget
Ventajas
- Agrega el script a Special:Preferences , lo que hace que su instalación sea mucho más sencilla.
- Agrega el script a Special:Preferences , lo que ayudará con la comercialización del script y aumentará los números de instalaciones con el tiempo.
- Proporciona el script de usuario a la comunidad, lo que hace que los administradores de la interfaz tengan más probabilidades de conceder solicitudes de edición de otros usuarios, lo que reduce la necesidad de bifurcar el script de usuario si el mantenedor se vuelve inactivo.
- Capacidad de marcarlo como un "gadget predeterminado", que se cargará para todos.
- Los módulos ResourceLoader y el CSS del script dependen de la carga al cargar la página, lo que permite que el script esté listo más rápido.
Especialmente cuando un script de usuario tiene muchos usuarios...
- Los gadgets permiten minimizarlos y agruparlos con otros gadgets, lo que reduce el tamaño de los archivos y el tráfico HTTP.
- Posible protección contra ataques informáticos. Todos los administradores de la interfaz tienen autenticación de dos factores y se eliminan si se vuelven inactivos. Un administrador regular podría volverse inactivo y luego su cuenta podría verse comprometida en una fecha posterior.
- Posible protección contra un desarrollador de scripts de usuario no autorizado. Los administradores de interfaz han pasado por la RFA y es posible que tengan menos probabilidades de actuar de forma no autorizada.
Contras
- Permite el uso de funciones de JavaScript hasta ES7 únicamente. Algunas funciones de ES8 como async–await se pueden usar con el
requiresES6
indicador. - Si el mantenedor no es un administrador de interfaz, ahora necesitará realizar solicitudes {{ Edit interface-protected }} para realizar cambios en el código, lo que ralentizará el desarrollo.
- Hay muchos pasos. Es necesario asegurarse de que el encargado del mantenimiento esté de acuerdo, obtener el consenso en WP:VPT y luego conseguir que un administrador de interfaz configure todo. Es posible que se necesite un plan para cambiar a todos del antiguo script de usuario al gadget. Si hay alguna preocupación sobre errores, es posible que sea necesario hacer una implementación escalonada.
Véase también