Extensión:WikiLove
WikiLove Estado de lanzamiento: estable |
|
---|---|
Implementación | Interfaz de usuario |
Descripción | Facilita agregar comentarios positivos a las páginas de discusión de usuarios |
Autor(es) | Ryan Kaldari, Jan Paul Posma, Brandon Harris (diseño) |
Última versión | 1.3.1 |
Política de compatibilidad | Lanzamientos de screenshots junto con MediaWiki. Master no es compatible con versiones anteriores. |
MediaWiki | 1.27+ |
Cambios de la base de datos | Sí |
Tablas | wikilove_log |
Licencia | MIT Licencia |
Descarga | |
|
|
Descargas trimestrales | 25 (Ranked 109th) |
Traduce la extensión WikiLove si está disponible en translatewiki.net | |
Asuntos | Tareas abiertas · Reportar un bug |
WikiLove Es una extensión diseñada para promover la difusión de WikiLove dentro de Wikipedia y posiblemente otros wikis. Específicamente, añade premios, regalos, e invitaciones a páginas de charla del usuario tan sencillo como clickear unos cuantos botones.
Instalación
- Descarga y extrae los archivos en un directorio denominado «
WikiLove
» dentro de la carpetaextensions/
.
Developers and code contributors should install the extension from Git instead, using:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/WikiLove - Añade el siguiente código en la parte final de tu archivo LocalSettings.php :
wfLoadExtension( 'WikiLove' );
- Ejecuta la secuencia de actualización, que creará automáticamente las tablas de la base de datos que necesita esta extensión.
- Hecho – Navega a Special:Version en el wiki para verificar que la extensión se haya instalado correctamente.
Si quieres utilizar los premios incorporados, debes tener InstantCommons habilitado. Para hacerlo, añade esto a LocalSettings.php
:
$wgUseInstantCommons = true;
- La extensión debe ahora estar activo. Ir a la pestaña de edición en sus preferencias para activar la interfaz.
- Necesitas También pueden utilizar estas opciones de configuración en su LocalSettings.php:
También puedes utilizar estas opciones de configuración en tu LocalSettings.php
:
$wgWikiLoveGlobal
- Habilita la extensión para todos los usuarios, removiendo la preferencia de usuario (default: falso)- Nota: también puede activar la configuración por defecto, pero aún dar a los usuarios la opción de apagarlo ("opt-out") mediante el uso de:
$wgDefaultUserOptions['wikilove-enabled'] = 1;
$wgWikiLoveTabIcon
- Uso un icono para máscaras que las soporte (i.e. Vector) (default: true)$wgWikiLoveLogging
- enable logging of giving of WikiLove (default: false); this automatically creates a database tablewikilove_log
which you can use for statistical queries
Uso
Para habilitar su cuenta para utilizar WikiLove, vaya a la pestaña de edición en sus preferencias y active WikiLove bajo "características de Laboratorios" (o, en algunas versiones, bajo "opciones Generales"). In September 2022 this displays as "Enable showing appreciation for other users with the WikiLove tab".
Para utilizar WikiLove, vaya a la página de discusión de un usuario y haga clic en el icono del corazón. Siga las instrucciones de allí.
Configuración personalizada
Para aprender cómo personalizar WikiLove para un editor individual (más que un wiki completo), ver el documentación de usuario.
Puedes personalizar las opciones de tu propia wiki editando la pàgina MediaWiki:WikiLove.js. Aqui, puedes cambiar la configuraciòn de la misma manera como se hace en las opciones "built-in"": defaultOptions.js. Aquì hay algunos ejemplos de configuraciones personalizadas:
- Wikipedia
- Wikimedia Commons
opciones en la parte superior de defaultOptions.js es algunos default encuadres para vuestra comodidad. Si omites propiedades seguras de tipos o subtipos, estos defaults será utilizado (defaultText, defaultBackgroundColor, defaultBorderColor, defaultImageSize, defaultImage). Entonces hay la lista de tipos. Cada tipo puede tener el nombre
de propiedades (requerido) e icono
(opcional). Además, un tipo puede tener una lista de subtipos, o no, en qué caso las propiedades adicionales serán asignadas al tipo él.
If you omit certain properties from types or subtypes, these defaults will be used (defaultText, defaultBackgroundColor, defaultBorderColor, defaultImageSize, defaultImage
).
Then there is the list of types.
Each type can have the properties name
(required) and icon
(optional).
Furthermore, a type can have a list of subtypes, or not, in which case the additional properties will be assigned to the type itself.
Si el tipo contiene subtipos, están enlistados en un objeto lista subtypes
.
Opcionalmente, el tipo también puede tener la propiedad select
, que especifica la etiqueta encima del menú desplegable.
Cada subtipo puede tener las siguientes propiedades:
option
- Nombre en este menú desplegabledescr
- Descripción del subtipoheader
- Encabezado del mensaje que se va a agregar, es decir, la parte que estará entre== ... ==
title
- Título del cuadro de mensajetext
- Texto del cuadro de mensaje (ver detalles más abajo)image
- Imagen del cuadro de mensajegallery
- Galería de selección de una imagen (ver detalles más abajo)fields
- Arsenal de los campos que el usuario puede editar; puede contener estos valores:header, title, image, message
imageSize
- Tamaño de la imagen (por ejemplo100px
)backgroundColor
- Color de fondo (cualquier CSS color válido, p. ej. #fdffe7
oamarillo
)borderColor
- Color del borde (misma)
Cuando no se utilice subtipos, estas opciones (excepto para los dos primeros) necesitan ser añadido al tipo en sí.
En el texto
y en los campos email
(así como en texto por defecto
, antes mencionado), puedes usar unos cuantos códigos que serán sustituidos automáticamente:
- $1 - Mensaje de usuario
- $2 - Título
- $3 - Nombre de imagen
- $4 - Tamaño de imagen
- $5 - Color de fondo
- $6 - Color de borde
- $7 - Nombre de usuario del receptor
Para que sea más fácil para el usuario para seleccionar las imágenes, puede crear una galería con imágenes predefinidas. Para ello, cree una gallery
, que tiene las siguientes propiedades:
imageList
- Una serie de nombres de imágeneswidth
- Anchura máxima de las imágenes en la galería (en píxeles); durante 3 imágenes145
se recomiendaheight
- La altura máxima de las imágenes en la galería (en píxeles)number
- Número de imágenes aleatorias para mostrar (opcional); si se omite se muestran todas las imágenes
Puedes utilizar imágenes de Wikimedia Commons, como los premios por defecto lo hacen. Como se mencionó antes, debes habilitar InstantCommons para esto.
//<nowiki>
and end it with //</nowiki>
so that any Wikitext code (such as signatures or {{subst:foo}}
) doesn't get expanded within the JavaScript.
Remover tipos de Wikiaprecio
Si sólo quieres eliminar algunos de los elementos por defecto de WikiLove, puedes borrarlos desde $.wikiLoveOptions object. Aquí hay algunos ejemplos que puedes usar en tus páginas de wikis MediaWiki:WikiLove.js:
// Elimina los Actos Aleatorios de Bondad Barnstar (decorativos) desde la lista de barnstars.
delete $.wikiLoveOptions.types.barnstar.subtypes.kindness;
// Elimina la hamburguesa desde la lista de comida y bebida
delete $.wikiLoveOptions.types.food.subtypes.cheeseburger;
// Elimina la interfaz de gatitos completamente
delete $.wikiLoveOptions.types.kitten;
Agregar tipos nuevos de Wikiaprecio
Here's an example of adding a new puppy type:
$.wikiLoveOptions.types.puppy = {
name: 'Puppy', // name of the type (appears in the types menu)
fields: [ 'header', 'message' ], // fields to ask for in form
header: 'You get a puppy!', // header that appears at the top of the talk page post (optional)
text: '[[File:2009-08-16 Puppy at Duke East 1.jpg|left|150px]]\n$1\n\n~~'+'~~<br style="clear: both;"/>', // $1 is the custom message
icon: 'http://www.mysite.com/images/wikilove-icon-puppy.png' // appears in the types menu
};
Here's an example of adding a new hedgehog type with a gallery of images to choose from:
$.wikiLoveOptions.types.hedgehog = {
name: 'Hedgehogs', // name of the type (appears in the types menu)
fields: [ 'header', 'message' ], // fields to ask for in form
header: 'A hedgehog for you!', // header that appears at the top of the talk page post (optional)
text: '[[$3|left|150px]]\n$1\n\n~~'+'~~\n<br style="clear: both"/>', // $3 is the image filename, $1 is the message
gallery: {
imageList: [ 'Hedgehog1.jpg', 'Orizo5.jpg', 'Erinaceus europaeus LC0119.jpg' ],
width: 145, // maximum width of the images in the gallery
height: 150, // maximum height of the images in the gallery
number: 3 // number of random images to show (optional)
},
icon: 'http://www.mysite.com/images/wikilove-icon-hedgehog.png' // appears in the types menu
Here's an example of adding a new falafel subtype under the existing food type:
$.wikiLoveOptions.types.food.subtypes.falafel = {
fields: [ 'header', 'message' ], // fields to ask for in form
option: 'Falafel', // option listed in the select list
descr: 'Falafel is a popular Middle Eastern street food made from ground chickpeas or fava beans and topped with salads, vegetables, and sauces. It is typically served in a pocket of pita bread.',
header: 'Some falafel for you!', // header that appears at the top of the talk page post (optional)
image: 'Falafel award.png', // image for the item
imageSize: '120px' // size to display image (optional)
};
Glitches y problemas
Si la página de discusión que está intentando editar contiene una palabra que se ha añadido posteriormente a Especial:SpamRegex, los intentos de utilizar la interfaz para añadir un barnstar u otro premio fallarán. Esto es porque la página no se puede editar, ya que contiene una palabra prohibida. Extracción de la palabra desde la página o desde el filtro se solucionará el problema.
Documentación de API
WikiLove usa una API wikilove especial para postear mensajes en las páginas de discusión de los usuarios. El API es básicamente un delgado envoltorio alrededor algunos APIs existentes. Si la página de discusión de usuarios es una página de Wikitext, utiliza la API edit . Si es una página de Flujo , utiliza el $flujo API. Y si es una página LiquidThreads, utiliza la API threadaction .
Para llamar a la API, usa el parámetro action=wikilove
.
Parámetros:
title
- Título de la página de usuario o de discusión de usuario para enviar a WikiLove (requerido)
text
- Wikitext Raw para agregar en la nueva sección (requerido)
message
- Mensaje real que el usuario ha introducido, con fines de explotación forestal (No incluye imagen ni formato HTML)
token
- Edita token. Puedes conseguir uno de estos a través de prop=info (requerido)
subject
- Asunto cabecera de la nueva sección de la página (requerido)
type
- Tipos de WikiLove (para estadísticas); esto corresponde con un tipo seleccionado en el menú izquierdo y opcionalmente un subtipo después de ese. (ej. "barnstar - normal" o "gatito") (opcional)
email
- Contenido del mensaje de correo electrónico opcional para enviar al usuario
Ejemplo
api.php?action=wikilove&title=User:Dummy&text=Love&subject=Hi&token=%2B\
Diseñado para la versión 1.0
Este documento describe el diseño y comportamiento del sistema de "WikiLove" de observaciones positivas para Wikipedia. Esta herramienta está diseñada para promover la difusión de WikiLove dentro de Wikipedia. Específicamente, hace que el añadir premios y regalos a los usuarios de páginas de discusión sea tan simple como clickear algunos botones.
Justificación
Wikipedia, como comunidad, tiene varios mecanismos para indicar descontento o para proporcionar retroalimentación "negativa" a sus usuarios. Algunos aparatos, como Twinkle, están fuertemente diseñados hacia la alerta, el bloqueo, y revertir.
Desde Wikipedia está en la necesidad de un refuerzo positivo, especialmente para los nuevos usuarios, un sistema diseñado específicamente y sólo hacia se desea retroalimentación positiva.
El uso de Estilo caprichosa
El sistema tiene una pesada estilo de "banal" a su diseño. Esto es intencional y está destinado a alinear más de cerca a las expectativas de los usuarios de los sitios web modernos. Además, todo el principio de "premios" es en sí mismo (por ejemplo, caprichoso, galletas y gatitos).
Este estilo puede ser abandonada en base a comentarios de los usuarios.
Nota sobre la nomenclatura
Algunos tipos de plantilla, como plantillas de bienvenida, no son técnicamente "premios".
En este documento se utiliza el término "premio" como sinónimo de "plantilla". Dado que el sistema es, y no destinadas directamente para los usuarios avanzados centrado en el usuario, la nomenclatura de cara al usuario ha sido utilizado.
Proceso
Comportamiento de diálogo
El diálogo WikiLove es modal. Inicio de ella (desde cualquier lugar) causará que aparezca en el texto de la página. Puede ser despedido con un simple clic.
El sistema WikiLove requiere JavaScript.
El usuario se presentará inicialmente con una breve serie de instrucciones fáciles de entender y una lista de los disponibles "categorías de premios".
Al seleccionar un tipo de premio, el usuario se presenta con una sección en la que se pueden añadir detalles a la concesión (por ejemplo, un mensaje corto).
Nótese que algunas categorías (ej. "galleta") no tendrán un segundo paso de creación de premios e irá directamente a "Vista Previa".
El usuario luego clickea el botón "Vista Previa" ("Preview") que cargará una vista previa del premio para poder visualizar como se verá en la página de discusión del usuario.
Una vez que el usuario está satisfecho, puede clickear el botón "Enviar WikiLove". En ese momento las llamadas de AJAX al servidor API serán efectuadas, añadiendo la plantilla a la página de chat del usuario.
Notificación por correo electrónico
Como la mayoría de los nuevos usuarios son poco probable que sea consciente de que incluso tienen páginas de discusión, puede que no sean conscientes de que han recibido la WikiLove en cuestión.
En consecuencia, el servidor enviará por correo electrónico al destinatario (si han facilitado una dirección de correo electrónico) para informarles de la WikiLove así como instrucciones breves sobre cómo acceder a su página de discusión.
Configuración del sitio
Inicialmente, los premios que se pueden dar son que se definirá en el propio gadget. Si este sistema se eleva a una extensión, a continuación, los nombres de los premios y las plantillas deben ser definidos en LocalSettings.php del sitio.
Alternativamente, dicha información se puede almacenar en la base de datos. Una consola de administración estaría obligado a sumar o restar premios y categorías de los premios disponibles.
Almacenamiento de datos
Para las estadísticas de fines recolección, cada vez que se da un premio, los datos se realiza un seguimiento y se almacena en la base de datos. Una mesa simple, escrita a través de la API, es exigirse todo lo necesario:
- Del Usuario - El nombre de usuario de la persona que está dando el premio
- Al Usuario - El nombre de usuario de la persona que recibe el premio
- Plantilla - el nombre de la plantilla otorgada
- Fecha de Estampa - Cuándo el premio fue dado
- Texto de premio - Opcional; esto sería el texto del premio
Especial:EstadísticasDeWikiLove
En el futuro, será posible crear una página, Especial:EstadísticasWikiLove, que podría ser usada para ver cuán a menudo se utiliza el sistema, así como también proporcionar una visión sobre quién da más amor, qué premios son los más populares, y quién recibe más premios.
Esto ayudará a proporcionar una visión global de la salud de la comunidad. Los más premios dados, el más sano de la comunidad.
Pensamiento a futuro
Fase dos de este proyecto podría resultar en que los enlaces "Enviar WikiLove" sean dinámicamente añadidos a las firmas en páginas de charla. Esto le permitiría a WikiLove ser enviado de una manera más fácil, directamente desde otras páginas de charla.
Véase también
- WikiAprecio - Documento de diseño original
- Extensión:Thanks - lighter-weight - les da las gracias por edita utilizando Echo
- GiveCredit - MeatBall Wiki
Esta extensión está siendo usada en uno o más proyectos de Wikimedia. Esto significa probablemente que la extensión es estable y funciona lo suficientemente bien como para ser usada en sitios con gran cantidad de visitas. Puedes buscar el nombre de esta extensión en los archivos CommonSettings.php e InitialiseSettings.php de Wikimedia para ver dónde se instala. Encontrarás la lista completa de extensiones instaladas en un wiki en particular en la página Special:Version del wiki. |
Esta extensión está incluida en los siguientes anfitriones/granjas wiki y/o paquetes: No se trata de una lista oficial. Algunas granjas/hosts wiki y/o paquetes pueden tener disponible esta extensión aunque no estén listados aquí. Siempre compruébelo con su anfitrión o granja wiki para confirmarlo. |