web-dev-qa-db-fra.com

Changer la base de recherche dans une wordpress multilingue

J'ai deux sites Wordpress qui partagent les mêmes fichiers de modèle pour deux langues. Je souhaite modifier la base de recherche Word pour le site Web non anglais. Cependant, quand je change de

var $search_base = 'search';

à partir du fichier rewrite.php, il le fait pour les deux langues. Est-il possible de le faire uniquement pour les non-anglais?

Edit: Vous ne pouvez pas voir pourquoi ma question a été marquée comme étant en double et surtout avec cette question qui n'a rien à voir avec la mienne. Je peux modifier la base de recherche, mais je souhaite le faire uniquement pour une langue et non pour toutes. La question en double a le même résultat que le mien.

J'ai essayé quelque chose comme ça dans le fichier function.php, mais ça ne marche toujours pas:

$lang = get_bloginfo("language");
if ( $lang == 'de-DE' ) {
    add_action('init', 'search_base_german');
    function search_base_german() {
        $search_slug = 'suche'; // change slug name
        $GLOBALS['wp_rewrite']->search_base = $search_slug;
    }
}
2
Tasos

J'ai trouvé la solution. J'ai dû vider les règles après avoir modifié la base de recherche avec le code de la question modifiée. Voici le code final:

$lang = get_bloginfo("language");
if ( $lang == 'de-DE' ) {
    add_action('init', 'search_base_german');
    function search_base_german() {
        $search_slug = 'suche'; // change slug name
        $GLOBALS['wp_rewrite']->search_base = $search_slug;
        $GLOBALS['wp_rewrite']->flush_rules();
    }
}
2
Tasos