Suporte » Plugins e hacks » Pedido de opinião sobre como implementar solução de eventos

  • ResolvidoModerador Wonderm00n

    (@wonderm00n)


    Tenho de implementar um site para eventos e estou com dúvidas de como implementar a coisa em WordPress.

    Será algo do género:
    – Lista dos eventos: http://www.latinmarkets.org/forum-list
    – Cada evento: http://www.latinmarkets.org/forums/mexico-capital-projects–infrastructure-forum/overview#

    Posso criar o tipo de post “evento” e muitas das informações podem ser campos custom com essas mesmas informações, mas e relativamente, por exemplo aos “speakers” e “sponsors”? Como implementariam estes dados? Também um novo tipo de post “speaker” e outro “sponsor”, e depois de alguma forma ligar o evento aos speakers e sponsors com uma categoria ou tag ou algo assim?

    Esta é uma implementação complexa e gostaria de ouvir a vossa opinião antes de começar a implementação.

A visualizar 8 respostas - de 1 a 8 (de um total de 8)
  • Moderador Ze Fontainhas

    (@vanillalounge)

    Só te posso responder subjectivamente, ou seja se fosse eu a fazer.

    As tarefas (em abstracto seriam);

    1. Implementar três Custom Post Types: Eventos, Patrocinadores e Oradores
    2. Criar os campos personalizados para cada um (normalmente uso isto)
    3. Implementar uma relação entre CPTs com o plugin Posts2Posts

    Assim por alto.

    Outra solução, com menos código, é usar um plugin que faz issso tudo (mas sobre o qual tens menos controlo), do tipo Types. Reconheço que funciona muito bem, mas não sou fã de não ser o meu código quando é preciso corrigir erros.

    Ricardo Correia

    (@ricardocorreia)

    A minha abordagem À situação dependia das necessidades, no caso de abordares os sponsors e speaker como outro CTP tens a vantagem de poder reutilizar esses dados, ligando os mesmos a outro evento posterior por exemplo.

    Neste caso, também colocaria o local como outro CPT.
    Quanto às ligações entre eles, utilizaria um Custom Field, que recebia o Id dos Speakers, do local e dos sponsors de forma a interligar a informação.

    No caso do pretendido ser algo mais simples, optaria por colocar a informação dos speakers e sponsors como um custom field em modo “repeater” por exemplo, tornando mais simples a implementação.

    Moderador Ze Fontainhas

    (@vanillalounge)

    Tudo isso é suportado nativamente pelas bibliotecas/plugins que mencionei, particularmente o Posts2Posts que é simplesmente espectacular.

    Moderador Wonderm00n

    (@wonderm00n)

    OK! Estamos no mesmo comprimento de onda. Esta era, de forma ainda que abstracta, mais ou menos a forma em como pensei fazer a coisa, mas dado que é um projecto tão complexo, achei por bem pedir por aqui ajuda a quem já anda nisto desde o tempo dos ecrãs a fósforo para ver se estava no bom caminho.

    Vai ser um projecto interessante 🙂

    Já agora, para dividir cada evento em várias “páginas” estou a pensar usar esta abordagem: ahabman.com/blog/2013/02/wordpress-custom-post-type-dynamic-sub-pages/ O que acham?

    O local vou implementar simplesmente com custom posts.

    Ricardo Correia

    (@ricardocorreia)

    O Posts2Posts não conhecia, mas parece que vai para a minha “mala” de plugins essenciais 🙂

    @wonderm00n: interessante a abordagem, costumo utilizar jQuery para esse fim, parece-me mais simples, mas com essa abordagem ganhas permalinks para a informação o que me parece bem.

    Moderador Wonderm00n

    (@wonderm00n)

    O local vou implementar simplesmente com custom posts -> era fields.

    Também pensei no jQuery, mas para efeitos de SEO é completamente diferente 😉

    Moderador Ze Fontainhas

    (@vanillalounge)

    jQuery é mais boneco e a questão do SEO anda empolada, mas pronto, é só uma opinião muito subjectiva.

    Quanto a páginas e subpáginas que, se bem percebi, são na realidade CPTs e páginas dos CPT’s associados, o Posts2Posts tem funções para isso tudo, tipo estas:

    <?php
    // Find connected pages
    $connected = new WP_Query( array(
      'connected_type' => 'posts_to_pages',
      'connected_items' => get_queried_object(),
      'nopaging' => true,
    ) );
    
    // Display connected pages
    if ( $connected->have_posts() ) :
    ?>
    <h3>Related pages:</h3>
    <ul>
    <?php while ( $connected->have_posts() ) : $connected->the_post(); ?>
    	<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
    <?php endwhile; ?>
    </ul>
    
    <?php
    // Prevent weirdness
    wp_reset_postdata();
    
    endif;
    ?>

    Até dá para relacionar CPTs (e até posts e páginas normais) com utilizadores. Devias ter visto a apresentação do scribu no WordCamp Lisboa 2012.

    Mais e vasta documentação aqui:

    https://github.com/scribu/wp-posts-to-posts/wiki

    Moderador Wonderm00n

    (@wonderm00n)

    “Quanto a páginas e subpáginas que, se bem percebi, são na realidade CPTs e páginas dos CPT’s associados”

    Nop. É a variada informação de cada evento (um CPT) separada em várias sub-páginas desse post. Por exemplo, os campos de morada, telefone, gps, etc.. aparecerão numa página própria tipo /nome-do-evento/local/

A visualizar 8 respostas - de 1 a 8 (de um total de 8)
  • O tópico ‘Pedido de opinião sobre como implementar solução de eventos’ está fechado a novas respostas.