Bonjour,
Ma configuration WP actuelle
– Version de WordPress : 2.1
– Plugins en place : gengo, get-a-post
Problème(s) rencontré(s) :
Hello, j’ai créé une fonction pour gengo qui récupère un post « traduit » à partir de l’ID d’un post donné.
Par exemple, si le post_id#17 est une traduction du post_id#5;
function gengoGetAPost(5) va me sortir la ligne du post_id 17 dans wp_posts.
En théorie ça marche, voici la requête que ça donne dans phpmyadmin
SELECT p . *
FROM wp_posts AS p
INNER JOIN wp_post2lang AS p2l ON p.ID = p2l.post_id
INNER JOIN wp_post2lang AS p3l ON p3l.post_id = ‘5’
WHERE p2l.translation_group = p3l.translation_group
AND p2l.language_id = ‘2’ //2 = le language en cours dans la page
LIMIT 1
Mais étrangement, dans WordPress ça ne marche pas. Quel que soit le post_id envoyé dans la fonction, il ne m’affiche jamais celui là (mais semble répeter le dernier post de ma catégorie, ou alors c’est un hasard)
function gengoGetAPost($post) {
global $gengo, $wpdb;
$language_ids = implode(‘,’, $gengo->language_preference_id);
$query = « SELECT p.* FROM $wpdb->posts AS p INNER JOIN $gengo->post2lang_table AS p2l ON p.ID = p2l.post_id INNER JOIN $gengo->post2lang_table AS p3l ON p3l.post_id=’150′ WHERE p2l.translation_group=p3l.translation_group AND p2l.language_id=’2′ LIMIT 1 »;
echo $query;
return ($result = $wpdb->get_row($query)) ? $result : NULL;
}
Any idea ?
Modération: Merci d’utiliser les balises [ code ] et [ /code ] (avec éventuellement l’attribut « =PHP » ou « =SQL » 😉 )