Usuario discusión:Hispano76/Archivo 2021

Contenido de la página no disponible en otros idiomas.
De Wikipedia, la enciclopedia libre

RE: Plantilla:Botón enlazable 2 en Wikiviajes[editar]

Hola Hispano76, ¡acabo de hacer mi primera edición en Wikiviajes! A lo que vamos. Ten en cuenta que en eswiki tenemos Módulo:Argumentos y Módulo:Arguments y que no funcionan del mismo modo —algún día tendremos que arreglar esta duplicidad diferente—. Aquí puedes ver los dos tipos de botón funcionando. No sé por qué dices que la plantilla de Botón no funciona —porque sí lo hace—, y el problema de la segunda era que estaba mal programada por culpa de esa diferencia de módulos. Saludos. -- Leoncastro (discusión) 21:58 1 feb 2021 (UTC)

Versión corta: recomiendo no usar obtenerArgumentos, sino getArgs. Versión larga:
Hispano76, hay problemas con los módulos, porque provienen de fuentes distintas que usan versiones distintas. Como te comentaba, en eswiki incluso tenemos dos módulos diferentes. Uno de los problemas más evidente está en la traducción de funciones, porque donde en unos módulos se llama getArgs en otros módulos se nombra obtenerArgumentos, con lo que se forma el problema cuando existe de una forma pero se trata de llamar de otra —que es lo que pasaba con los botones de wikiviajes—. En la práctica, en eswiki la función getArgs no es la misma que la versión obtenerArgumentos; y en otros proyectos lo que se hace muchas veces es tomar una de ellas y renombrarla, lo cual no funciona en todos los casos —porque, como digo, no son la misma función, pues la versión en español es una variante extremadamente simplificada de la versión en inglés—. Para tratar de resolver ese problema, el de tener dos funciones distintas para realizar en teoría la misma función, hace un tiempo hice un par de nuevas funciones para producir un nuevo método para obtener los argumentos, por lo que estas nuevas funciones deberían absorver a las dos anteriores, e incluso presentar algunas mejoras sobre las mismas. El problema es que con este nuevo método se cambia la forma en que hay que llamar a las nuevas funciones, por lo que no se puede reemplazar directamente ninguna de las funciones viejas por una nueva. Hay que hacer un pequeño rediseño allá donde se pretenda usar el nuevo método.
En todo caso, efectivamente hay diferencias; ya no solo hay dos versiones, sino que yo mismo presento una tercera alternativa. La solución más óptima es, en mi opinión, adaptarse al nuevo método. Sin embargo, adaptar todos los módulos que usen estas funciones será un proceso largo, por lo que lo más rápido y efectivo es usar las más completa de las dos originales, que es precisamente getArgs. Allá donde veas un problema porque se rompe una plantilla por culpa de este conjunto de módulos, trata de cambiar obtenerArgumentos por getArgs (no solo en las llamadas, sino también usando el código en inglés) y se arreglará en la mayor parte de los casos. Saludos. -- Leoncastro (discusión) 18:34 2 feb 2021 (UTC)