Blogger. Usar condiciones | Oloblogger Una condición se forma con una serie de instrucciones y nos permite hacer algo sólo si se cumple det...

30 de junio de 2009

Blogger. Usar condiciones

Una condición se forma con una serie de instrucciones y nos permite hacer algo sólo si se cumple determinado supuesto. Básicamente sería algo así:

SI autor = oloman, imprime dibujo1
SI NO ES ASI, imprime dibujo2
CERRAR SI

Esto, claro está, hay que hacerlo en un lenguaje que nuestro ordenador entienda y en el caso concreto de Blogger, en idioma Blogger. En el caso del anterior ejemplo, el código sería de este estilo:
<b:if cond='data:comment.author == "Oloman"'> <img src='dibujo1.jpg'/>
<b:else/> <img src='dijujo2.jpg'/>
</b:if>

Las condiciones pueden ser de igualdad (==) o de desigualdad (!=) y a cada lado deben llevar algo comparable. Puede ser etiquetas DATA que contengan cualquiera de los datos de nuestro blog almacenados por Blogger o caracteres de cualquier tipo. En este último caso deberán ir entre comillas dobles, tal y como podeis ver en el código mostrado arriba como ejemplo. Como las comillas dobles no le sientan bien a nuestra parte HTML, hay que sustituirlas por &quot; para que funcione bien el código.

La utilización de </b:else> (SI NO...) es opcional, pero todo <b:if cond... debe llevar siempre su cierre (</b:if>)

El uso de condicionales es especialmente útil para que ciertos elementos se muestren en un tipo de páginas o no. Para ello, es necesario conocer cómo las bautiza Blogger:

data:blog.pageType es una variable Blogger que guarda el tipo de página en el que estamos. Puede ser igual a:
  • "item", que indica la página individual de cualquier entrada (permalink)
  • "archive", que representa las páginas de navegación por etiquetas o siguiente-anterior
  • "index", la página de inicio
Sabiendo esto, si por ejemplo queremos que el gadget HTML5 de nuestra plantilla, sólo aparezca en las páginas individuales de cada entrada y no en el resto, insertaremos una condición que englobe todo el código que muestra los datos resultantes del gadget (es necesario tener plantilla de artilugios expandidos):

<b:widget id='HTML5' locked='false' title='' type='HTML'>
<b:includable id='main'>

<b:if cond='data:blog.pageType == &quot;item&quot;'>

<!-- only display title if it's non-empty -->
<b:if cond='data:title != &quot;&quot;'>
<h2 class='title'><data:title/></h2>
</b:if>
<div class='widget-content'>
<data:content/>
</div>
<b:include name='quickedit'/>

</b:if>

</b:includable>
</b:widget>

Las líneas en verde son las que hemos insertado para conseguir que ese artilugio se vea sólo si la página en la que estamos es de una entrada individual. En todos los demás casos (Inicio, página de etiquetas, post resumidos...) no se verá el artilugio HTML5.

No se ha previsto hacer nada en el caso de que la igualdad no se cumpla. Si quisiéramos hacer algo distinto y que saliera otra cosa en las páginas que no cumplieran la condición (estaríamos en páginas que no son entradas individuales), tendríamos que usar la etiqueta </b:else> con la estructura del primer ejemplo (dibujo1-dibujo2)


Hay otras etiquetas DATA interesantes para condicionar cosas que queremos que se ejecuten en unos sitios sí y en otros no:
  • data:blog.pageTitle es el título de la página actual que, generalmente, es el título del blog más algún otro dato adicional
  • data:blog.pageName es el título de la página que generalmente coincide con el título del post
  • data:blog.pageType es el tipo de página donde estamos (item archive index)
  • data:blog.homepageUrl la dirección URL de la página de inicio del blog
  • data:blog.url es la dirección URL de la página donde estamos
(*) Esta última relación es un extracto literal de un post de Vagabundia, dónde podeis encontrar todas las etiquetas DATA que maneja Blogger.

De esta manera, si por ejemplo queremos que cierto elemento se muestre sólo en una entrada concreta y en ningún sitio más, tendríamos que cambiar la línea que fija la condición a cumplir, de la siguiente manera:

<b:if cond='data:blog.url == &quot;http://oloblogger.blogspot.com/2009/06/videos-aleatorios-bpt.html&quot;'>


¿Que más podemos hacer? Pues volviendo al ejemplo del principio del todo, podemos por ejemplo conseguir, que cuando un comentario está escrito por cierto autor, el estilo del texto sea personalizado. El código ya lo facilitamos anteriormente, pero sin explicar demasiado cómo funcionaba. Realmente lo que hicimos entonces, fue comparar las etiquetas data:comment.author (autor del comentario) y data:post.author (autor del post). Si eran la misma persona se usaba un estilo y si no, pues se usaba otro distinto.

También podemos discriminar ciertos post por el nombre de alguna de sus etiquetas (data:label.name), podemos hacer cosas distintas para post con fechas distintas (data:post.dateHeader), generar algún cambio si el siguiente post en la navegación por antiguos/recientes detectamos cierto título o URL (data:newerPageTitle, data:newerPageUrl), entr otras cosas.

No sé para qué puede servir esto último, pero seguro que alguien le encuentra utilidad. Todas las etiquetas DATA son susceptibles de comparación y por tanto, con todas ellas se pueden crear condiciones.

¿Vemos otro post al azar por si le encuentras utilidad o quizás prefieres ser más metódico y suscribirte a nuestras entradas por correo? También puedes imprimir este artículo y por supuesto compartirlo en redes sociales si fue de tu agrado.

Compartir
Copy URL

Y muchos más artículos interesantes si nos sigues en...

follow us in feedly

66 comentarios :

  1. Anónimo2/7/09 19:57

    hola oloman, estoy por crear un blog usando como base la plantilla aspire, tenia la idea de colocar un banner, pero un amigo me dijo que a esa plantilla no se le puede agregar banner ni tampoco un fondo.
    podrias decirme si esto es cierto, o recomendarme alguna plantilla parecida.
    saludos.
    FACUNDO
    pd: te comento como ANONIMO, porque no cree mi cuenta.

    ResponderEliminar
  2. Facundo. La plantilla Aspire es una de mis favoritas, pero aunque tiene ciertas limitaciones, no hay problemas en poner un banner. Eso sí, en las barras laterales seguramente no te quepa.

    No obstante prueba a crear el blog con ella. Luego si no te gusta siempre podrás cambiar la plantilla.

    ResponderEliminar
  3. Oloman tengo una duda tengo la plantilla notepad chaos y no se si se pueda mostrar la opcion de quien posteo la entrada ya que somos varios que posteamos, ya que la plantilla no muestra esa informacion. gracias de antemano

    ResponderEliminar
  4. perdón x comentar aquí, está bien padre tu blog... yo tengo notepad chaos pero no puedo hacer q enlaze el about ni el histórico...

    podrías ayudarme??

    gracias

    ResponderEliminar
  5. Pp_Fer lo primero es comprobar si tienes activad la opción para que se muestre ese dato. Panel de Control-->Elementos de Página
    En el cuerpo principal (entradas) pinchas en editar y te sale la configuración para entradas. Una de las opciones es marcar/desmarcar que se muestre el autor de cada entrada y configurar un nombre para éstas (ideas, noticias,...)

    superKT, busca en tu plantilla el código que reproduzco a continuación y sustituye la contrabarra entrecomillada por las correspondientes direcciones (URL). También puedes cambiar, HOME, ABOUT, ARCHIVES por otras cosas y poner los enlaces en consecuencia, tal y como actualmente está en este blog.

    <div id='menu-holder'><ul id='menu'>
    <li id='home'><a href='/'>Home</a></li>

    <li id='about'><a href='/'>About</a></li>
    <li id='archives'><a href='/'>Archives</a></li>
    </ul>
    </div>

    ResponderEliminar
  6. wow!!! sí me salió! pero...

    no le pude poner otros nombres, osea quedan como home, about; etc y se puede hacer de forma que abra el about y el achives (que son mi perfil y mi canal de utub en ventanas emergentes??

    ya pedí mucho vdd??

    gracias!!! ;)

    ResponderEliminar
  7. Sí les puedes poner otros nombres, lo que ocurre es que lo que aparece en pantalla es realmente un gráfico con esos nombres. Tendrías que cambiar tanto el dibujo base como el que consigue el efecto rollover al pasar el puntero por encima.

    Para abrir el resultado en una ventana nueva, puedes usar target="_blank" dentro de cada enlace. Si lo que quiere es una ventana modal (emergente) utiliza el buscador con la palabra LIGHTWINDOW. Es un SCRIPT muy útil para ese tipo de cosas.

    ResponderEliminar
  8. Hola Olomán.

    Antes de nada enviarte saludos de nuevo desde Galicia.

    Al tema: hoy he descubierto con gran sorpresa, que mi página no carga en su totalidad el Explorer, yo utilizo siempre Firefox y Crome en ocasiones, pero hoy pude comprobar que en el Explorer no me aparece el contenedor de la derecha ni el del final del blog. He repasado muchas de tus notas sobre el tema de las plantillas pero sinceramente, si hay algo publicado al respecto yo no lo he encontrado.
    Como comprenderás es un tema importante para mí, pues en contra de mi manera de pensar, mucha gente sigue utilizando el navegador de Microsoft y fue por ahí por donde me enteré.
    Aguardo tus sabios consejos.

    Un saludo.

    El susurrador.

    ResponderEliminar
  9. Lo siento Susurrador, pero ni siquiera voy a abrir IE para poder ver tu blog :) No es por tí, sino porque llevo toda la tarde intentando desinstalarlo del PC donde estoy esta tarde. No sé exactamente que problema tiene, pero ocupa un alto porcentaje de la RAM disponible y relentiza absolutamente todo.

    De todas formas, para que puedas ir viendo algo, el problema más común es que MARGIN se interpreta distinto con IE y con FF. Seguramente no te borre la barra lateral sino que te la mande abajo por no caber dentro del ancho total asignado a la página. Si es así, puedes probar a disminuir el ancho del cuerpo principal o de la sidebar drásticamente como prueba. Si eso lo soluciona, ya ajustas los pixels necesarios. Si no, dame otro toque que lo vea otro día.
    Saludos

    ResponderEliminar
  10. ok Oloman, nada más q donde lo pego antes o después del enlace o donde???

    sorry x dar tanta lata... ;)

    ResponderEliminar
  11. Gracias por tu rapidez Oloman. Ya probé a cambiar el ancho siguiendo consejos tuyos anteriores que fui recogiendo en tus entradas antiguas.
    Seguiré indagando, pues paciencia no me falta. el problema es que llevo dándole vueltas y vueltas y no sé que demonios pasa.
    Incluso creé hace tiempo un blog para pruebas, utilizando la plantilla del original y en ese, si que me funciona todo en IE.

    Buena tarde y buen trabajo.

    ResponderEliminar
  12. Suponge que te refieres al _blank superKT. Eso va dentro de la etiqueta A, tal que así:
    <a href='http://loquesea.com'TARGET='_BLANK' >ENLACE</a>

    ResponderEliminar
  13. Susurrador... si en una plantilla de pruebas te funciona, entonces debe ser algún gadget que tengas en la plantilla fetén, que ocupa más de la cuenta... algún flash, un vídeo embebido... algo así.

    ResponderEliminar
  14. A veces pasan cosas que no tienen, o al menos yo ne le veo, sentido alguno.
    Efectivamente tenía instalado un visor de imágenes de Arousa, pensando que el problema podía venir de ahí, pues no lo tenía en el "probador" lo eliminé a primera hora de la tarde, pero seguía sin funcionar.
    Que pasó, que no había cerrado en IE en todo el tiempo que estuve dándole vueltas.
    Como ahora tu me haces referencia a lo mismo, cerré el IE, aguardé un par de minutos y lo volví a encender y... voilà, problema solucionado.
    Un nuevo misterio del ¿IE?
    A proposito, instalé recientemente la nueva versión del FF y a pesar de ser Beta, personalmente me va incluso mejor que la anterior.

    Oloman... graciaaaaaas por todo. Tu si que eres un crak, como diría el Sevilla "Un Monstruo, vamos"

    ResponderEliminar
  15. O cosas de la caché, quién sabe... Cómo en aquel chiste:
    Un físico, un químico y un informático van en un coche que de repente se para. Cada uno hace sus cábalas y el físico comenta: "Debe ser cosa del árbol de levas". El químico, un poco escéptico con esa hipótesis añade: "No, más bien tiene que ser debido a un problema en la mezcla del combustible". Y mientras ambos se comían el coco intentando encontrar el problema, va el informático y dice: "¿Y que tal si probamos a salir y entrar de nuevo del coche? Si no arranca, ya llamamos al servicio técnico..."

    Hoy estoy simpátio :)

    ResponderEliminar
  16. q crees Oloman? que no me sale... :(

    me sale el perfil de blogger pero no el mío y sobre la misma ventana, cuando entro de nuevo al html de la plantilla me saca el target="_blank" asi target="_blank"&quot...

    gracias!!!

    ResponderEliminar
  17. superKT, eso es porque metes algunas comillas de más. De todas formas, en esa parte de código, tienes que usar comillas simples (') y no comillas dobles ("), tal como te lo escribí yo.

    ResponderEliminar
  18. Hola Oloman ! he descubierto tu blog hace muy poco, vía Vagabundia. Y ya he puesto en marcha este tema de los condicionales (probando que un widget se vea sólo relacionado aun post en particular). Luego quise hacer que el mismo widget se vea no en uno solo de los post, sino en otro o varios (probando de "anidar" el condicional if), algo que no resultó (no terminé de entender cómo hacerlo en realidad). Pero repasando tu post, creo que la opción de relacionar un widget para que se vea sólo con los post que cuenten con cierta etiqueta sería igual de eficiente para mi. Podrías dar un ejemplo para esto ??? Yo intenté con:
    (b:if cond='data:label.name == "nombre de la etiqueta"') y, obviamente no me resultó.
    Desde ya, agradecido por tu tiempo y respuesta.

    ResponderEliminar
  19. Thrak, esa DATA precisamente sólo funciona dentro de un bucle que va leyendo todas las etiquetas de cada post. En este post se explica un poco.

    Aunque la entrada versa sobre usar distintos estilos para los posts de distintas etiquetas, en tu caso, quizás puedas adaptarlo haciendo que el estilo sea una visibilidad nula (style="display:none;")

    Lo que ocurre es que si se trata de un widget de la barra lateral, creo que no va a funcionar.

    De todas formas, me apunto la idea para cuando tenga un rato. En un principio, quizás generar mediante javascript una variable que haga de interruptor para luego usarla con el widget, pudiera ser la solución. No sé...

    ResponderEliminar
  20. Hola Oloman, he leído el post de referencia y tu respuesta. Hice algunas variantes y pruebas, pero no he logrado el objetivo de automatizar la visibilidad de un widget en la barra lateral según la etiqueta del post a cargar en una página individual.

    Para resolver mi caso en particular terminé creando varios widget y a cada uno le asigné una condición en relación a un post en particular. Medio artesanal la cosa, pero salgo del paso con lo que quiero mostrar y relacionar.

    Nuevamente gracias por tu tiempo y felicitaciones por todo tu trabajo en este blog.

    ResponderEliminar
  21. tengo un blog y quiero que al dar click en el boton buscar me arroje los resultados en otra ventana.

    donde coloco el target="_blank"

    mi blog es juancope.blogspot.com

    gracias

    ResponderEliminar
  22. Hola Juancope, el sitio sería dónde esté la etiqueta FORM:

    <form name="formulario" action="pagina.htm" method="get" target="_blank">

    De todas formas, personalmente me gusta bastante más el gadget buscador que ofrece Blogger. Te abre los resultados en un cuadrado integrado en el blog y los resultados en nuevas ventanas. Puedes probar a buscar algo en este blog para ver si te gusta.

    ResponderEliminar
  23. hola . soy new :p una ayudita para mi. quiero ponerle condicion a los post que tengan una misma etiqueta pero no me sale. e usado esto data:label.name y nada.. ayuda xfavor.

    ResponderEliminar
  24. ¿Qué condición exactamente quieres poner y dónde? Tienes que saber que no todas las etiquetas DATA funcionan en todas las partes de la plantilla y esta es una de ellas.

    ResponderEliminar
  25. Gracias Oloman me parecia mejor que Linkwithin apareciera en los posts inividualmente... Saludos He xD

    ResponderEliminar
  26. xXx4bN3rxXx en un post que hice sobre ese artilugio (Linkwithin) se indica la forma de condicionar para que salga así.

    ResponderEliminar
  27. Tengo una pregunta amigo oloman. ¿Cual sería el código?, si no quiero que se muestren "entradas relacionadas" en algunos post...

    Gracias de antemano

    ResponderEliminar
  28. ¿En algunos? Eso es un poco latoso de hacer, porque tendrías que colocar el último código que aquí se ofrece, anidando varios IF. Uno por cada post en el que no quieras que aparezca. El == habría que sustituirlo por un !=, que provocaría que sólo se mostrara el artilugio SI NO ES IGUAL a la URL indicada.

    Este código mostraría un artilugio en todos los posts, excepto en URL1, URL2 Y URL3:

    <b:if cond='data:blog.url != &quot;URL_1&quot;'>
    <b:if cond='data:blog.url != &quot;URL_2&quot;'>
    <b:if cond='data:blog.url != &quot;URL_3&quot;'>
    CODIGO DEL ARTILUGIO
    </b:if>
    </b:if>
    </b:if>

    ResponderEliminar
  29. Muchísimas gracias oloblogger me ha servido de maravilla, eres una máquina ^_^ ya sé porque ganaste el concurso de BlogS.

    Un abrazo!!!

    ResponderEliminar
  30. Hola Oloman

    Sabes si Blogger interpreta algún otro operador lógico distinto al == y al !=.
    Es decir, se puede estructurar algúna condición de tal manera que pueda incluir un "y o un o lógico".

    La cosa va por este lado:
    Cuando quiero personalizar los avatares en los comentarios que dejo yo tengo un problema porque he cambiado un par de veces mi "firma" de blogger.

    La idea sería, si es posible, hacer algo masomenos así:
    (En pseudocógico)

    SI autor = "Mi nombre 1" o "Mi nombre 2" o data:post.autor
    IMPRIME Avatar Mio
    SI NO
    IMPRIME Otro Avatar
    FIN SI

    Algo de ese estilo, pues probe de estos 2 modos y no funcionaron:

    <if data:comment.autor == "Mi nombre 1" || "Mi nombre 2" || data:post.autor>

    y agrupando los "autores" entre paréntesis.

    <if data:comment.autor == ("Mi nombre 1" || "Mi nombre 2" || data:post.autor)>

    Se me ha convertido esto en un reto, aunque de igual manera en mi blog tengo todo estructurado de tal manera que los avatares se vean bien, lo que no me gusta es que en mis comentarios se me muestran 2 avatares.

    De antemano de envio un saludo cordial.
    Saludos desde Bogotá.

    ResponderEliminar
  31. No lo sé Felipe, aunque nunca lo he visto en ninguna parte y pienso que no.

    De todas formas, a bote pronto se me ocurre otra forma de hacerlo y es anidando los condicionales para el AND y poniéndolos consecutivos para el OR. No es muy eficiente, pero seguro que funciona:

    IMPRIME Otro Avatar

    SI autor = "Mi nombre 1"
    IMPRIME Avatar Mio
    FIN SI

    SI autor = "Mi nombre 2"
    IMPRIME Avatar Mio
    FIN SI

    SI autor = data:post.autor
    IMPRIME Avatar Mio
    FIN SI

    Eso habría que hacerlo para que se imprimera dentro del mismo DIV para que en caso de que se cumplieran los condicionales, se "machacara" el avatar genérico por el tuyo.

    Seguro que hay otras formas mejores, pero ahora no se me ocurren.

    ResponderEliminar
  32. Hola de nuevo Oloman

    Pues efectivamente intenté hacerlo del modo que decias, el problema era que entonces en los comentarios mios aparecian 2 imagenes y se me desplazaban los comentarios.

    Todo estaba dentro de un mismo Div, y en vista de eso, empeze a jugar un poco con los ID y las CLASS haber si lograba sobreponer mi imagen por sobre la genérica aplicando css.

    Intente position, float, clear, overflow, z-index, jeje no te imaginas :) hasta que con el truquito que menciono Bonzu en tu entrada de personalizar los avatares comentaristas, y con Opacity logré algo.

    No fue mucho, igual las imagenes se sobreponian muy feito, al final me dicidí por borrar todos el contenido de los Div de comentarios y sus respectivas propiedades en CSS y los reconstruí con tu guía, y ahora todo se encuentra funcionando perfectamente.

    Te agradezco mucho por tu respuesta y por el ingenio con el cual haces tus explicaciones.

    Mi blog está felíz. Jaja.

    Como siempre, un saludo cordial desde Bogotá, Colombia. :D

    ResponderEliminar
  33. Hay muchas formas de conseguir el mismo resultado o al menos parecido. Encantado de que te algo de lo de aquí te haya servido de ayuda. Un saludo Felipe.

    ResponderEliminar
  34. Me funciono!!... lo use para que un gadget solo se vea en el inicio, pero ahora tengo un pequeño problemita y es que me queda un espacio al entrar a un post o a una etiqueta, y la verdad no me gusta (el gadget esta en la parte arriba)... hay una forma de quitar ese espacio o de hacer algo.

    Desde ya gracias. Saludos

    ResponderEliminar
  35. Prueba a cambiar esto:
    .sidebar .widget, .main .widget {
    border-bottom:1px dotted #333333;
    margin:0 0 1.5em;
    padding:0 0 1.5em;
    }


    por esto:
    .sidebar .widget{
    border-bottom:1px dotted #333333;
    margin:0 0 1.5em;
    padding:0 0 1.5em;
    }
    .main .widget {
    margin:0px;
    padding:0px;
    }

    De esta manera tendrás el estilo de los gadgets de la barra lateral, independiente del estilo del cuerpo principal. En este caso, además, a este último le hemos quitado la linea de separacion y los márgenes, para que ocupen lo mínimo.

    ResponderEliminar
  36. GRACIAS Oloman... me funciono!! :D

    ResponderEliminar
  37. Oloman: Quiero hacerte una consulta... ¿que función le pones a las imágenes para que sean transparentes? (que se vea el fondo)

    ResponderEliminar
  38. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  39. Hola oloman, quiero hacer que un gadget que he añadido desde la seccion diseño solo se vea desde la pagina de inicio del blog, asi que he puesto este codigo https://sites.google.com/site/blogsmahc/codigo.txt?attredirects=0&d=1
    pero no se donde ponerlo es decir como averiguo que id tiene un gadget que se a;ade desde esa seccion, me podrias ayudar con esto porfavor (again)

    ResponderEliminar
  40. Dreamare, lo más fácil es que le pongas un título provisionalmente al gadget. Luego editas la plantilla con artilugios expandidos y lo buscas por su título.

    Te aparecerá un código similar a este. Ya he incluido dónde iría el condicional para que sepas dónde ubicarlo.

    <b:widget id='HTML4' locked='false' title='' type='HTML'>
    <b:includable id='main'>
    CONDICION IF
    <!-- only display title if it's non-empty -->
    <b:if cond='data:title != &quot;&quot;'>
    <h4 class='title'><data:title/></h4>
    </b:if>
    <div class='widget-content'>
    <data:content/>
    </div>

    <b:include name='quickedit'/>
    CIERRE IF
    </b:includable>
    </b:widget>

    Por último, vuelves a Elementos de Página y borras el título que pusiste.

    ResponderEliminar
  41. Muchas gracias, funciono perfecto, como siempre muy agradecido Oloman por tu ayuda.

    ResponderEliminar
  42. mm otra ves yo reviviendo porst viejos pero, me parece que esto de las condicionales le da mucho dinamismo a las paginas en los blogs.

    Esta vez quiero quitar ponerle un condicional a un elemento del blog que sale que en la pagina principal y yo quiero que salga solamente en cada porst yo se que tengo que encerrarlo en este codigo pero no se donde aparece


    Lo busque en mi plantilla pero solo encuentro el css y ahi parece que controla todo, el blog es http://sollelcuerpo.blogspot.com/ y lo que quiero quitar de la pagina principal son los bookmarks llamado sexy bookmark para redes sociales. Gracias de antemano.

    ResponderEliminar
  43. mmm no le di expandir artilugios sin enbargo me sale este error No se ha podido analizar su plantilla, porque no está bien formada. Asegúrese de que todos los elementos XML se han cerrado correctamente.
    Mensaje de error de XML: The element type "b:if" must be terminated by the matching end-tag ""

    al parecer no la cierro donde debo

    ResponderEliminar
  44. Dreamare, tienes que buscar un DIV con id='rodape'. Antes de esa línea va la condición y contando bien los siguientes DIV, tras el cierre que corresponde a RODAPE, el cierre del IF.

    Y por si acaso, asegúrate de que ese cierre tiene su oportuna contrabarra (</b:if>)

    ResponderEliminar
  45. Ola oloman, hoy vengo con la identidad de "la pizzería"¡¡ jeje es un blog que estoy creando para una carnicería... que noo, para una pizzería.. jeje
    El problema es... bueno vamos mejor a la duda: se puede poner una condición a cualquier elemento de un blog?? y se puede utilizar en cualquier parte de la plantilla??

    Muchas gracias por tu tiempo. :)

    ResponderEliminar
    Respuestas
    1. Hola. La respuesta es que sí a lo primero y que no a lo segundo.

      Puedes condicionar cualquier cosa, pero las condiciones de Blogger sólo funcionarán si las pones en la parte HTML de la plantilla, es decir, entre las dos etiquetas BODY. Si se trata de estilo, entonces puedes recurrir a las etiquetas STYLE para insertar el CSS dentro de esa parte.

      Eliminar
  46. Hola Oloman! Genial el tutorial, peroooooooo
    Por todos lados veo que podes condicionar una etiqueta, y cuando haces clic en la etiqueta se ve la pagina de la etiqueta de forma distinta. Hasta ahí bien.
    La cosa es que al hacer clic en el titulo de cualquier entrada se vuelve a ver como todas las demas.
    ¿Como hacemos para que todas las entradas con cierta etiqueta se ven diferente?

    ResponderEliminar
    Respuestas
    1. Si sólo hablamos del estilo lo más fácil es añadir una clase que se llame igual que la etiqueta y luego dar propiedades desde CSS. Aquí tienes una forma de hacerlo algo más desarrollada.

      Otro sistema sería este. En el lo que hago es comparar etiquetas y cuando son iguales a las que quiero, imprimo un icono. En lugar de imprimir un icono se puede poner un estilo determinado.

      Eliminar
  47. Hola, no se si puedes o no se pueda poner las sentencias AND, OR. Lo que quiero es que un widguet quiero que se muestre en ciertas páginas web específicas y para ello quiero hacer sólo una sentencia if, indicando las páginas que se van a mostrar. No quqiero estar haciendo muchos Ifs

    ResponderEliminar
    Respuestas
    1. La respuesta es que hoy por hoy no se pueden añadir esos operadores a las condiciones de Blogger, aunque hay algunos truquillos que pueden abreviar el tema siempre que no te refieras a páginas de entradas concretas.

      En este enlace y en el siguiente post que se enlaza al final de ese, están casi todas las combinaciones.

      Eliminar
  48. Hola! necesito ayuda... no se exactamente qué encerrar con el condicional... quiero que el gadget de linkwithin se vea sólamente en las paginas individuales.... y tambien en versión móvil..

    lo q sale en edicion de plantilla es esto

















    Yo solo encierro la primer linea q es lo de linkwithin .... que hago mal?

    ResponderEliminar
    Respuestas
    1. No sé, ya ue no se ve el código en un comentario si antes no lo pasas por aquí.

      Eliminar
  49. creo q me podras ayudar... olvidandonos de lo de linkwithin, quiero q desde version movil tambien se vea el gadget de entradas populares.... como esta pagina q vista desde movil, muestra los gadget..
    ojala me pudieses ayudar.. llevo semanas con esto.. jjej

    ResponderEliminar
    Respuestas
    1. Si usas la versión móvil de Blogger, esa sólo muestra una serie de gadgets concretos y por lo que yo sé, no puedes hacer nada para que muestre otros distintos.

      De todas las opciones que hay, la única que podría mostrar más sería la de "Personalizada", pero puede que no cuadre mucho el diseño. No lo sé en tu caso concreto.

      La otra opción es usar una plantilla adaptable e inhabilitar la plantilla móvil.

      Eliminar
  50. en personalizado ya se ve lo de entradas populares.. que facil era.. jajaja, muchas gracias!!!!!!!!!!!!!!

    ResponderEliminar
    Respuestas
    1. Lo difícil en este caso y en otros no es hacerlo, sino conocerlo ;)

      Eliminar
  51. Hola Oloman, he descubierto la forma de apagar las luces para oscurecer todo el blog excepto un vídeo o una imágen, y me ha surgido la idea.

    Tengo un blog de Astronomía, como sabes algunas aplicaciones de astronomia bajo windows y android incluyen un botón para ver la aplicacion en visión nocturna cuando estás de noche con el telescopio que convierten el color en rojo y negro.

    Puse en práctica el sistema Apagar las luces en mi blog de pruebas, oscureciendo todo el blog con la transparencia teñida de rojo o de negro, pero al activarlo no puedo hacer clic en los vínculos.

    Mi pregunta es......Puedo teñir todo el blog para que se vea más oscuro o en color rojo semitransparente, pudiendo hacer clic en los vinculos?

    Gracias de antemano por atender mi comentario, reiber un cordial saludo!

    ResponderEliminar
    Respuestas
    1. Hola Juan Carlos. Ahora veo que tienes un segundo blog con otros tonos ya adaptados para lo que quieres y por eso sólo puedo suponer que lo que hiciste fue superponer una capa por encima de todo que cambiaba el color del contenido. Esa capa solapada es lo que impedía que no pudieras acceder a nada.

      No se me ocurre ninguna manera fácil, ya que salvo otra idea mejor, habría que cambiar el estilo de los elementos más relevantes al pinchar en el botón: pasar texto a rojo, todos los fondos a negro, etc.

      Eso se puede hacer con JavaScript, pero sería más complicado cuantos más elementos heterogéneos tengas en tu blog.

      Eliminar
    2. Gracias por tu respuesta Oloman, y por agregarme en G+, he consultado este tema en un foro de blogger en donde tienes cierta categoría, te paso el enlace y hechas un vistazo a la conversación, gracias, fuerte abrazo!

      https://productforums.google.com/forum/#!topic/blogger-es/q6ztxolzUe8;context-place=forum/blogger-es

      Eliminar
    3. Lo he leído ahora mismo Juan Carlos y en esencia es lo mismo que te esbocé, cambiar el estilo desde JavaScrip, aunque lo de la cookie es una aportación que pudiera ser también útil.

      También he visto que tienes problemas para aplicar todo como quieres pero ya te advertí que sería más complicado cuantos más elementos hubiera distintos entre los dos estilos.(diurno/nocturno)

      Pienso que una vez tienes la solución, en el foro no van a poderte guiar paso a paso como necesitas... y por si tienes esa idea, yo desde aquí tampoco. Podemos darte ideas o ayudarte con una cosa muy concreta, pero lo que quieres es un rediseño casi completo del blog. Es cuestión de probar, pero si te supera y tienes mucho interés, quizás puedas contratar a alguien para ello.

      Eliminar
    4. Hola Oloman, perdona por el retraso en mi respuesta, más vale tarde que nunca!. He decidido tener un segundo blog en rojo y negro enlazado desde el principal. Sé que ésto me penaliza en las búsquedas de Google y en las estadísticas del blog, pero eso es lo que menos me importa, ya que Universo Mágico tiene ya un éxito importante en la red. De hecho ya he notado un bajón en las estadísticas del blog, sé que tiene cientos de +1 diarios y en blogger me da muy pocos, pero eso es lo de menos. Gracias por tu ayuda de igual forma, saludos!

      Eliminar
  52. Hola Oloman! Tengo una duda, me sería muy útil si me dieras una mano. Quiero que en la home se vea un solo post, uno elegido por mí. ¿Es posible? Desde ya muchísimas gracias ❤

    ResponderEliminar
    Respuestas
    1. Hola Priscilla. Eso se puede hacer de una manera óptima con algo que daría para un post entero, pero como método rápido y fácil en primer lugar debes configurar desde Escritorio > Diseño > Entradas > Editar, que se muestre una sola entrada.

      Luego tienes que ponerle a ese post fecha de hoy y publicarlo. Y ahora viene el truco: editas de nuevo ese mismo post y le pones fecha futura, por ejemplo de 2018. De esa manera te quedará siempre el primero y único... hasta 2018.

      Eliminar