回答:
それは正しいです。これはアンパサンド(&
)のHTMLエンティティであり、適切にエンコードされたURLでの適切な文字表現です。アンパサンド(&
)および<
and >
は、XMLおよびHTMLの特殊文字であり、特殊文字エンティティを使用して表示する必要があります。
CDATA
ノードを使用する場合を除き、エスケープする必要があります(bdadamが同じことを言ったことに気付きましたが、私よりもずっと早いです)
>
厳密にXMLでエンコードされたエンティティである必要はありません。
サイトマップファイルはUTF-8でエンコードされている必要があります(通常、ファイルを保存するときにこれを行うことができます)。すべてのXMLファイルと同様に、すべてのデータ値(URLを含む)は、文字にエンティティエスケープコードを使用する必要があります。
これが役立つ場合があります、http://sitemaps.org/protocol.php
また、チェックすることで自分を納得させることができます
公式のxmlサイトマッププロトコルページに反論することはできません:)
Googleは、URLに&文字が含まれている場合、サイトマップが破損しているとして拒否します。&を&amp;に置き換えたときに受け入れられます。
ただし、後でGoogleウェブマスターツールでクロールエラーのリストを確認すると、&amp;が含まれているため、サイトマップファイルのこのURLが壊れていると報告されます。の代わりに &。
したがって、正しい解決策は、&を含まないようにURLを変更することです。または、これをバグとしてGoogleに報告してください。
%26
):例えばhttp://foo/a%26r.php?foo=1&genre=r%26b