Si vous utilisez la version gratuite du Polylang pour WordPress, vous savez déjà que la nouvelle page ou le nouvel article qu'il génère pour la traduction ne copie pas le contenu original
C'est l'une des caractéristiques de sa version payante. Dans la version gratuite, vous devez le coller à la main.
Pour résoudre ce problème et accélérer le processus, il suffit d'ajouter quelques fonctions dans le fichier functions.php de votre modèle.
Il est conseillé de toujours l'ajouter dans un "thème enfant"dans votre plugin de fonctions propres ou en utilisant Extraits de code au cas où cela ne fonctionnerait pas dans votre cas et que vous puissiez facilement rétablir les modifications ou au cas où quelque chose se briserait en raison d'une future mise à jour de WordPress, de votre modèle, de Polylang ou de la version PHP.
// Copying content when creating a translation with Polylang
function jb_editor_content( $content ) {
// Polylang sets the 'from_post' parameter
if ( isset( $_GET['from_post'] ) ) {
$my_post = get_post( $_GET['from_post'] );
if ( $my_post )
return $my_post->post_content;
}
return $content;
}
add_filter( 'default_content', 'jb_editor_content' );
// Copying content when creating a translation with Polylang
function jb_editor_title( $title ) {
// Polylang sets the 'from_post' parameter
if ( isset( $_GET['from_post'] ) ) {
$my_post = get_post( $_GET['from_post'] );
if ( $my_post )
return $my_post->post_title;
}
return $title;
}
add_filter( 'default_title', 'jb_editor_title' );
Je ne sais pas si cela fonctionne sur tous les modèles (ici, cela fonctionne bien avec GeneratePress). Je l'ai trouvé dans une note de décembre dernier, il est donc préférable de l'essayer d'abord dans un environnement de test isolé (mise en scène).
Traduire des balises avec Polylang, une autre histoire
Une note complémentaire. Polylang, bien qu'étant l'un des plugins gratuits les plus populaires et les plus légers pour créer un blog multilingue le plus populaire et le plus léger des plugins, est l'un des rares que j'utilise et qui, à mon avis, ne s'améliore pas trop dans sa version PRO. J'ai essayé les deux versions et c'est parfois encombrant. Je pense qu'il doit évoluer pour simplifier son utilisation, améliorer la traduction des chaînes de caractères et le rendre plus intuitif.
Maintenant que nous pouvons copier le contenu original avec Polylang vers la nouvelle page à traduire, nous aurons le titre, le contenu et normalement aussi les balises
Le problème, dans le cas des posts, est que les balises sont copiées en espagnol puis enregistrées comme de nouvelles balises, en ajoutant le préfixe de la langue à la fin du slug, par exemple "nombredeetiqueta-fr" (dans le cas de l'anglais).
Cela entraîne la création d'une nouvelle balise sans lien avec la balise en langue originale et sans traduction. Il finira très probablement par être orphelin ou utilisé dans un seul message
Pire encore, les tags s'accumuleront jusqu'à atteindre des chiffres risibles. Croyez-moi, avant la dernière révision et le nettoyage (que vous devez faire très soigneusement si vous les indexez dans le robots.txt et créez des redirections 301 car ce sont des URL de votre page qui seront cassées), ils s'ajoutaient au chiffre encombrant de 8848
De plus, avoir trop de balises ralentit les requêtes de la base de données et nuit aux performances.
La solution n'est pas de les supprimer dans l'éditeur et d'en ajouter de nouveaux dans la nouvelle langue car cela ne les fera pas disparaître, vous ne ferez que recréer les mêmes mots avec le préfixe"-en" dans le slug.
L'idéal, bien que fastidieux, est de savoir clairement quelles balises (quatre ou cinq au maximum) vous allez utiliser exactement dans le message à traduire et CRÉER AVANT leurs traductions correspondantes
Une fois les traductions enregistrées, lorsque vous créez la nouvelle copie du billet, Polylang exportera également les balises, mais désormais traduites pour la langue choisie correspondante.
Les balises servent principalement à améliorer les recherches internes sur votre blog et bien que de nombreux experts en référencement conseillent de ne pas indexer ni les balises ni les catégories, si cela est fait avec une stratégie rationnelle et prudente, elles peuvent générer une quantité non négligeable de visites organiques. Je peux en témoigner.
Vous pouvez tirer un grand profit des balises en créant de bonnes descriptions et une hiérarchie logique qui ne chevauche pas les noms des catégories et en évitant la création de contenu qui pourrait être considéré comme dupliqué.