PHPを使用して動的に作成された大きなサイトマップを取得しました。これには、約230の個別のサイトマップを持つサイトマップインデックスがあり、個々のサイトマップには3.000〜15.000のURLがあります。
これらの230のサイトマップのほとんどでは、すべて問題ありませんが、一部のURLには特殊文字が含まれており、Googleはエラーを返し、そのようなサイトマップを受け入れません。通常の受け入れられたURLの例:
http://www.site.com/Gentofte-Greve/Denmark 1 Badmintonligaen/12-fe-juice_a-1091627-1-33-1-odds/
Googleのサイトマップファイル全体を破損するURLの例:
http://www.site.com/Team%20%C5rhus%20Elite-Solr%F8d%20Strand/Denmark 1 Badmintonligaen/12-fe-juice_a-1091631-1-33-1-odds/
北欧のキャラクターなどの特殊文字は、サイトマップを破壊します。北欧の文字の例を次に示します。http ://www.borgos.nndata.no/alfabet.htm
私の質問は-サイトマップがまだうまくチェックアウトするように、これらの特殊文字(および他の同様の文字)をどのようにコーディングするのですか?それが解決策である場合、どのPHPコーディング関数を使用しますか?str_replaceを使用して、それらの文字を通常の文字に置き換える唯一の解決策はありますか?それは問題ではありません。URLは最初の部分に何を書いても機能します。その部分はSEO専用であるためですが、これには時間がかかります。Googleのサイトマップを壊さない方法で、これらの特殊文字を記述できるようにしたいと思います。
私のサイトマップに関する他のすべては問題ありません、それらはUTF-8でコード化されているか、少なくとも次の行である必要があります:
<?xml version='1.0' encoding='UTF-8'?>