Como eu represento 'pedaços' de conteúdo dentro do Wordpress?

9

Eu só usei o wordpress como uma plataforma de blog de auto-hospedagem - até agora. Eu tenho um requisito para usá-lo para um CMS muito básico que consistirá em ~ 10 páginas, a maioria das quais será conteúdo estático, atualizado periodicamente. Vou precisar de capacidade para fazer upload de documentos, incorporar imagens, editar a cópia usando o editor de texto - praticamente todos os recursos padrão oferecidos pelo wordpress.

No entanto, estou com dificuldades em abordar o problema de editar seções específicas em uma página. Em particular, apenas saber por onde começar. Um CMS "normal" tradicionalmente dividiria uma página em seções separadas e permitiria que eu editasse qualquer uma dessas seções, editando diretamente o conteúdo ou incluindo conteúdo compartilhado naquele ponto. Não consigo descobrir como fazer isso usando o wordpress.

É possível "esticar" o modelo de página para que uma página seja na verdade apenas um pedaço de conteúdo, seja incluída por uma página / modelo específica e seja - de alguma forma - protegida de ser visualizada diretamente (removendo-a da navegação menus sendo um começo).

Alguma indicação sobre por onde começar?

Atualizar

Para esclarecer, imagine uma postagem no blog padrão do wordpress. Finja que é um conteúdo estático. Suponha que você queira que um editor possa alterar apenas o primeiro parágrafo da postagem do blog. Agora,

  • o conteúdo estático nessa página deve estar em uma postagem, página, modelo ou outra coisa?
  • o conteúdo editável deve ser uma Página, ... ou outra coisa?

Por exemplo:

<h1>About us</h1>

<p>Example.com is a company specialising in examples, demonstrations,
and canonical stuff.</p>

Se eu quiser que esse parágrafo seja editável, presumivelmente eu preciso de algo como:

<h1>About us</h1>

<p><?php insert_page('name-of-content-chunk'); ?></p>

Atualização 2

OK, depois de muita pesquisa, teste e erro, incluí o seguinte:

  1. O Wordpress não é configurado para facilmente replicar um CMS clássico, especialmente no que diz respeito a ter várias partes de conteúdo em uma única página.
  2. Este modelo pode ser imitado, mais ou menos, usando postagens personalizadas (veja abaixo)
  3. As páginas quase oferecem a capacidade de fazer isso, no entanto:
    • Um plug-in é necessário apenas para incluir uma página
    • As páginas não parecem ser tão flexíveis quanto as postagens - por exemplo, nenhum tipo de página personalizada

O método que usei, usando tipos de postagem personalizados, é amplamente o seguinte:

  1. A página é uma 'Página' com um modelo personalizado - chame-a de 'mypage.php'
  2. Esse modelo contém o seguinte:
    <div id="header">
      <?php
        query_posts(array('name' => 'foo', 'post_type' => 'header-text'));
        get_template_part('header-text');
      ?>
    </div>
    
    <div id="content">
      <p>Some static copy in the template that can
      only be changed by the site administrator.</p>
    
      <?php
        query_posts(array('name' => 'bar', 'post_type' => 'image'));
        get_template_part('image');
      ?>
    </div>
    

Isso faz sentido para qualquer pessoa ? : -)

    
por Bobby Jack 03.08.2010 / 13:04

5 respostas

3

Como tnorthcutt mencionou, você pode querer usar tipos de postagem personalizados . No entanto, você também deve dar uma olhada nos campos personalizados , que permitirão que você especifique os bits de dados personalizados dinâmicos que deseja associar com cada página. Aqui está o tutorial da Smashing Magazine em campos personalizados, o Nettuts ' tuturial (e video ) e um list de outros tutoriais.

    
por Virtuosi Media 04.08.2010 / 11:40
1

Se eu entendi corretamente, você quer ter layouts diferentes para páginas diferentes. Você pode conseguir isso com um modelo personalizado para cada página do site ou com uma única página personalizada, com várias condições. Para a primeira opção, consulte a seção Codex do WordPress sobre as páginas de modelo personalizado: enlace

Para o segundo, veja este tutorial: enlace

Depois, você pode mover esses "pedaços" para diferentes arquivos PHP que você inclui em suas páginas específicas.

    
por Alex 03.08.2010 / 14:33
1

Acho que sua melhor aposta é usar tipos de postagem personalizados .

    
por Travis Northcutt 04.08.2010 / 05:52
1

Dê uma olhada em um plug-in como o Magic Fields. Ele usa campos personalizados internamente, mas a interface pode ter um editor de texto rico, lista suspensa, etc.

Isso permite que você defina seus elementos de conteúdo, seus tipos e (para escolhas) seus valores. Então, seu tema pode exibi-lo.

Uma alternativa seria ter uma área de plugins definida e decidir qual plug-in iria lá. No entanto, isso é menos flexível, pois ainda não permite duas partes de conteúdo específicas de página / postagem.

    
por Alexandre Rafalovitch 08.08.2010 / 05:45
1

O melhor plugin para adicionar áreas de conteúdo personalizado sem dor além do título e conteúdo é provavelmente o plugin "More Fields".

    
por David 11.10.2011 / 17:18

Tags