Descrição
Você: Eu só quero colocar um calendário do Google Agenda no meu site WordPress.
Google: Aqui está ele de um jeito bem horroroso!
Pretty Google Calendar: Deixa que eu resolvo.
Este é um plugin leve e simples que integra calendários do Google Agenda em seu website com estilo, beleza e graça.
Pontos principais:
- Out of the box support for calendar grid and agenda list view (and most other FullCalendar views)
- Design responsivo, alterando para exibição em lista para telas menores
- Exibição em lista customizável para dia, semana, mês, ano ou um número customizável de dias.
Como funciona:
- Continue a gerenciar eventos usando o Google Agenda como você sempre fez.
- Adicione um shortcode na sua página.
- Respire com alívio.
- É isso.
Capturas de tela
Instalação
- Suba a pasta do
pretty-google-calendar
para o diretório/wp-content/plugins/
. - Ative o
Pretty Google Calendar
através do menu ‘Plugins’ no painel do WordPress. - Obtenha a sua chave de API do Google Agenda (veja abaixo)
- Adicionar a chave da API às Configurações -> Configurações do Pretty Google Calendar
- Use o shortcode
[pretty_google_calendar gcal="calendarID@group.calendar.google.com"]
diretamente na sua página ou post.
Opções do Shortcode
gcal="CalendarID,CalendarID"
O ID do calendário do Google Agenda desejado (nota: precisa ser configurado para ‘Disponibilizar publicamente’. Para exibir multiplos calendários, separe os IDs com uma vírgula. (Nota: os calendários devem estar sob o mesmo acesso da chave de API.))
locale="en"
Configura o local para regionalização do calendário. O padrão é “en”.
list_type="listCustom"
Configura o tipo de lista. Opções: listDay
, listWeek
, listMonth
, listYear
, e listCustom
. (Também aceita day, week, month, year e custom).
O padrão é listCustom
para compatibilidade retroativa.
Nota: listCustom
permite que você configure o número de dias que você deseja exibir a partir da data atual. Enquanto listMonth mostra todos os eventos deste mês (incluindo eventos passados), list_type="custom" custom_days="28"
irá mostrar os próximos 28 dias através dos meses.
custom_days="28"
Configura o número de dias a serem exibidos na aba de lista. O padrão é 28. Somente utilizado com listCustom.
custom_list_button="list"
Configura o rótulo do botão listCustom. O padrão é “list”.
views="dayGridMonth, listCustom"
Configura os tipos de calendários disponíveis. Se apenas um for provido, não serão exibidos botões para alterar os tipos de calendários. O padrão é “dayGridMonth, listCustom”.
initial_view="dayGridMonth"
Configura o tipo padrão de calendário a ser exibido assim que a página é aberta. O padrão é “dayGridMonth”.
enforce_listview_on_mobile="true"
Configura o comportamento de mudança para o tipo lista em telas pequenas. Opções: “true” e “false”. O padrão é “true”. Esta opção não tem efeito se não houver uma lista declarada na opção “views”.
show_today_button="true"
Configura a visibilidade do botão “Hoje”. Opções: “true” e “false”. O padrão é “true”.
show_title="true"
Configura a visibilidade do título do calendário. Opções: “true” e “false”. O padrão é “true”.
id_hash=random
Sets the ID hash for a calendar. If you have multiple calendars on a page and need to style them, you can set this to a permanent code. Otherwise, it’ll randomly generate each load. (Note: as of v2.0.0 this can only be alphanumeric.)
use_tooltip="true"
Migrating from global setting for individual calendar styling. Whether the floating tooltip for event pops up on click.
no_link="true"
Migrating from global setting for individual calendar styling. Whether to disable link to calendar.google.com on click.
fc_args = JSON string ((EXPERIMENTAL))
Allows you to override or impliment just about any FullCalendar argument (with some exception). For example: fc_args='{"weekNumbers":"true", "eventTextColor":"red"}'
Note: any argument that contains []
will fail due to WordPress’ parsing of shortcodes. No workaround currently.
Note: this is experimental – things may break.
Styling Multiple Calendars
As of v1.7.0, each calendar gets it’s own CSS selector: pgcal-event-#
where the # is the order of the listed calendar (starting with 0). So if you have two calendars in one, you can use pgcal-event-0
to style the first, and pgcal-event-1
to style the second calendar.
Obtendo a Chave de API do Google Agenda
- The good folks at WPBeginner have a comprehensive writeup: https://www.wpbeginner.com/plugins/how-to-add-google-calendar-in-wordpress/
(Although in the API Restrictions Section, you may need “Don’t Restrict Key” selected. YMMV.)
Deixe o seu calendário do Google Agenda público:
- Na interface do Google Agenda, ache a área de “Minhas agendas” à esquerda.
- Passe o mouse sobre o calendário que você precisa e clique na seta para baixo.
- Um menu irá aparecer. Clique em “Compartilhar esta agenda”.
- Marque “Tornar este calendário público”.
- Certifique-se que “Ver apenas os níveis disponível/ocupado (ocultar detalhes)” está desmarcado.
- Clique em “Salvar”.
Obtenha o ID do seu calendário do Google Agenda:
- Na interface do Google Agenda, ache a área de “Minhas agendas” à esquerda.
- Passe o mouse sobre o calendário que você precisa e clique na seta para baixo.
- Um menu irá aparecer. Clique em “Configurações da agenda”.
- Na parte “Endereço da agenda” da tela você irá ver o seu ID do calendário. Ele se parecerá com algo como “abcd1234@group.calendar.google.com”. Este é o valor que você deve colocar no seu shortcode.
Perguntas frequentes
-
Que feitiçaria é essa?!
-
O Pretty Google Calendar implementa o excelente Full Calendar para você e usa um pouco de Tippy.js e Popper para fazer as coisas… bem… popar.
-
Eu posso usar isso para gerenciar um calendário?
-
Não. Todos os eventos do calendário são mantidos através do Google Agenda. Este plugin apenas os mostra de um jeito menos pior.
-
Como eu crio um tema para o calendário?
-
Adicione um CSS customizado ao seu tema para adaptar ao seu desejo.
-
Este plugin pode fazer X, Y ou Z?
-
Provavelmente não. Mas talvez possa!
O Pretty Google Calendar é propositalmente simples e fácil, configurável com poucos valores padrão para fazer as coisas simplesmente funcionarem. Contudo, pode ser que haja uma funcionalidade matadora que outros também estão clamando.
Uma vez que é baseado no Full Calendar, teoricamente, tudo que é possível lá é possivel aqui. Entre em contato para solicitar funcionalidades adicionais e vamos ver o que nós conseguimos criar juntos!
Avaliações
Colaboradores e desenvolvedores
“Pretty Google Calendar” é um programa de código aberto. As seguintes pessoas contribuíram para este plugin.
ColaboradoresPretty Google Calendar” foi traduzido para 5 localidades. Agradecemos aos tradutores por suas contribuições.
Traduzir “Pretty Google Calendar” para seu idioma.
Interessado no desenvolvimento?
Navegue pelo código, consulte o repositório SVN ou assine o registro de desenvolvimento por RSS.
Registro de alterações
2.0.0
- Fixed: XSS vulnerability (required elevate privileges, not likely to be exploited). May break CSS for folks using the
id_hash
shortcode argument. - Tested: WordPress 6.5.2
1.7.2
- Tested: WordPress 6.4.3
- Fixed: Security fix
1.7.1
- Fixed: full FullCalendar locale support
- Updated: FC Google Calendar to 6.1.10
1.7.0
- Tested: WordPress 6.4.2
- Added: (Almost) full implimentation of FullCalendar args (see Shortcode Options)
- Added: Colors for multiple calendars in one
- Fixed: Removed view restrictions
- Update: FullCalendar to v6.1.9
- Update: Tippy.js to 6.3.7
- Update: Popper.js to 2.11.8
1.6.2
- Fixed: Broken table margin
1.6.1
- Fixed: Arg parsing in shortcode
1.6.0
- Added: Multiple calendars on one page
- Added: use_tooltip shortcode arg for calendar specific options
- Added: no_link shortcode arg for calendar speficic options
- Fixed: Security fixes
1.5.1
- Fixed: Better parsing of urls to accomodate existing tags
1.5.0
- Tested to WordPress 6.3.1
- Added: End times in details popup
- Added: Location under time in popup
- Added: Shortcode instructions link to settings page
- Fixed: URLs in descriptions are now parsed
- Fixed: Remove seconds on pop-up time
1.4.1
- Corrigido: domínio de texto para localização
1.4.0
- Adicionado: suporte para mútiplos calendários exibidos em um
- Adicionado: internacionalização completa (Obrigado @mwguerra!)
- Adicionado: novos parâmetros de shortcode (view, initial_view, enforce_listview_on_mobile, show_today_button, show_title) (Trabalho heróico por @mwguerra!)
- Testado até o WordPress 6.0.3
1.3.1
Salto de versão para atender ao sistema de versionamento do WordPress.
1.3.0
- Adicionado: seletor para o tipo de lista
- Adicionado: texto do botão list customizável
- Adicionado: suporte à localização
1.2.0
- Adicionado: opção para desabilitar link
- Adicionado: opção “list_days” no shortcode
- Corrigido: fuso horário no tooltip
- Atualização do FullCalendar para v5.11.0
- Testado até o WordPress 5.9.3
1.1.0
Lançamento Inicial ao Público