web-dev-qa-db-pt.com

Como configurar uma entidade (pós-tipo?) Com muitas entidades dependentes (mais pós-tipos?)

Eu quero o wordpress CMS para gerenciar um novo tipo de conteúdo chamado atletas. A estrutura de dados para o atleta seria a seguinte:

Athlete.name
Athlete.date_of_birth
Athlete.profile
etc...

Um atleta também terá uma galeria de fotos. Então, em um projeto típico de banco de dados relacional, você terá algo como

Athlete_Gallery.id
Athlete_Gallery.athlete_id
Athlete_Gallery.file_name

Um atleta também terá participado de muitos torneios. Então, em um design de banco de dados relacional típico, você terá algo como:

Athlete_Tournament.id
Athlete_Tournament.athlete_id
Athlete_Tournament.tournament_name
Athlete_Tournament.win_or_loss
Athlete_Tournament.score
Athlete_Tournament.weight_class
etc...

Um atleta também terá treinadores de lista treinados, seguindo um esquema de banco de dados similar ao Athlete_Tournament.

Qual é a melhor maneira de configurar um CMS que gerencie essa estrutura de dados? Quais plugins eu precisarei?

NOTAS ADICIONAIS Eu olhei para Pods, mas as etapas para criar registros dependentes não são ideais. Se eu quiser registrar o fato de que John ganhou o City Tournament de 2001, eu preciso atualmente:

  • ir para uma página de torneio
  • criar o torneio da cidade de 2001
  • vá para a página de John
  • relacionar John ao recorde do Torneio da Cidade de 2001
  • salve 

Isso não é ideal. Em vez disso, quero:

  • vá para a página de João e veja uma seção chamada torneios
  • adicionar o torneio da cidade de 2001
  • salve 

Pods não parece fazer isso fora da caixa de hte .... por favor, corrija se eu estiver errado. obrigado

1
John

Você quer Posts 2 Posts , que é uma maneira fenomenal de relacionar de forma eficiente diferentes tipos de conteúdo no WordPress.

Combine isso com algumas caixas meta personalizadas com seus campos e você terá um sistema muito agradável e utilizável que faz o que você quer. Existem muitos tutoriais por aí criando caixas meta personalizadas.

Então, digamos que você tenha os seguintes tipos de postagem:

  • atleta
  • athlete_gallery
  • athlete_tournament
  • treinador

Você relaciona cada um com uma relação Post 2 Posts:

<?php
add_action('p2p_init', 'wpse59137_connections');
function wpse59137_connections()
{
    // athletes to galleries
    p2p_register_connection_type(array(
        'name'  => 'athlete_to_gallery',
        'from'  => 'athlete',
        'to'    => 'athlete_gallery',
    ));

    // athletes to tournaments
    p2p_register_connection_type(array(
        'name'  => 'athlete_to_tournament',
        'from'  => 'athlete',
        'to'    => 'athlete_tournament',
    ));

    // athletes to coaches
    p2p_register_connection_type(array(
        'name'  => 'athlete_to_coach',
        'from'  => 'athlete',
        'to'    => 'coach',
    ));
}

O que você obtém do acima é algumas caixas meta na área de administração para criar relacionamentos. Essas caixas também são altamente personalizáveis, então certifique-se de verificar os documentos .

1
chrisguitarguy

Para isso, eu usaria Pods CMS .

Ele permite que você crie rapidamente tipos de conteúdo personalizados que podem se relacionar entre si e com outros tipos de objetos do Wordpress.

A vantagem sobre os tipos de post personalizado do Wordpress é que ele realmente cria tabelas do MySQL para você com tipos de coluna exclusivos mapeados para seus dados. Em seguida, permite definir relações com outros "Pods".

Eu encontrei Pods CMS muito mais fácil e útil para trabalhar com desempenho e tempo sábio do que tipos de post personalizado, campos personalizados e vários plugins para tentar relacioná-los uns aos outros. Você pode fazer tudo isso adicionando campos personalizados que contêm o ID do outro tipo de postagem personalizada, mas fica feio e confuso, e não é seu esquema de banco de dados relacional típico.

Eu gostaria de ter mais tempo para escrever pessoalmente sobre os usos, mas resumindo, aqui está uma útil visão geral e trecho:

Chamar Pods um "plugin" é um eufemismo. É um desses plug-ins do WordPress que faz muito mais do que fornecer algumas funcionalidades para trabalhar, o que torna sua vida um pouco mais fácil ou torna o WordPress muito mais útil.

Pods mudou a maneira como eu trabalho com o WordPress. Pods me permitiu usar verdadeiramente o WordPress como o sistema de gerenciamento de conteúdo que nasceu para ser. Enquanto uma tonelada de coisas boas está acontecendo no núcleo, o Pods está nos dando o que precisamos para trabalhar hoje, e é espetacular.

  • O acima é do artigo da vista geral de Pods CMS por Jonathan Christopher de segunda-feira pelo meio-dia

P.S. Eu ligaria mais alguns, mas só posso adicionar 2 links. Segunda-feira pela série de Noon é de longe a melhor introdução ao Pods CMS que eu já vi. Eu fiz algumas coisas impressionantes com Pods CMS, incluindo um carrinho de compras personalizado, sistemas de registro de eventos, etc ... é muito flexível e poderoso.

Boa sorte!

0
Jean-Patrick Smith