campos vacíos

Saltar a: navegación, buscar

Sí, se hace con un if.

Puedes ver un ejemplo en este infobox: Plantilla:Infobox Banco de tiempo.

Tomemos por ejemplo el campo "Participa en":

  • Está compuesto por 2 partes: "campo" y "valor", aunque por su posición actual realmente se denominan "s2campo1" y "s2valor1" (por tratarse del primer campo y el primer valor de la sección 2ª).
  • El "campo" es el "título" del campo que se ve a la izquierda del contenido en el infobox, por lo que lo llamo "título del campo" para diferenciarlo del campo del formulario.
    • Lo hemos ocultado con el código {{#if:{{{participa en|}}}|Participa en}} para que sólo se muestre el texto "Participa en" en caso de que el campo "participa en" tenga contenido.
  • El "valor" es el valor con el que completamos el campo mediante el uso del formulario y se mostrará en el infobox a la derecha del "título" del campo.
    • Aquí el if es más sencillo, ya si existe valor se limita a convertirlo en la propiedad semántica "participa en" y si no existe entonces simplemente no hace nada (y esa parte se queda vacía).
  • Combinando ambos códigos, el del título del campo y el del valor, obtenemos un campo que sólo aparece cuando tiene contenido.

Si te fijas, el título de la sección "Redes" también tiene un if: {{#if:{{{participa en|}}}{{{colabora con|}}}|Redes}} cuya función es ocultarlo a menos que alguno o ambos de sus campos ("participa en" y/o "colabora con") tenga contenido.

Nota: Cuando decimos cosas como que el campo 'participa en' del banco de tiempo "tiene contenido" nos referimos al argumento "participa en" de la plantilla "Infobox Banco de tiempo". El código está hecho para que dicho argumento reciba el contenido introducido a través del campo correspondiente del formulario. Ya sé que esto es un poco complicado de entender así por escrito, pero observando y haciendo pruebas se acaba comprendiendo. No obstante creo que va siendo hora de hacer un vídeo o algo explicando con dibujos cómo va esta historia, jejeje ^_^U

Si no te ha quedado claro pregunta, que cuanto más lo explico mejor lo entiendo yo mismo jajaja

Transonlohk (discusión)15:47 23 oct 2014