web-dev-qa-db-fra.com

Comment utiliser get_page_by_title () avec qTranslate?

Avez-vous une idée de la façon dont je peux utiliser la fonction WP _ get_page_by_title() avec qTranslate installé?

par exemple:

$page_contact = get_page_by_title( '_e("[:en]contact");' ,'page' );
$page_contact_ID = $page_contact->ID; echo '~~~~'.$page_contact_ID;

Le seul moyen d'obtenir une correspondance est d'inclure toute la chaîne avec toutes les langues - et il est impossible que cela fonctionne une fois que les gens commencent à modifier les pages ...

1
Q Studio

Ok, maintenant que vous connaissez votre objectif final, je peux essayer de vous répondre:

d'abord, un peu de contexte pour les autres personnes qui liront ceci et pourraient se demander pourquoi cette question existe (parce que cela peut aider aussi dans d'autres cas)

la fonction get_page_by_title () fait exactement ce que son nom dit. Mais qTarnslate, ainsi que d’autres plugins, changent réellement le titre dans la base de données.

La réponse à de tels problèmes consiste à utiliser une autre fonction moins connue (mais non moins puissante) appelée get_page_by_path();

pourquoi cela aide-t-il? Parce que le chemin de la page ne sera pas changé. Habituellement, il sera utilisé comme ceci:

get_page_by_path('parent-page/sub-page');

Mais une chose beaucoup plus intéressante est que le paramètre "path" peut être le SLUG, qui n'est PAS modifié par qTranslate.

alors pour la réponse directe, essayez ceci:

$page = get_page_by_path('your-slug-of-page-to-exclude');
wp_list_pages('exclude='.$page->ID.'&title_li=');

cela étant dit, et en passant, il n’ya aucune raison que vous perdiez l’ID des pages lors de la migration, si vous exportez simplement votre base de données et importez-le sur le nouveau serveur, comme décrit dans CODEX ou ICI .

3
krembo99