Comment créer un lien pour ajouter une entrée à un calendrier?

je travaille pour cette boîte de nuit et sont en train de faire un site web pour eux, ils ont beaucoup d'événements et leur site est construit beaucoup autour des événements, aujourd'hui ils font un événement facebook de chaque événement, mais il serait mortel d'avoir un bouton" Ajouter à mon calendrier " qui l'a ajouté à votre calendrier iCal ou Google (ou peut-être même Outlook).

j'ai réussi à comprendre comment faire un calendrier de l'alimentation, mais alors il sera ajouté à un nouveau calendrier, seule bonne chose est que les gens peuvent s'abonner à des événements", mais c'est très salissant à avoir un calendrier pour chaque événement. Donc je voudrais savoir comment implémenter une fonction qui leur permet de l'ajouter à leur calendrier principal facilement. Penser comme un mailto: lien, mais pour les calendriers si c'est possible.

aussi pendant que je suis au sujet si quelqu'un sait s'il est possible d'importer automatiquement un événement de Facebook à WordPress ou Exporter un événement de WordPress à Facebook qui serait génial, mais ce n'est pas si important.

39
demandé sur Hultner 2011-04-29 16:15:06

7 réponses

mise à JOUR (gratuit pour une utilisation personnelle):

alors que ma réponse ci-dessous détaillant comment-to pour chaque service fonctionnera, IMO il est beaucoup plus facile maintenant d'aller avec un tiers comme AddThisEvent [http://addthisevent.com] . Il vous permet de personnaliser de nombreuses options ainsi que d'ajouter à Facebook et plus. malheureusement, ils en ont fait un service payant pour autre chose que l'usage personnel et font appliquer cela.

pour les utiliser via SSL:

HTTPS n'est pas supporté. Cependant je vous recommande de télécharger ceci paquet pour la 1519160920" usages locaux et de les télécharger sur votre propre serveur.

je suppose qu'il y a d'autres solutions tierces comme celle-ci, mais je ne peux parler qu'à celle-ci, et cela a bien fonctionné pour nous jusqu'à présent.


pour un " ajouter à mon calendrier Google ", ils avaient l'habitude d'avoir un formulaire de générateur de code que vous pourriez utiliser, mais ont depuis pris vers le bas. Pour plus de détails sur les liens Google Calendar, voir réponse de squarecandy ci-dessous .

pour Outlook , C'est un peu plus compliqué, mais fondamentalement, vous devez créer un .vcs fichier avec les données de l'événement, et juste faire un lien vers ce fichier. instructions étape par étape ici .

pour un lien iCal , vous pouvez utiliser une classe PHP comme celle-ci , ou suivre les instructions de cette page sur la façon de créer un fichier ics (fichier iCal).

37
répondu Dave 2017-05-23 12:02:11

les liens dans le post de Dave sont grands. Juste pour mettre quelques détails techniques sur les liens google dans une réponse ici sur SO:

Lien Du Calendrier Google

<a href="http://www.google.com/calendar/event?action=TEMPLATE&text=Example%20Event&dates=20131124T010000Z/20131124T020000Z&details=Event%20Details%20Here&location=123%20Main%20St%2C%20Example%2C%20NY">Add to gCal</a>

les paramètres étant:

  • action=MODÈLE (obligatoire)
  • texte (url codée nom de l'événement)
  • dates (format ISO date), startdate/enddate - doit avoir l'Heure de début et l'Heure de fin - le générateur de boutons vous permettra de laisser l'Heure de fin vide, mais vous devez avoir un ou il ne fonctionnera pas.)
    • pour utiliser le fuseau horaire de l'utilisateur: 20131208T160000/20131208T180000
    • pour utiliser le temps global, convertir en UTC, puis utiliser 20131208T160000Z / 20131208T180000Z 1519190920"
    • événements toute la journée, vous pouvez utiliser 201312/2010831209 - notez que le générateur de boutons se trompe. Vous devez utiliser la date suivante comme date de fin pour un événement d'un jour toute la journée, ou +1 jour à ce que vous voulez que la date de fin soit.
  • détails (url encoded event description/détails)
  • emplacement (url encodé lieu de l'événement - assurez-vous que c'est une adresse google maps peut lire facilement)

Mise À Jour Fév 2018:

Voici une nouvelle structure de lien qui semble prendre en charge la nouvelle version google de google calendar sans nécessiter L'interaction API:

https://calendar.google.com/calendar/r/eventedit?text=My+Custom+Event&dates=20180512T230000Z/20180513T030000Z&details=For+details,+link+here:+https://example.com/tickets-43251101208&location=Garage+Boston+-+20+Linden+Street+-+Allston,+MA+02134

nouvelle url de base: https://calendar.google.com/calendar/r/eventedit

nouveaux paramètres:

  • texte (nom de l'événement)
  • Les dates
  • (format de date ISO, date de début / fin - doit doivent avoir les deux dates de début et l'heure de fin)
    • un événement w/ début/de la fin des temps: 20131208T160000/20131208T180000
    • tous les événements de la journée, vous pouvez utiliser 20131208/20131209 - date de fin doit être +1 jour à tout ce que vous voulez la date de fin d'être .
  • ctz ( timezone tels que America/New_York - laissez le champ vide pour utiliser par défaut de l'utilisateur fuseau. Fortement recommandé d'inclure dans presque toutes les situations. Par exemple, un rappel pour une vidéoconférence: si trois personnes dans des fuseaux horaires différents cliquent sur ce lien et mettent en place un rappel pour leur "propre" mardi à 10h00, cela ne marcherait pas bien.)
  • détails (url encoded event description/détails)
  • emplacement (url encodé lieu de l'événement - assurez-vous que c'est une adresse google maps peut lire facilement)

Notes:

  • l'ancienne structure d'url ci-dessus redirige maintenant ici
  • supporte https
  • traite w/ fuseaux horaires de mieux
  • accepte + pour l'espace en plus de %20 ( urlencode vs rawurlencode en php-les deux travaux)
46
répondu squarecandy 2018-02-17 20:35:23

voici un ajouter au calendrier service pour servir le but de l'ajout d'un événement sur

  1. Calendrier D'Apple
  2. Google Agenda
  3. Outlook
  4. Outlook En Ligne
  5. Yahoo! Calendrier

le " ajouter au calendrier " bouton pour les événements sur les sites Web et calendriers est facile à installer, la langue indépendante, le fuseau horaire et compatible DST. Il fonctionne parfaitement dans tous les navigateurs modernes, tablettes et appareils mobiles, et avec Apple Calendar, Google Calendar, Outlook, Outlook.com et le calendrier Yahoo.

<div title="Add to Calendar" class="addeventatc">
    Add to Calendar
    <span class="start">03/01/2018 08:00 AM</span>
    <span class="end">03/01/2018 10:00 AM</span>
    <span class="timezone">America/Los_Angeles</span>
    <span class="title">Summary of the event</span>
    <span class="description">Description of the event</span>
    <span class="location">Location of the event</span>
</div>

enter image description here

9
répondu jGupta 2018-02-15 05:50:11

pour ajouter à la contribution de calendrier Google de squarecandy, voici le tout nouveau

calendrier OUTLOOK format (sans besoin de créer .ics)!!

<a href="https://bay02.calendar.live.com/calendar/calendar.aspx?rru=addevent&dtstart=20151119T140000Z&dtend=20151119T160000Z&summary=Summary+of+the+event&location=Location+of+the+event&description=example+text.&allday=false&uid=">add to Outlook calendar</a>

tester

il serait préférable de coder url_encode les valeurs des variables résumé, localisation et description.

pour le bien de la connaissance,

calendrier YAHOO format

<a href="https://calendar.yahoo.com/?v=60&view=d&type=20&title=Summary+of+the+event&st=20151119T090000&et=20151119T110000&desc=example+text.%0A%0AThis+is+the+text+entered+in+the+event+description+field.&in_loc=Location+of+the+event&uid=">add to Yahoo calendar</a>

tester

le faire sans un tiers présente de nombreux avantages, par exemple en l'utilisant dans des e-mails.

5
répondu Email 2015-11-05 14:16:42

vous pouvez demander au programme de créer un .ics (iCal) version du calendrier et ensuite vous pouvez importer ceci .ics dans n'importe quel programme de calendrier que vous souhaitez: Google, Outlook, etc.

je sais que ce post est assez vieux, donc je ne vais pas m'embêter à entrer n'importe quel code. Mais veuillez commenter ceci si vous voulez que je vous donne un aperçu de la façon de procéder.

1
répondu fishcx 2012-07-25 19:43:06

si vous recherchez quelque chose de vraiment simple, vous pouvez utiliser ce widget http://addthisevent.com / . Il fonctionne vraiment bien et simple à mettre en œuvre. Je sais que c'est vieux, mais juste si quelqu'un regarde.

1
répondu 2013-11-07 18:15:30

l'avantage d'un abonnement à votre calendrier d'événements, comme vous le dites, est que vous pouvez changer les dates/heures/informations et ils devraient être reflétés dans vos abonnés. Pourquoi créez-vous un calendrier séparé pour chaque événement au lieu d'un?

connaissez-vous les API pour Google Calendar et Facebook?

comme pour la dernière question, Avez-vous l'intention de maintenir deux événements distincts alimente sur Wordpress et Facebook? Vous pourriez avoir Wordpress accaparant le flux de Facebook. Peut-être une sorte d'événements CMS qui publie sur Facebook puis met à jour le flux Wordpress?

0
répondu oblig 2011-04-29 12:41:08