web-dev-qa-db-fra.com

Désactiver qTranslate par type de message dans admin + désactiver par ID/ID de poste sur le serveur

J'essaie de trouver un moyen de désactiver qTranslate de manière sélective. J'aimerais pouvoir afficher certains contenus statiques sur mon site en 4 langues, mais ne disposer que d'une seule langue (et d'un éditeur simplifié) pour les messages, ainsi que pour les messages personnalisés. types de poste.

J'aurais également besoin de désactiver la sortie sur certaines pages du front-end pour pouvoir afficher tout le contenu linguistique sur la même page, au même moment.

Existe-t-il un moyen de charger le plugin à la demande?

4
Q Studio

L'extrait suivant le désactivera pour post_type post (modifier le tableau ci-dessous pour affecter d'autres post_types):

function qtrans_disable()
{
    global $typenow, $pagenow;

    if (in_array($typenow, array('post')) && // post_types where qTranslate should be disabled
        in_array($pagenow, array('post-new.php', 'post.php'))) 
    {
        remove_action('admin_head', 'qtrans_adminHeader');
        remove_filter('admin_footer', 'qtrans_modifyExcerpt');
        remove_filter('the_editor', 'qtrans_modifyRichEditor');
    }
}
add_action('current_screen', 'qtrans_disable');

De même, vous pouvez le désactiver pour des identifiants de publication spécifiques. Cependant, tenez compte du fait que ce n'affectera pas un contenu multi-langues déjà existant. Par conséquent, utilisez-le avant d’en entrer.

3
jayarjo

Il y a une réponse dans le qtranslate forum qui semble résoudre ce problème. Cela implique cependant de changer les fichiers de base du plugin. Un peu de chance avec ça?

1
englebip