Melhor maneira de mostrar conteúdo dinâmico em um site do Wordpress em cache?

13

Eu realmente quero usar um dos plugins de cache para que eu possa servir mais páginas estáticas no meu tema / site WordPress. Esta é obviamente a melhor atualização de desempenho que você pode fazer para um tema / site WordPress.

Existem alguns elementos dinâmicos no meu tema que me impediram de fazer o salto para páginas estáticas / armazenadas em cache.

Vou descrever esses problemas abaixo e fornecer uma maneira possível de resolver cada problema que tenho pensado até agora.

O objetivo deste post é obter idéias / métodos melhores para lidar com os problemas que eu explico ou para ter certeza de que estou no caminho certo, no mínimo. Eu sou um veterano PHP de mais de 12-13 anos, mas só tenho usado o WordPress nos últimos 1-2 anos e até agora estou realmente impressionado com as capacidades, eu sou um total WordPress Fanboy agora se tal coisa existe lol!

Ok, então os problemas que pensei até agora ao converter para páginas em cache ...

Página de postagens únicas

  1. Problema do contador de visualizações - Eu tenho uma função que buscará um valor de contagem para um "View / hit Counter" na página "Postagens" para dar uma ideia das Visualizações das publicações para um usuário ver. Estes não são visitantes únicos, mas apenas um simples contador de visitas. Eu criei uma tabela MySQL separada para esses valores, ainda estou tentando decidir se devo continuar com isso ou alternar para usar um campo Meta. De qualquer forma, em uma visualização de página, o valor do banco de dados é buscado e aumentado em +1 em cada carregamento de página. (Visualizações de usuários administradores não são adicionadas.) O valor é então exibido na página na forma de 988 Views

    Solução possível do contador de visualizações - Eu poderia fazer com que este valor / função fosse executado usando Ajax. Depois que a nova página em cache / estática for carregada, o Javascript poderá usar o Ajax para solicitar e atualizar o contador de exibições dessa página. Isso soa como a melhor solução para algo assim?

  2. Post Comments Problem - Usando o sistema padrão de comentários do WordPress, toda vez que um novo comentário é adicionado a uma postagem, é necessário que a página em cache / estática para essa postagem seja re. construído ! Pelo que eu vi, existe uma opção nos plugins de Cache que eu vi que permitirão que você faça exatamente isso, você pode tê-lo reconstruir a (s) página (s) toda vez que um novo comentário for postado nele. Isso soa bem no papel, mas posso imaginar que é um pesadelo em um site de alto tráfego / ativo, onde você pode ter vários usuários comentando sobre o mesmo artigo em torno do mesmo tempo (todos não testados, então eu não sei)

    Postar comentários Solução possível - Então, para uma solução para o problema dos comentários, mencionei uma solução acima, onde você pode configurar o plugin Cache para simplesmente reconstruir a página Cached / Static a cada novo comentário. Minha preocupação era que eu não seria realmente bom o quanto isso funcionaria a longo prazo. Agora, a outra solução possível que vejo sendo usada cada vez mais é usar uma solução de Javascript como Disqus Comments ou uma solução similar. Por muito tempo eu realmente fui contra isso, pois eu queria que todos os meus Comentários não dependessem de nenhum terceiro para o meu sistema de comentários. Eu ainda estou meio que sobre a cerca sobre esta questão, mas mudei para usar comentários Disqus no meu site e até agora está funcionando muito bem. Estou aberto a outras soluções possíveis? Ou você acha que este é realmente o caminho a percorrer?

Barra lateral do site

  1. Problema com artigos recentes da barra lateral - Eu tenho guias na barra lateral que são mostradas em todo o site em todas as páginas do site ... uma das guias carrega as 10 postagens mais recentes no blog, como isso é exibido em todas as páginas do site, depois que um novo artigo / postagem é adicionado, é necessário que toda página em cache / estática do site seja reconstruída para refletir a adição de novas postagens nessa "Lista de postagens mais recentes "

    Barra Lateral Artigos recentes Solução possível - Mais uma vez, acho que descobri uma boa solução possível. Eu poderia usar Javascript e Ajax para carregar esse conteúdo nas páginas em cache / estáticas, para que eles não precisassem ser todos reconstruídos com tanta frequência, mas ainda assim pudessem mostrar as postagens mais recentes.

    Isso soa como uma boa solução? Ou, mais importante, você pode pensar em outra solução melhor ou alternativa para esse problema?

Sem sujar minhas mãos ainda, isso é todos os possíveis problemas que eu vejo até agora com a conversão do meu tema para Cache / Static Friendly

UPDATE

Acabei de pensar em outra questão sobre a qual pensar. Todas as tags / categorias, assim como as páginas de usuários, precisarão ser atualizadas toda vez que uma postagem for adicionada e couber na lista de postagens das páginas. Eu suponho que este deve ser um recurso dos plugins de cache já imagino que

    
por JasonDavis 10.07.2012 / 05:23

2 respostas

2

Então, há muitas subquestões, vou tentar abordar cada uma delas.

  

Problema do contador de vistas - Eu poderia fazer este valor / função ser executado usando   Ajax Uma vez que a nova página em cache / estática é carregada, o Javascript pode então   use o Ajax para solicitar e atualizar o contador de Visualizações para essa página.

Concordo totalmente: benefício adicional: carregá-lo via ajax quando o conteúdo "importante" terminar de carregar é o caminho a percorrer. Faça tudo o que puder para reduzir o tempo de carregamento da página. Eu definitivamente iria com o Ajax nessa.

  

Post Comments Problem

Eu duvido que isso seja um grande problema. Mas novamente: ajax. Carregue comentários além do conteúdo "principal". Faça novos comentários regularmente (assim como o Stackoverflow, ou twitter.com, avisando o usuário e aguardando o clique dele para atualizar o fluxo de comentários).

  

Barra lateral do site

Eu usaria outro plug-in: WP Widget Cache , que permite definir o tempo de armazenamento em cache para cada widget em suas barras laterais e funciona bem com os plugins de cache habituais. No seu caso, basta definir "0" para não armazenar em cache para esses widgets, ou "10 minutos" (melhor do que nenhum cache em tudo).

    
por pixeline 11.08.2012 / 23:23
1

Se você estiver usando o cache total do w3, poderá excluir determinadas páginas, como a barra lateral, do cache.

Vá para o Admin do WordPress > Desempenho > Cache de páginas e alterar a seção em nunca armazenar em cache essas páginas


Este exemplo mostra os arquivos da barra lateral em um tema que são excluídos do cache.

Você também pode definir um tempo de expiração mais curto em suas páginas em cache, por exemplo, 5 ou 15 minutos. As páginas em cache afetam mais pessoas que são visitantes pela primeira vez e não têm um cookie de sessão. Como a exibição de página em cache 'mais solicitada' é mostrada para visitantes anônimos pela primeira vez.

    
por Damien 07.08.2012 / 00:44