Problem in latest.rss / Not a Valid Feed, it says!

@codinghorror, I can now confirm this is happening due to the default locale being changed in Admin > Settings. When I select Persian, it adds the <language>fa_IR</language> to the RSS feed output. Switching it back to English, puts it back to <language>en</language>.

Based on List of ISO 639-1 codes - Wikipedia, it seems the appropriate code for Persian is simply fa, I’m not sure why _IR is being appended to it.

When I take the RSS output and plug it directly into the validator, changing fa_IR to fa, it marks it as Valid RSS.

With all that said, it seems this is a valid bug. I also confirmed using other languages (I choose at random, and have no idea what they were), were all using 2 character codes which made them valid as well.

Other locales that exhibit this same issue

  • bs_BA (should be bs?)
  • fa_IR (should be fa, per is also valid - ISO 639-2/B)
  • nb_NO (should be nb?)
  • pl_PL (should be pl?)
  • pt_BR (should be pt?)
  • tr_TR (should be tr?)
  • zh_CN (should be zh?)
  • zn_TW (should be zh?)

I wonder if the quick fix for this is to only take the first two characters for the <language> element in the RSS feed.

2 Likes