Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Copa WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Como corrigir o erro 404 do Sitemap do WordPress SEO da Yoast

Lidar com um erro 404 em seu sitemap do Yoast SEO no WordPress pode ser frustrante. O Yoast SEO é uma ferramenta popular, mas, às vezes, um conflito de plug-in ou configurações incorretas podem causar esse erro.

Portanto, se você tentar visitar o mapa do site XML e vir um erro 404, isso poderá impedi-lo de prosseguir. Mas não se preocupe, há soluções fáceis.

Na WPBeginner, encontramos e resolvemos esse problema, se não uma centena de vezes. Neste artigo, vamos orientá-lo passo a passo para corrigir o erro 404 do sitemap do Yoast SEO. Basta acompanhar para que seu mapa do site volte a funcionar sem problemas.

Fixing Yoast SEO XML sitemap 404 error in WordPress

O que está causando o erro 404 do Sitemap do Yoast SEO no WordPress?

O mapa do site do Yoast SEO ajuda os mecanismos de pesquisa a encontrar todo o conteúdo do seu site que você deseja que eles encontrem e indexem.

A correção do erro garante que os mecanismos de pesquisa possam acessar o mapa do site e descobrir todas as páginas e o conteúdo do seu site. Isso pode resultar em melhor visibilidade e classificação nos mecanismos de pesquisa e também ajudará a classificar seu conteúdo mais rapidamente do que se não houvesse um mapa do site.

O WordPress tem um sitemap XML padrão que você pode enviar ao Google Search Console e a outros mecanismos de pesquisa.

Esse mapa do site em XML pode ser acessado digitando o seguinte URL na barra de endereços do navegador:

https://example.com/sitemap.xml

No entanto, esse mapa do site padrão gerado pelo WordPress é muito básico. Para corrigir isso, todos os principais plugins de SEO do WordPress, como o Yoast SEO e o plugin All in One SEO, criam seus próprios sitemaps XML com mais recursos.

Quando você usa o mapa do site XML gerado pelo seu plug-in de SEO do WordPress, o plug-in reescreve o atalho padrão do mapa do site XML do WordPress.

Isso significa que o URL do mapa do site mencionado acima enviará os usuários para os mapas do site gerados pelo seu plug-in de SEO do WordPress.

Infelizmente, isso pode causar um erro 404 em alguns sites devido a conflitos de plugins ou configurações incorretas do WordPress.

Nas seções a seguir, mostraremos como corrigir facilmente o erro 404 do mapa do site do WordPress no plug-in Yoast SEO. Aqui está uma visão geral rápida de todos os métodos que abordaremos:

Pronto? Vamos direto ao assunto.

O WordPress vem com uma estrutura de URL amigável para SEO, chamada permalinks. Essa estrutura de URL usa um sistema de redirecionamento para informar ao servidor de hospedagem na Web qual página deve ser carregada quando um usuário digita um URL no navegador.

Normalmente, essas configurações de permalinks são atualizadas automaticamente quando você faz alterações em seu site.

A má notícia é que, às vezes, o WordPress não consegue atualizar a estrutura de permalink, o que pode causar o aparecimento do erro 404 do mapa do site do Yoast SEO.

Dito isso, isso pode ser facilmente corrigido acessando a página Configurações ” Permalinks na área de administração do WordPress e simplesmente clicando no botão “Salvar alterações”.

Update permalinks

Isso atualizará as configurações de permalink do WordPress. Agora você pode visitar a página do sitemap XML para ver se isso resolveu o problema.

Se isso não resolveu o problema, você pode continuar lendo.

Se a atualização da estrutura de links permanentes do WordPress não corrigir o erro 404, você poderá informar manualmente ao servidor da Web para redirecionar os usuários para a página de mapa do site do Yoast SEO.

Para fazer isso, você precisará adicionar o seguinte código ao seu arquivo .htaccess.

# Yoast SEO - XML Sitemap Rewrite Fix
RewriteEngine On
RewriteBase /
RewriteRule ^sitemap_index.xml$ /index.php?sitemap=1 [L]
RewriteRule ^locations.kml$ /index.php?sitemap=wpseo_local_kml [L]
RewriteRule ^geo_sitemap.xml$ /index.php?sitemap=geo [L]
RewriteRule ^([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 [L]
RewriteRule ^([a-z]+)?-?sitemap.xsl$ /index.php?yoast-sitemap-xsl=$1 [L]
# END Yoast SEO - XML Sitemap Rewrite Fix

Observação: Se o seu site WordPress estiver instalado em um subdiretório ou pasta (por exemplo, https://example.com/mywebsite/ ), será necessário usar o seguinte código.

# Yoast SEO - XML Sitemap Rewrite Fix
RewriteEngine On
RewriteBase /mywebsite/
RewriteRule ^sitemap_index.xml$ /index.php?sitemap=1 [L]
RewriteRule ^locations.kml$ /index.php?sitemap=wpseo_local_kml [L]
RewriteRule ^geo_sitemap.xml$ /index.php?sitemap=geo [L]
RewriteRule ^([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 [L]
RewriteRule ^([a-z]+)?-?sitemap.xsl$ /index.php?yoast-sitemap-xsl=$1 [L]
# END Yoast SEO - XML Sitemap Rewrite Fix

Não se esqueça de substituir /mywebsite/ pelo nome de seu subdiretório.

Esse código simplesmente informa ao seu servidor da Web quais páginas devem ser exibidas quando os usuários acessarem os sitemaps XML do Yoast SEO.

Agora você pode tentar visualizar o mapa do site XML para ver se isso resolve o problema.

3. Mudar para um plug-in de Sitemaps XML

Se os métodos mencionados acima não resolveram o erro 404 na página do mapa do site XML do Yoast SEO, você pode tentar usar um plug-in separado para gerar mapas do site XML para o seu site. E um bom plug-in para isso é o plug-in XML Sitemaps.

A desvantagem dessa abordagem é que você terá que contar com um plug-in separado para gerar sitemaps XML e com o Yoast SEO para outros recursos de SEO.

Primeiro, você precisa instalar e ativar o plug-in XML Sitemaps. Para obter mais detalhes, consulte nosso guia passo a passo sobre como instalar um plug-in do WordPress.

Como você está usando o Yoast SEO, receberá automaticamente uma notificação para desativar o plug-in XML Sitemaps ou a funcionalidade de mapa do site do Yoast SEO.

Yoast SEO XML Sitemap conflict warning

Em seguida, você pode clicar no botão “Toggle Yoast SEO’s XML Sitemap” para continuar.

Isso o levará à guia “Features” (Recursos) em SEO ” General (Geral). A partir daí, você precisará rolar para baixo até a opção “XML sitemaps” e desativá-la.

Disabling XML sitemaps in Yoast SEO

Não se esqueça de clicar no botão “Save Changes” (Salvar alterações) para armazenar suas configurações.

Agora você pode alternar para a página Settings ” XML-Sitemap para configurar seus sitemaps. Para a maioria dos sites, as configurações padrão funcionariam imediatamente.

XML Sitemaps settings

Mas você sempre pode definir as configurações de acordo com suas necessidades.

Agora você pode enviar o URL do mapa do site XML para o console de pesquisa do Google e outros mecanismos de pesquisa.

Sitemap URL

4. Mudar para o All in One SEO for WordPress

Se todas as opções acima falharem e você não quiser usar um plug-in separado para gerar sitemaps XML, esse método poderá ajudá-lo a corrigir o problema do erro 404 do sitemap.

Para esse método, você precisará do All in One SEO para WordPress. É o melhor plugin de SEO para WordPress do mercado e uma alternativa muito melhor ao Yoast SEO.

Você pode ver nossa comparação entre Yoast e All in One SEO para obter mais detalhes sobre as diferenças.

O All-in-One SEO (AIOSEO) vem com sitemaps XML avançados e opções fáceis de gerenciar que lhe dão controle total sobre o que incluir ou excluir deles.

Primeiro, vamos instalar e ativar o plug-in All in One SEO para WordPress. Para obter mais detalhes, consulte nosso guia passo a passo sobre como instalar um plug-in do WordPress.

Observação: Há também uma versão gratuita do All in One SEO para WordPress, que inclui a maioria dos recursos de mapa do site XML, exceto vídeo e notícias.

Após a ativação, o plug-in o guiará por um assistente de configuração. Se precisar de ajuda durante a configuração, siga nosso guia sobre como configurar corretamente o plug-in All in One SEO para WordPress.

All in One SEO setup

O All in One SEO também permitirá que você importe dados de SEO do Yoast SEO.

Isso garante que todas as suas meta tags e títulos de SEO anteriores permaneçam inalterados.

Import Yoast SEO data

Após a configuração inicial, você pode ir para a página All in One SEO ” Sitemaps para definir as configurações do sitemap XML.

Você pode clicar no botão “Open Sitemap” (Abrir mapa do site) para ver se o erro 404 do mapa do site foi corrigido no WordPress.

All in One SEO sitemaps settings

Depois disso, você define as configurações do mapa do site, se necessário.

Por exemplo, o All in One SEO permite que você escolha o que incluir em seus mapas de sites. Você pode adicionar ou remover tipos de post, taxonomias, posts individuais e páginas.

All in One SEO sitemaps advanced settings

O All in One SEO também permite que você crie vídeos, notícias, mapas de sites RSS e mapas de sites HTML para o seu site.

Basta explorar suas guias para ver se deseja definir mais configurações.

Additional sitemaps settings

Esses sitemaps também podem ser enviados ao Google Search Console e a outros mecanismos de pesquisa. Isso ajuda os mecanismos de pesquisa a encontrar rapidamente o conteúdo mais recente em seu site.

Dica de especialista: Não quer corrigir esse erro do WordPress por conta própria? Não se preocupe – nós o ajudamos! Diga adeus aos erros frustrantes e volte a se concentrar no que você gosta. Deixe-nos cuidar da parte técnica e agende nosso Suporte Emergencial para WordPress agora mesmo!

Esperamos que este artigo tenha ajudado você a corrigir o erro 404 do Sitemap do Yoast SEO no WordPress. Em seguida, talvez você também queira ver nosso guia completo de solução de problemas do WordPress ou ver como corrigir erros comuns do WordPress.

Se você gostou deste artigo, inscreva-se em nosso canal do YouTube para receber tutoriais em vídeo sobre o WordPress. Você também pode nos encontrar no Twitter e no Facebook.

Divulgação: Nosso conteúdo é apoiado pelo leitor. Isso significa que, se você clicar em alguns de nossos links, poderemos receber uma comissão. Veja como o WPBeginner é financiado, por que isso é importante e como você pode nos apoiar. Aqui está nosso processo editorial.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

O kit de ferramentas definitivo WordPress

Obtenha acesso GRATUITO ao nosso kit de ferramentas - uma coleção de produtos e recursos relacionados ao WordPress que todo profissional deve ter!

Reader Interactions

242 ComentáriosDeixe uma resposta

  1. CB

    Hi, just tried the second version editing the plug ins core files and the site has disapeared?? including the backend. just a white screen?? I replaced the code withy the original and nothing.

  2. Matt Crystal

    Thank you! That worked by supplying the code in the .htaccess file, then unchecking the site map option and saving. Then, re-checking the box and saving again. Thanks!

  3. Roderick van Straten

    Added this code to the .htaccess and unchecked and checked it, but I only get a blank page now for the sitemap ..

  4. mandingo345

    yes, without fix, just uncheck save recheck and saved.

  5. Jack

    After loosing quite some time trying to find what was wrong, I got it working by your suggestion “Uncheck the sitemap option in the Yoast’s SEO plugin and ‘save’ settings. After that re-checking the sitemap’s option fixes the error.”
    tnx very much!

  6. johnny

    Thank you so much! unchecking, saving, rechecking saving did the trick!

  7. sc456a

    After I added the code to htaccess and unchecked/rechecked Sitemap in the plugin, it worked! Thanks!

  8. alireza

    it work for me too, Thanks a lot!

  9. Leo

    Uncheck then save, then go back check again and save, solved my problem. It should be at the begining before anybody try anything else! it worked for me thanks though

  10. Elle Laurel Rose

    Woohoo! Thanks. Mine probably wasn’t broken long because Google didn’t seem to mind yet. … But my site is only in a softer launch stage anyway… Slow crawls maybe. Luckily, I’m improving my site before my real projects go up (hopefully soon).

    Anyway I cannot thank you enough. :)

  11. logitaki

    I opened the class-sitemaps.php file but can’t find the section you are referring to “functiion () init code.. can you be more specific?

  12. Basie

    Editing the .htaccess file, un-checking sitemap generation, saving settings, re-checking, saving settings … fixed it for me! Thank you VERY much.

  13. Tom Atkinson

    I found my issue was actually fixed purely by turning Yoasts sitemaps on and off from UI. Which is great! :)

  14. Fernando

    Were you able to fix this one? I’m having the same problem, I get a 404 on post-sitemap.xml. I didn’t check the PHP logs on what the error is but probably would be the same you’re getting.

    • Steve

      No fix, and theres no replies to support threads on wordpress, other people are just disabling it and using another sitemap plugin.

  15. hayderabbass

    Disabling the XML sitemap and re enabling them fix this issue for me. Thanks!

  16. Ben Billson

    I was having an issue with the sitemap 404’ing when trying to access it.

    I tried adding the first ifmodule, no joy, then remembered I had another ifmodule in place to handle redirects after updating my permalink structure.

    I removed the redirect ifmodule, restarted Worpress SEO, then the sitemaps started working. Re-added the redirect ifmodule, and everything now appears to be working just fine. I’ve also checked the status in GWT and Bing WT and it’s all looking good. Thanks for the help!

  17. Rob Cooper

    I put the first Ifmodule into htaccess and it spit out some weird single line of content, with no links.

    I read through the comments

    then I rebooted Yoast’s sitemap option:

    i unchecked the “Enable XML Sitemap Here” and saved

    I re-checked it and saved

    checked my sitemap and it was there, formatted properly with xsl stylesheet being applied and links all worked

  18. chiappa

    I have no idea where to put that code. There is no line like: “function init()” in class-sitemaps.php

  19. Katrina Isabelle

    Try going into your permalink settings and saving them again. If you can’t access the back end of your site because of the 500 error, then remove that htaccess file.

  20. Katrina Isabelle

    Hello! I think you should add one more step at the very beginning: Re-save your permalink settings! I found that re-saving my permalink settings solved the issue for me. No need to go into the htaccess file.

    • EB

      Exactly, solved my problem too.

    • Alfonso

      this fixed the issue for me, re-saving the WP permalinks

  21. Steve

    I get the following error only on post-sitemap, all other sitemaps work ok:
    Fatal error: Allowed memory size../plugins/wordpress-seo/inc/class-sitemaps.php on line 713
    I tried the htaccess and wpseo-functions edits but no luck.
    I deactivated every plugin, still no luck.
    I deleted wpseo and reinstalled but still same problem and now on the wpseo dashboard and sitemaps page I get this error:
    Warning: call_user_func_array() expects parameter 1 to be a valid callback, function ‘wpseo_xml_sitemaps_init’ not found or invalid function name in /home/justplay/public_html/wp/wp-includes/plugin.php on line 470

    I have two sites running the same theme, plugins etc and one works ok one has this errors, wierd.

  22. Jane Hockley

    Thank you – i found just by unchecking and saving and then re-checking the site map option for the yoast plugin google webmaster was able to find my site map

  23. Jake Ratliff

    When I tried the htaccess method, it crashed my site. I just added this code into the htaccess file (via the Yoast plugin):

    # WordPress SEO – XML Sitemap Rewrite Fix

    RewriteEngine On
    RewriteBase /
    RewriteRule ^sitemap_index.xml$ /index.php?sitemap=1 [L]
    RewriteRule ^([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 [L]

    # END WordPress SEO – XML Sitemap Rewrite Fix

    And then clicked the “save changes to .htaccess” button. I can’t go anywhere without the 500 error now. What did I do wrong? Anyone know how to fix this?

  24. Jake Ratliff

    I tried the htaccess fix and now I get a 500 Internal Server Error.

  25. Tiffany Marie McAnally

    So it still doesn’t work for me… I feel like beating my head against a wall. As much as I love the plugin, I think I’m just going to lose it in favor of something that’s actually functional.

  26. Jérôme Lafforgue

    Thanks, work fine in wpseo-functions.php file @ line 461

  27. ast

    for me worked fine!
    thank you

  28. NicolasJoly

    @Matt Klein, it’s in the wpseo-functions.php file @ line 461

  29. NicolasJoly

    @Matt Klein, the ‘init’ function is now ‘wpseo_xml_sitemaps_init’ in the wpseo-functions.php, @line 461

    Add just :
    global $wp_rewrite; before the $GLOBALS define
    and
    $wp_rewrite->flush_rules(); after the add_rewrite_rule…

    /**

    * Initialize sitemaps. Add sitemap & XSL rewrite rules and query vars

    */

    function wpseo_xml_sitemaps_init() {

    $options = get_option( ‘wpseo_xml’ );

    if ( $options[‘enablexmlsitemap’] !== true ) {

    return;

    }

    // redirects sitemap.xml to sitemap_index.xml

    add_action( ‘template_redirect’, ‘wpseo_xml_redirect_sitemap’, 0 );

    if ( ! is_object( $GLOBALS[‘wp’] ) ) {

    return;

    }

    global $wp_rewrite;

    $GLOBALS[‘wp’]->add_query_var( ‘sitemap’ );

    $GLOBALS[‘wp’]->add_query_var( ‘sitemap_n’ );

    $GLOBALS[‘wp’]->add_query_var( ‘xsl’ );

    add_rewrite_rule( ‘sitemap_index.xml$’, ‘index.php?sitemap=1’, ‘top’ );

    add_rewrite_rule( ‘([^/]+?)-sitemap([0-9]+)?.xml$’, ‘index.php?sitemap=$matches[1]&sitemap_n=$matches[2]’, ‘top’ );

    add_rewrite_rule( ‘([a-z]+)?-?sitemap.xsl$’, ‘index.php?xsl=$matches[1]’, ‘top’ );

    $wp_rewrite->flush_rules();

    }

  30. Matt Klein

    There is no function init area in my class-sitemaps.php file. Could it be called something else. What line is it on?

  31. Regina Falkowski

    Added the code to .htaccess file and it worked like a charm! Thanks for the fix :)

  32. Alec Byrne

    Adding the .htaccess worked for me – thanks very much :-)

  33. Ollie

    Htaccess fix worked for me.

    But as Scott in the first comment above says, I needed to uncheck the XML sitemap checkbox and save. Then recheck it and save again for the sitemap to show up. I think that would be worth mentioning in the article.

  34. Steve Patterson

    Thanks this worked for me editing the .htaccess file. I unchecked sitemaps off then back on and also changed mine from 1,000 to 400. If you are on a shared server, I would use a lower number so that less CPU usage is done on your domain.

  35. scott

    Hi guys,

    I had to troubleshoot this issue too. My site is hosted in a sub directory of a main site. So I had to set the following line:

    RewriteBase /scottmortiz/

    I then had to uncheck the mina Site Map XML option in the plugin, and save. Then re-check the plugin and save. Hope this works for some of you.

    -Scott

  36. Chris

    Hi Steven,
    thank alot. This helped me, too. But to get the rewrite working I had to disable the xml function, save it, and enable (and save it) again. Seems obvious, but maybe this is worth a note in the article. I will safe this article in my personal wordpress help register.
    Thanks,
    Chris

    • Dan

      Thank you Chris! This fixed my 404 problem with Yoast’s XML Sitemap feature.

    • Jason Judge

      Ah, switch it off, then switch it back on again. Thanks:-) It is not as obvious as you think. My sitemaps also did not work (getting a 404) until I did this. I did not have to make any of the other changes described in this post.

  37. Shanthi Ganesan

    @PEKKO Hi Tried your techniques it really works well,thanks a lot for sharing….

  38. Lukas

    Nothing is working in my case – still Error 404 …

  39. Ryan

    Beauty, fixed it for me too.. thanks for putting this up

  40. lloyd

    this just broke my websites … now getting an internal server error…

  41. Rosie

    The edit to .htaccess files was just the trick. Thanks for posting this! You saved me a whole lot of time and trouble.

  42. Pekko

    I was just facing the same issue. i unticked the box (Check this box to enable XML sitemap functionality) — pressed save, and then ticked the box again, after that It found the sitemap again, Hope it will be there!

    • Anisa

      I use this technique, and it worked

    • John

      This worked for me, as well. Thx!

    • Cara Sherlock

      Unchecking, saving and then rechecking worked for me too. Thx!

    • Badprimer

      [..unticked the box (Check this box to enable XML sitemap functionality) — pressed save, and then ticked the box again..]

      Worked for me. Thx!! :D

    • Kerry

      Thank you! Worked for me too! So simple. The author of this article should add this too.

    • bruce

      This also worked for me. turn off sitemaps. save. turn them back on. save. fixed

    • David

      Same for me, unchecked, saved, checked, saved, voila!

  43. Steven

    I’ll just share what worked for me, by changing the ‘max entries per site map’ to 250 (ie. something less than 1000) I managed to fix the 404 error. I think the server was having issues processing 1000 entries which is the default.

    • Maggie

      Hi Steven, this is great solution! I just fixed the problem by your method. Thank you very much!

    • PromInc

      Thanks Steven – this resolved my issue as well. The ‘max entries…’ field was blank for me; simply adding any value seemed to work, which is good as I felt 250 was a bit low. Very simple but effective solution.

    • Nick Root

      That worked thanks for the tip!

Deixe uma resposta

Obrigado por deixar um comentário. Lembre-se de que todos os comentários são moderados de acordo com nossos política de comentários, e seu endereço de e-mail NÃO será publicado. NÃO use palavras-chave no campo do nome. Vamos ter uma conversa pessoal e significativa.