Suporte » Todo o resto » Posts sumiram após mudança de servidor de hospedagem

  • Resolvido tamtuza

    (@tamtuza)


    Migrei o meu blog pra outro servidor de hospedagem e importei tudo direitinho, inclusive o banco de dados. Consigo acessar o painel do WP, os usuários, os arquivos de mídia, etc, porém os posts não aparecem no WP apesar de estarem todos lá no banco de dados. O que pode ter ocorrido?

Visualizando 11 respostas - 1 até 11 (de um total de 11)
  • Moderador Mário Valney

    (@mariovalney)

    WordPress Cleric of Fire

    Olá @tamtuza, tudo bem?

    Os posts estão aparecendo na administração, pelo menos?

    Abraços

    tamtuza

    (@tamtuza)

    Oi, @mariovalney.

    Eles estavam aparecendo somente no banco de dados. No painel administrativo do WP não aparecia nada. Notei que os posts sumiam por conta da mudança no tema utilizado, pois o antigo usava taxonomias e o novo não. Criei novas taxonomias usando o plugin Types e exportei/importei os .xmls do antigo tema pro novo. Os posts agora aparecem associados às taxonomias que criei, porém não são contabilizados como posts e por isso não consigo listá-los em categorias gerais, somente nas suas taxonomias. O que pode ser feito quanto à isso?

    Moderador Mário Valney

    (@mariovalney)

    WordPress Cleric of Fire

    Provavelmente o tema antigo utilizava algum CPT: custom post type (tipo de post personalizado).

    Você pode:

    1 – Descobrir os CPTs e taxonomias que existiam e criar/registrar novamente.
    2 – Alterar no banco de dados o CPT.

    Eu iria pelo caminho 1.

    Abraços

    tamtuza

    (@tamtuza)

    A primeira sugestão eu já fiz. Foi graças a isso que os posts começaram a aparecer no painel, mas eles são listados somente na taxonomia. Nos locais onde listam-se todos os posts, eles são desconsiderados. É como se considerasse apenas com base nas taxonomias customizadas dos posts, as demais categorias são ignoradas e eles não aparecem nas listas

    Moderador Mário Valney

    (@mariovalney)

    WordPress Cleric of Fire

    As listagens padrão do WordPress não consideram CPTs (a menos que seja a página archive – arquivo – desse CPT).

    Você vai precisar criar querys novas usando WP_Query:
    https://codex.wordpress.org/Class_Reference/WP_Query

    ou então tentar adicionar esse CPT nas queries padrão do WP usando a action pre_get_posts:
    https://codex.wordpress.org/Plugin_API/Action_Reference/pre_get_posts

    • Esta resposta foi modificada 1 mês atrás por  Mário Valney.
    tamtuza

    (@tamtuza)

    Hmm, ok. Vou tentar essas soluções aqui e qualquer coisa retorno.
    Desde já, muito obrigada pela atenção.

    tamtuza

    (@tamtuza)

    Tentei aplicar as soluções que sugeriu mas não consegui fazer o que eu queria.
    Eu tenho posts antigos ligados a taxonomias e eles não são listados da mesma forma que os novos posts nas páginas das categorias. Na home eles sequer aparecem. Se você puder acessar o link pra entender melhor e talvez dar uma sugestão.

    http://sentaai.com/category/cinema/

    Nessa página os novos aparecem corretamente, já os antigos ficam desconfigurados. Na home só aparecem os novos. O que eu posso estar fazendo de errado?

    Moderador Mário Valney

    (@mariovalney)

    WordPress Cleric of Fire

    @tamtuza conseguiu fazer os posts aparecerem na administração?

    Se sim, significa que conseguiu registrar tudo direito. O problema então seria com o layout apenas, o que é normal, já que o tema novo não dá suporte aos posts antigos.

    Por exemplo, aí nessa listagem principal,se olhar o primeiro e o segundo possuem as classes (HTML):
    post-XXXX post type-post status-publish format-standard [...]
    XXXX é o ID do post

    Já os outros:
    post-XXXX it_games type-it_games status-publish format-standard [...]

    Tá vendo que post foi trocado por it_games (a mesma coisa para sobre os outros tipos de post como it_movies).

    Então agora você pode:

    1 – Alterar o CSS¹ para considerar os outros CPTs.
    2 – Alterar o Tema² e acrescentar a classe “post” hardcoded lá.
    3 – Alterar o tipo de post dos posts antigos³.

    ————————————————————-

    1 – Criando um Tema Filho, se não criou, ou acrescentando em “CSS Adicional” no customizador. Minha dica é que o estilho dos posts lá fica no arquivo style.css a partir da linha 1541. Pode só copiar, colocar a classe do CPT novo e jogar no CSS novo (não substitua a menos que adicione o post type ‘post’ também).

    2 – Através de um Tema Filho, claro.

    3 – Vai desfazer todo o trabalho de resgistrar os novos CPTs e pode causar problemas, caso tenha algo específico no código novo para os CPTs, mas resolveria tudo, já que o tema novo não dá suporte a eles.

    • Esta resposta foi modificada 1 mês atrás por  Mário Valney.
    tamtuza

    (@tamtuza)

    @mariovalney eu fiz a opção 1 que você sugeriu e funcionou direitinho. Ficou ótimo, porém na minha home os posts antigos continuam não sendo listados. Há algo que eu possa fazer pra resolver isso sem precisar fazer o que você sugeriu ali no 3?

    Quanto à sugestão 3, como eu faria essa alteração no tipo dos posts? Que tipo de problemas poderia causar? Eu poderia ter feito essa mudança antes quando ainda não conseguia listar esses posts?

    Moderador Mário Valney

    (@mariovalney)

    WordPress Cleric of Fire

    @tamtuza se você já registrou e estão aparecendo na administração, você vai precisar mudar a query da Home. Como ela deve ser a query padrão, é só usar o filtro pre_get_posts que sugeri ali em cima para adicionar esses post_types ao padrão.

    Sobre 3, você faria no banco diretamente (ou via código, alterando o post_type de todos os custom posts). Sobre os problemas, não sei o impacto porque vai depender de como eles estão (como foram criados pelo tema antigo) e também do tema novo e das coisas que você fez na sugestão 1.

    Abraços

    tamtuza

    (@tamtuza)

    @mariovalney Muito obrigada por todo o suporte, me ajudou muito. Consegui resolver com as dicas que você passou e já está tudo ok. Brigadão!

Visualizando 11 respostas - 1 até 11 (de um total de 11)
  • Você deve estar logado para responder a este tópico.