web-dev-qa-db-fra.com

Définition de la langue du flux RSS

Quelle est la manière la plus simple/facile de configurer la langue du flux rss? Actuellement, ce champ dans mon flux XML est vide, il ressemble à ceci

 <language></language>

et j'aimerais qu'il ressemble à

<language>en-US</language>

Toute aide sur la façon de l'implémenter facilement?

2
idjuradj

Dans le modèle de flux par défaut , vous trouverez quelque chose comme:

<language><?php bloginfo_rss( 'language' ); ?></language>

Comme vous pouvez le voir, le bloginfo du flux (bloginfo_rss()) est appelé (au lieu de get_bloginfo()). Vous pouvez écraser la langue du fil séparément via un filtre dans votre functions.php:

add_filter('bloginfo_rss', 'custom_rss_lang_attr', 10, 2);
function custom_rss_lang_attr($output, $show) {
  switch( $show ) {
    case 'language':
      $output = 'en-US';
      break;
  }
  return $output;
}

Mise à jour: Comme l'a souligné @toscho, il est déconseillé d'utiliser une variable switch avec un seul cas. Restez simple et utilisez une instruction if:

add_filter('bloginfo_rss', 'custom_rss_lang_attr', 10, 2);
function custom_rss_lang_attr($output, $show) {
  if ( $show == 'language' ) {
    $output = 'en-US';
  }
  return $output;
}
2
Sven