Seteo de FB.Canvas.setAutoGrow

Al desarrollar apps de Facebook, es de esperar que las distintas páginas que la componen tengan diferentes altos, como sucede con cualquier sitio web.

Como las apps se cargan dentro de un iframe (el cual siempre tiene un alto), necesitamos hacerle saber a Facebook que a medida que navegamos entre pantallas, debe actualizar el alto del iframe.

Es así como Facebook nos da el maravilloso FB.Canvas.setAutoGrow,  que promete ser la solución a las molestas barras de scroll vertical del iframe.

Pero no lograrán deshacerse de ellas al menos que pongan estas líneas de CSS:


html, body{
    overflow:hidden;
}

No estaría mal que incluyan este código en el developers.facebook.

Facebook Share

Un tip rápido para aquellos que añaden cosas de Facebook a sus blogs, en este caso el Share con el globito que cuenta la cantidad de veces que fue compartido un enlace.

Si lo intentaste hacer, ya sabés que el tutorial oficial es muy simple de seguir, un copy/paste y sale con fritas…

Pero si todo fuese taaaaaan facil, entonces no habrías llegado a esta web, ya que existe un problema por el que necesitás hacer click en el share para que te aparezca el globito. Los programadores de Facebook implementaron el hecho de que muestre el globito con la cantidad de shares sólo cuando se haya compartido, como mínimo, tres veces.

Eso quiere decir que hasta que alguien no haga click y lo comparta con sus amigos (y esto, tres veces…) no se va a ver ese diseño tan lindo que querías poner. Entonces, tenés que hacer trampa, y te digo cómo:

1) Parche facil, pero no elegante: el javascript de Facebook hace la cuenta de cuántas veces compartieron tu enlace, y si el resultado es menor a tres, entonces añade la siguiente class al span que hará al gobito:

.fb_share_no_count{
display:none;
}

Entonces la solución es sobreescribir el display none. Si al botón lo colocamos dentro de un div con id share, entonces:

#share .fb_share_no_count{
display:block;
}

Esto sólo mostrará el globito, dentro de él no habrá ningún número, aunque se haya compartido una o dos veces, eso no se mostrará.

2) Parche copado, pero de tiempo limitado: para implementar esta utilidad, copiaste un código javascript, el cual es:

<a name=»fb_share»></a>
<script src=»http://static.ak.fbcdn.net/connect.php/js/FB.Share»
type=»text/javascript»>
</script>

Si en vez de llamar externamente a ese javascript, hay que bajarlo y editarlo, más específicamente hay que buscar la siguiente línea:

this.displayBox(a,3);

¿Ya se imaginan que quiere decir ese 3? Entonces, hay que cambiar al 3 por un 0, guardar, subir el .js a nuestro servidor, y hacer la llamada localmente. Esta solución está publicada en Patrick M. Kelly’s Bulletin Board.

Cuál es el problema de esto? que la semana que viene, o dentro de un mes, o cuando sea, Facebook va a cambiar la programación del Share. Cuando eso suceda, tu programación editada puede llegar a no funcionar.

Estará en cada uno evaluar qué camino seguir.

Errores de concepto

En los últimos dìas leo en Facebook la apertura de uno, y otro, y otro grupo que intenta «juntar firmas» para que vuelva el «Hazte fan». En lo que me hace pensar es en cuántas empresas y productos habrán tenido su web caída durante estos días.

Para que me entiendan los que no saben tanto sobre desarrollo web, les explico que cuando uno pone un widget o código de un sitio de tercero en tu propia web, existe una posibilidad de que cuando ese sitio de tercero deja de funcionar, el tuyo deje de hacerlo también. Esto suele depender de qué tipo de «interacción» tenga el widget con tu propia web. Si es por javascript, quizás no ande alguna animación en jQuery, pero si es en PHP, quizás deja de cargar el resto del código de tu página.

Es verdad que estas aplicaciones tienen sus correspondientes mensajes de error… pero yo no confiarío mucho en los programadores jajaja.

Y por qué el título del post es «Errores de concepto»? Porque hay acciones que se basan exclusivamente en obtener mayor cantidad de fans. En esos casos, esa web que tanto costó diseñar y programar para que funcione a la perfección con Facebook, hay que tirarla a la basura.

El problema es que seguramente el cliente dijo «quiero que en mi web este facebook», y del otro lado, en vez de sugerirle al cliente que lo mejor es diseñar la página de la empresa/producto directamente en facebook (con todas las limitaciones estéticas que esto implica), lo hace… y mal.

Si querés estar en Facebook, entonces debés aprender que FB pone las reglas, y lo que hoy está, mañana no. Por qué? no importa el motivo. Entonces es preferible sacrificar de un lado (diseño) para ganar en otro. Acaso no saben que las páginas de FB tienen estadísticas? Quizás es mejor usar ese tiempo para aprender a interpretarlas y sacar provecho de lo que realmente importa: la persona que entró a tu web y le dedicó un tiempo. Quién sabe, quizás hasta pueden «interactuar» con élla.

Posteando…

… ha pasado un tiempo.

Y todavía hay gente que cree que hacer una página web es una webada. Perdí la cuenta de las veces que ya escribí sobre esto, pero es verdad. Tanto, como que encuentro divertido unir todas las boludeces que hay dando vuelta, como Twitter y Facebook, a mi sitio. Hace rato que tengo los posteos de Twitter (PHP => SimpleXML), y en el Facebook se publica lo que escribo acá… cuando quiero. Porque si miran, este post no sale publicado, pero el anterior sí. La magia de la interné (MySQL => where publicado=3).

Estoy trabajando demasiado, y el mayor problema de eso es que a pesar de las horas diarias en las que trabajo con/para/por internet, no me estoy actualizando/capacitando como sí lo hacía un año atrás. No deja de parecerme muy extraño eso.

Basta de quejas, trato de volver a estar online… otra vez.