Jump to content

Extensión:WikiLove

From mediawiki.org
This page is a translated version of the page Extension:WikiLove and the translation is 78% complete.
Outdated translations are marked like this.
Manual de extensiones de MediaWiki
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
Tablas wikilove_log
Licencia MIT Licencia
Descarga

  • $wgWikiLoveGlobal
  • $wgWikiLoveTabIcon
  • $wgWikiLoveLogging
Descargas trimestrales 18 (Ranked 122nd)
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 carpeta extensions/.
    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.
  • Yes 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;
  1. La extensión debe ahora estar activo. Ir a la pestaña de edición en sus preferencias para activar la interfaz.
  2. 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 table wikilove_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:

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ú desplegable
  • descr - Descripción del subtipo
  • header - Encabezado del mensaje que se va a agregar, es decir, la parte que estará entre == ... ==
  • title - Título del cuadro de mensaje
  • text - Texto del cuadro de mensaje (ver detalles más abajo)
  • image - Imagen del cuadro de mensaje
  • gallery - 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 ejemplo 100px)
  • backgroundColor - Color de fondo (cualquier CSS color válido, p. ej. #fdffe7 o amarillo)
  • 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ágenes
  • width - Anchura máxima de las imágenes en la galería (en píxeles); durante 3 imágenes 145 se recomienda
  • height - 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.

Be sure to start your MediaWiki:WikiLove.js page with //<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

El diálogo WikiLove en primera carga
El diálogo WikiLove al seleccionar una categoría de premio
El diálogo WikiLove al llenar los detalles para un premio
El diálogo WikiLove en modo de vista previa
El estado estacionario para el panel de selección de premios

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

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