Este é um tutorial em português ensinando como utilizar um plugin que desenvolvi para um calendário de evento para o site do Portal Nacional das Artes, filiado ao ministério da cultura, Funarte, um portal desenvolvido em WordPress. O Plugin de agenda para WordPress pode ser encontrado no meu Github e no diretório de plugin para wordpress.

Irei mostrar um exemplo do mundo real para construir uma agenda de uma banda.

Update: Favor usar a versão 2.0!

Instalação

A maneira mais fácil de instalar o plugin é instalar diretamente na seção adicionar novo na seção de plugins. Dependendo da sua instalação wordpress (Eu uso dreamhost que é bastante flexível para instalar plugins diretamente do painel de adminstração). Procure por wp-agenda e clique em instalar agora.

Agora você pode ativar e ver um novo item no menu do admin do wordpress:

Wordpress wp-agenda instalation

 

Agenda in admin menu
Quando instalado, a agenda do wordpress aparece no menu

Graças a deus que a nova api do wordpress possui a possibilidade de se criar tipos customizados de posts, e é exatamente o que acontece, agora você pode ter um tipo novo de post, do tipo evento, e desta forma gerenciar um evento como um post, mas com a possibilidade de ter metadados relacionados a eventos com suas próprias especialidades.

Agora você pode criar um novo evento:

 

A new way to create events in wordpress
You can create event as you usually create post

Se você escrolar o mouse para o restante da página verá que metadados para o evento surgiram como local, data e horário:

How you can specify events data
Você pode editar informações relacionadas ao evento, como data, horário e local

O template da página de agenda

Você precisa criar um template para o calendário. Para isto, você pode criar um arquivo chamado agenda.php  no seu template.

Agora, através da url do seu blog com mais uma query string http://alexandremagno.net/?agenda e assim você pode ter um calendário de eventos.

Este é um exemplo de um template de agenda:
[gist]https://gist.github.com/2969696[/gist]
Na div com id wp-agenda-calendar irá ser inserido via javascript o calendário.

E então você terá um calendário assim:

A calendar view
Este é um exemplo de um evento em um calendário quando visita a url da página de agenda no blog

58 Replies to “Criando eventos no wordpress com o wp-agenda”

  1. Olá, segui os passos do tutorial e consegui instalar o plugin e mostrá-lo na página inicial do meu site através do código , porém ele não está mostrando os eventos criados. Tem algum código faltando para o plugin poder mostrar? Obrigada

        1. Qual versão do WordPress você está usando? Eu vou fazer um teste para tentar ver o que está ocorrendo. Tenta ver se consegue ver o evento logada no admin e deslogada e se tiver com o firebug ver o retorno da requisição Ajax na hora de abrir o evento.

        2. Amanda, você conseguiu fazer funcionar? estou com o mesmo problema, ele não carrega o css, só aparece o titulo da agenda que criei, mas no ?agenda não aparece nada, volta pra home! Abraço, apesar do tempo desta postagem rsrsrs ta valendo!

  2. Eu instalei o plugin e criei os eventos, mas preciso que o calendário de eventos aparecá na página inicial , preciso colocar o código de incorporação dentro do index.php, e também preciso que apareça na página agenda.

    1. Bem, ele aparece integralmente em uma página separada, ainda não é possível ter uma visualização separada, mas tenho planos de criar opções de widgets de próximo eventos em novas versões e funções que torne isto flexível.

  3. Olá, Alexandre!

    Achei muito útil o seu plugin.

    Instalei o plugin e criei o “template agenda” sem problemas.

    Na verdade passei por aqui para agradecer e para citar minha experiência com o plugin (depois posto um review lá no wp/”extend”!).

    Enfim… A única coisa que notei foi que os campos para data e horário de término do evento são obrigatórios. Isso me fez quebrar a cabeça durante alguns minutos, pois eu publicava o evento e ele não aparecia, rsrsrs.

    Talvez essa minha observação possa ajudar a quem publica, mas não consegue fazer os eventos “aparecerem”! 😀

    Abs,
    Bob Lima

  4. Ah, só mais uma coisa…. Quando eu clico no evento no calendário (mouse over), ele dá erro 404.

    Não faço idéia de como me virar depois disso, hehehe.

    Abs,
    Bob

    1. Olá Bob, que bom que gostou do plugin e que ele está sendo útil. Me diz como está a url no mouse over, por que está dando 404 por que por algum motivo a url do post do evento não está correta.
      Abraços

      1. Fala, Alexandre!

        Então, cara… Acho que o 404 tinha alguma relação com a queda de conexão com o banco…

        O que está acontecendo é que quando eu clico no nome do evento, ele recarrega essa página que está com o calendário, mas na barra de endereço já aparece a url que estava no mouse over, rsrsrs.

        A url no mouse over aparece assim:
        http://www.crea-rj.org.br/cep/?post_type=agenda&p=191

        Enfim… Saco quase nada de php e no agenda.php colei o código indicado e só troquei o título de “eventos” para “Encontros Microrregionais”, de acordo com minha necessidade.
        Abs
        Bob

          1. Fala aí, Alexandre!

            Então, cara…. Estava fuçando um pouco no código do “wp-agenda.php”, daí fiquei curioso, hehehe.

            Óbvio que você não tem que ficar dando aula por aqui, rsrsrs.

            Enfim… nas linhas 122 a 136 tem o seguinte código:


            register_post_type($this->name,array(
            'label' => 'Agenda',
            'public' => true,
            'publicly_queryable' => true,
            'show_ui' => true,
            'taxonomies' => array( 'post_tag'),
            'show_in_menu' => true,
            'query_var' => true,
            'rewrite' => true,
            'capability_type' => 'post',
            'has_archive' => true,
            'hierarchical' => false,
            'menu_position' => null,
            'menu_icon' => PLUGIN_PATH.'/img/calendar.png',
            'supports' => array('title','editor', 'thumbnail','excerpt')

            Sabe me dizer o que acontece se eu mudar o ” ‘capability_type’ => ‘post’, ” para ‘page’?

            Pensei que talvez pudesse resolver esse meu problema com as urls.

            Sei lá né…

            Abs,
            Bob Lima

          2. Olá Bob, não sei se irá funcionar por que o post de evento vai passar a funcionar como uma página, que não é orientada a tempo, por isto o evento é tratado como post. O problema provavelmente é com URL mesmo. Eu já estou tentando resolver para próxima versão.

    1. Tranquilo cara, bugs tem que ser corrigidos para melhorar ainda mais o plugin e ele poder atender todo mundo. Pode ser que esteja também acontecendo com outras pessoas.

    1. @Marlon: No momento só é possível fazer isto editando o plugin ou usando CSS, pois se não me engano as classes dos eventos seguem um padrão. Irei disponibilizar a possibilidade de escolher uma classe css para um evento específico ou eventos da mesma categoria.

    2. Fala, Marlon!

      Dá sim, cara. Eu mesmo editei o css para se adequar à escala de cores do meu projeto. Se você usar a Firebug fica mais fácil de localizar o que você quer mudar.

      Abs,
      Bob

  5. Olá Alexandrm boa noite, instalei o seu plugin em um site de um cliente mas após instalalo ele aparece um popup falando da versão do jquery ui isso acontece seja em qualquer pagina do backend que eu navego ou no frontend, sabe o que pode ser?

    grato

  6. Boa tarde,
    não sei pode me ajudar, segui os paços sitados acima, porem esta dando esta mensagem de erro!

    blockUI requires jQuery v1.2.3 or later! You are using v1.10.2

    pode me ajudar?

    1. Olá Rodrigo, você pode atualizar o jQuery do seu tema, já tive este problema e fica difícil controlar as versões do jQuery que são carregadas. Já tive este problema e se persistir tentarei encontrar outra solução. Espero ter ajudado.

  7. Boa noite,
    Kara o plugin é massa mas estou com problema,
    quando post um evento para agenda e vou visualizar para ver como ficou ele simplesmente fica a mensagem de Loading… e na faz nada, somente o Loading na tela.
    Pode me ajudar?

    Grato.

    1. Rodrigo, você poderia verificar a requisição ajax que é feita e o retorno, provavelmente no retorno da requisição está a informação do erro e assim fica mais fácil descobrir a causa.

        1. Existe um erro no retorno do ajax relacionado a um plugin:
          Warning: Illegal offset type in /home/casad792/public_html/cantorevandromarcos.com.br/wp-content/plugins/automatic-youtube-video-posts/core/video.php on line 72

          Warning: Illegal offset type in /home/casad792/public_html/cantorevandromarcos.com.br/wp-content/plugins/automatic-youtube-video-posts/core/video.php on line 72

  8. Bom dia Alexandre!

    Show esse plugin hem, fácil e dinâmico.

    Porem tive um pequeno probleminha, não consigo inserir nenhuma imagem, tanto dentro do content como thumbnail. Poderia me dar uma dica desse problema?

    Att, Leo

    Fica com Deus

    1. @Leo: Que bom que o plugin esteja sendo útil Leo!

      Bem, realmente a inserção de miniatura do post ainda não é suportado e eu pretendo fazê-lo numa próxima versão. Agora inserir dentro do conteúdo do post deveria funcionar normalmente, já que ele funciona como um post normal. Você consegue inserir imagens em um post e o que acontece quando você tenta inserir uma imagem dentro do post?

      Abraços,

      1. Clico em “adicionar imagem” dentro do post, ele abre o popup para escolher a imagem, mas na hora que vou escolher não da pra selecionar e tbm não consigo mais fechar o popup da biblioteca.

        Porem consegui resolver da seguinte forma: inserindo o link da imagem direto no post por codigo na aba “texto” do post.

        Fica com Deus.

          1. Bom dia Alexandre,
            Meu WP está numa versão anterior de 4.2.3, isso tem haver com o erro que estou tendo de não conseguir adicionar mídias dentro do post para à agenda?

            Seu plugin ficou show no meu template se encaixando perfeitamente nas necessidades pena que “ainda” não tem suporte para imagem destaca.

            Parabéns!

  9. Bom dia Alexandre,
    Meu WP está numa versão anterior de 4.2.3, isso tem haver com o erro que estou tendo de não conseguir adicionar mídias dentro do post para à agenda?

    Seu plugin ficou show no meu template se encaixando perfeitamente nas necessidades pena que “ainda” não tem suporte para imagem destaca.

    Parabéns!

  10. Olá Alexandre…. a sua agenda é linda. Depois de muito buscar na web me deparei com ela. instalei no meu site, mas nao funciona para uma versão mais atualizada do wordpress. Vc irá fazer alguma alteração?
    Obrigada

    PS: Parabenizo seu talento.

    1. @Gisele:
      Fico feliz que tenha gostado e tenha optado por usar o meu plugin e uma pena não ter funcionado. Fico feliz também que tenham comentado no Blog.

      Recebi muitas reclamações dele não estar funcionando nas novas versões do WordPress e vou averiguar para que você consigam usar e assim lançar uma nova versão. Vou tentar fazer isto até a próxima semana.

Deixe um comentário

O seu endereço de e-mail não será publicado.