jcroldan, 16/04/2006
Hace unos días que se anunció el lanzamiento de Google Calendar. Parece que a raiz de este anuncio se han popularizado (o al menos suenan mucho más) los calendarios online.
Se ve que todo lo que lleve Google delante casi tiene asegurado el éxito.
Se me ha ocurrido una manera de integrar tus propios calendarios con Wordpress. Se trata de poder dar de alta eventos en un calendario público de Google Calendar y mediante el estandard iCal, poder representarlos en Wordpress.
Para ello, he usado el plugin iCal Events. Este plugin nos permite indicarle una url con el fichero .ics, el plugin se lo baja (cacheandolo para aumentar la velocidad y ahorrar peticiones a Google), lo parsea y genera el código html necesario. Para parsear el iCal se basa en la libreria “import_ical.php” del proyecto WebCalendar. En esta página del plugin encontrareis todo lo necesario para echarlo a andar. Yo estoy usando la versión 1.5.
A la hora de crear el calendario en Google Calendar, sólo hay que tener en cuenta que el calendario debe ser público. No basta con que haya eventos públicos. Por ello recomiendo que os creeis un nuevo calendario, además del personal, en el que vayais dando de alta los eventos que querais que aparezcan en vuestro blog. Una vez creado, solo teneis que coger la url ICAL del calendario y la usareis con el plugin iCal Events.
A continuación teneis un ejemplo de como yo he integrado mi calendario público de google Calendar en mi blog:
< ?php ICalEvents::display_events( 'url=http://www.google.com/calendar/ical/5vk9099nq688h4ch64kcaep53o' . '@group.calendar.google.com/public/basic' . '&limit=5' . '&gmt_start=' . time() . '&before_summary=<p>' . '&after_summary=</p>' . '&before_description=<p>' . '&after_description=</p>'); ?>
Tambien podeis aprovechar la característica de Google Calendar de establecer un “Location” (lugar) para el evento. Este es el campo “Where” del evento. Se pueden poner nombres de ciudades (incluso calles, pero Google Maps no tiene todavia mucha información fuera de EEUU) e incluso coordenadas Latitud-Longitud.
He modificado el plugin para que genere un enlace a Google Maps usando este campo del evento. En otra ventana os abrirá el mapa donde se produce el acontecimiento. Yo lo he usado para localizar las ciudades de los Grandes Premios de Formula 1.
Incluso si en la descripción del evento poneis el código html necesario para que enlace con un artículo de vuestro blog, Google Calendar respetará ese código y el plugin generará el enlace.

Blog libre de humos





Con WP 2.0 o 1.5?
Funciona correctamente con WP 2.0.2. Este blog está hecho con esta versión.
Ole, ole y ole!
esto pinta muy bien
Muchas gracias por la info compañero
Con el fin de integrar aun más los campos de los eventos de Google Calendar con Google Maps, sobre todo para los mapas de los circuitos, estoy pensando en hacer un nuevo plugin (o quizas un widget) basandome en iCal Events.
A ver si encuentro un ratito libre. Ya os iré contando.
Pues a algunos nos vendría muy bien
ánimo!
He estado dandole vueltas. Con el iCal Events es más que suficiente. El único problema es que Google Calendar te quita el código html la siguiente vez que cambies la descripción del evento. Así, si pones un enlace a un google Map o a un artículo tuyo, Google Calendar te deja el texto plano la próxima vez que toques la descripción. Espero que lo arreglen.
Por otro lado, el plugin iCal Events va muy bien, pero para poder poner enlaces en la descripción hay que tocar el plugin en el sitio donde genera el html y quitar la línea del htmlentities al coger la descripcion. Tambien hay que sustituir el caracter \ (es decir “\\”) por un ” para que no estropee las url.
Por lo demás, el iCal Events va muy bien, y el tema de la cache hace que cargue muy rápido. Así que por ahora no me complico más la vida,
Una pregunta, conoces algún tipo de sincronización directa del calendario de Google Calendar con el calendario de Windows Mobile 2005? es que me es más cómodo ir poniendo las cosas en movimiento. He buscado y no he encontrado nada, pero bueno, por si acaso pregunto
En principio, Google Calendar se puede sincronizar/importar desde Microsoft Outlook, y la agenda de Windows Mobile 2005 se sincroniza con Outlook también, así que debe haber una forma de hacerlo. Por lo menos Google Calendar es compatible iCal, a ver si por ahí se puede hacer algo.
Voy a ver como hace Google Calendar para sincronizarse con Outlook…
Pues parece ser que solo funciona la importación desde Outlook y hecho a mano, es decir, exportar desde Outlook e importar en Google Calendar. En un futuro Google dice que se podrán sincronizar ambos calendarios. Así que toca esperar.
A ver si hay suerte y se pueden sincronizar los calendarios pronto
gracias por la info
En Digg he encontrado una forma de dar de alta eventos vía SMS directamente en Google Calendar, pero por ahora solo funciona en EEUU.
http://digg.com/software/Add_Events_to_Google_Calendar_with_SMS
Lo que sería la bomba sería sincronizar directamente desde el pc o desde internet por wifi o gprs, porque lo de los mensajes tiene pinta de ser carillo
[...] Como sigo buscando cosas para mostrar a mis alumnos, me he detenido en la opción que tiene de exportar la información en XML y poder insertarla en otras aplicaciones. Ya que estoy jugando con el WordPress, he decidido recurrir a mi amigo Google para buscar a ver si alguien lo había integrado. Es increible, no hace ni 15 días que ha aparecido y en el blog aparici.es ya lo he encontrado… Utiliza Ical en vez de XML pero la idea ya me sirve. [...]
Hmmm, he estado probandolo, pero no consigo que me cree en enlace a google maps automáticamente. En el evento de google calendar tngo puesto el lugar, y me lo reconoce como una direccion y tal (en google calendar me muestra el enlace al mapa), pero en la página, al usar el plugin sólo consigo qu eme muestre la direccion en texto plano, pero nada de html. :-S
Dices que has modificado el plugin para que crre ese enlace a google maps, puedes explicar cómo es esa modificacion?
Gracias
Ajá, ya lo tengo casi controlado, el problema es que no sé cómo hacer para que los espacios de la dirección los interprete como argumentos del hipervinculo fuera del href
:-S
Hola Miguel,
este es mi trozo de código que trata el campo Location del Evento:
if ($use_location and $event['Location']) {
$location = htmlentities($event['Location']);
$output .= $before_location . '<a href="http://maps.google.com/maps?t=h&q='.$location.'" target="_blank" rel="nofollow">'. 'Google Maps' . '</a>' . $after_location;
}
Digamos que uso htmlentities para que convierta espacios y signos a formato url y luego le añado por delante la url de maps.google.com
Muchas gracias, al final lo he conseguido arreglar por mi mismo.
Tenia miedo a meterle mano al plugin pero ha sido lo mejor, porque además he cambiado el orden en el que me muestra las partes del evento: quería poner el enlace al mapa junto al summary y después poner la dirección en texto plano también.
De todas formas, muchas gracias por la ayuda.
Por cierto, el enlace que tienes en el tuyo junto al de iCal, el de XML, para qué programas sirve? ¿Para el Outlook? :-S
Hmm, ahora estoy tratando de averiguar si igual que puedo poner un enlace para que alguien sincronice su calendar usando el feed del iCal, también podría hacerlo para cada evento en particular, es decir, que alguien pueda añadir a su calendario solo el evento que le interese recordar.
¿Alguien ha intentado algo así?
Muchas gracias
Eso lo puedes hacer desde el Google Calendar, es decir, en Google te añades mi calendario público y el evento que te interesa lo copias desde mi calendario al tuyo.
Así, si yo cambio algún dato del evento en mi calendario público, se te actualiza en tu Google Calendar la referencia al mio.
El XML sirve para añadirte mi calendario público a tu Google Calendar. Por ahora sólo Google es compatible con este formato (que yo sepa).
Está interesante esto de los calendarios. Sólo falta meter la información, mejor dicho, acostumbrarse a meter la info.
[...] Por ahora seguiré con el plugin Ical Events pero es bastante atractiva esta forma de integrar Calendar. [...]
Yo soyy nuevo en esto… Tengo un sitio en Wordpress y quiero agregar Google Calendar. Mis preguntas son:
1- En que archivo y en dónde pego el código?
2- Que dirección de URL tengo que apuntar para ver mi calendario?
3- Se puede cambiar el skin del calendario?
Ok…
Muchas Gracias
[...] Ahora, hurgando por ahí me topé con esta solución de Apacir.es que – en una jugada estupenda – aprovecha el motor de Google Calendar para servir la información. Sin embargo, por motivos presumiblemente asociados a mi intolerancia genética para digerir código, no he logrado que funcione. [...]
Muy buen post. Pero tengo un pequeño problema: la hora del evento me aparece con 9 HORAS DE ADELANTO.. es decir, que para que salga a la hora a la que está puesto el evento en GoogleCalendar tendría que sumarle 9 horas a la que aparece en mi blog… ¿alguna idea?
Gracias !
Hola,
Yo ya he integrado mi aplicación con google calendar para que envíe un SMS cuando emiten por la TV algo de interés según las preferencias de cada uno.
Aquí está cómo lo he hecho:
http://www.invira.es/TDT/blog/113-el-avisador-de-programas-por-emilio-ya-lo-es-tambien-por-sms