theme-page-fluida

Traduction de la page d’accueil du thème Fluida

avril 11, 2017 - AdminSimpliss

8Commentaires

Article actualisé le 13 juillet 2017 suite à la mise à jour vers Fluida 1.3.4

J’utilise pour un des clients le thème Fluida 1.3.4 pour WordPress. Et pour la version anglaise du site, j’ai installé le plug-in Polylang.

Or sur la page d’accueil, mes pages mises en avant dans la zone Featured Icon Blocks restaient en français dans la page d’accueil anglaise. Elles sont pourtant bien traduites et associées entre elles avec Polylang.

J’ai pour ma part résolu le problème en modifiant le fichier du thème :

/fluida/includes/landing-page.php

Dans les fonctions fluida_ipblocks() (environ en ligne 100) et fluida_lptext() (environ en ligne 254), j’ai remplacé :

$page = get_post( $pageid );

par

if ( function_exists( 'pll_get_post' ) ) {
    $page = get_post( pll_get_post($pageid, get_locale()));
    $pageid = pll_get_post($pageid, get_locale());
 } else {
    $page = get_post( $pageid );
 }

 

Par contre, ce fichier n’étant pas pris en compte dans un thème enfant, il faudra penser à refaire la modification après une mise à jour du thème parent Fluida.

Et vous, avez-vous une meilleure solution ? Postez votre commentaire ci-dessous.

8 réactions au sujet de « Traduction de la page d’accueil du thème Fluida »

  • Magda

    24 avril 2017 à 12 h 29 min

    Hi 

    Thanks for solution how to make multilanguage part of landing page at fluida theme! 🙂
    I used it at my webside.
    Could you please write me how to do the same for « text area builder »?
    I tried to do it with myself, but my PHP knowledge is to little..

    Now text area builder is:
    * text area builder
    */
    if ( ! function_exists( ‘fluida_lptext’ ) ):
    function fluida_lptext( $what = ‘one’ ) {
    $pageid = cryout_get_option( ‘fluida_lptext’ . $what );
    if ( ! empty( $pageid ) ) {
    $page = get_post( $pageid );
    $data = array(
    ‘title’ => get_the_title( $pageid ),
    ‘text’ => apply_filters( ‘the_content’, get_post_field( ‘post_content’, $pageid ) ),
    ‘id’ => $what,
    );
    list( $data[‘image’], ) = wp_get_attachment_image_src( get_post_thumbnail_id( $pageid ), ‘full’ );
    fluida_lptext_output( $data );
    }
    } // fluida_lptext()
    endif;
    /**
    * text area output
    */

    At this moment polylang can’t work for this area 🙁
    I will be gratefull if it is possible.
    regards
    Magda

    Répondre
    • AdminSimpliss

      2 mai 2017 à 11 h 26 min

      Bonjour,
      Avez-vous essayé simplement de remplacer dans la fonction fluida_lptext() le code
      $page = get_post( $pageid );
      par le code que j’indique dans l’article ?

      Répondre
  • Thierry F

    14 mai 2017 à 21 h 00 min

    Bonjour,
    Merci beaucoup d’avoir partagé cette solution qui m’a épargné quelques soucis!
    Avec Fluida, même problème sur la Landing Page avec les Text Areas… et même solution.

    Je rencontre un autre problème avec les « entêtes de média » : elles ne s’affichent pas , la div header-image-main-inside est vide.
    Cela ne se produit pas si on sélectionne une seule entête fixe, seulement avec le chargement aléatoire…
    En cour d’analyse..

    Répondre
  • Laurie

    19 juillet 2017 à 10 h 54 min

    Bonjour,
    Merci beaucoup pour cette solution !
    Auriez-vous un code pour faire de même avec les boxes ?
    Elles affichent une catégorie d’articles mais ne semblent pas faire le lien avec l’article correspondant en anglais.
    Merci d’avance.

    Répondre
    • AdminSimpliss

      19 juillet 2017 à 14 h 14 min

      Bonjour,
      Au préalable, avez-vous bien traduit vos catégories d’articles et rattaché les articles traduits à la catégorie traduite ?
      Le cas échéant, sans doute est-ce quelque chose à modifier dans la fonction fluida_lpboxes().
      Une piste de recherche : en ligne 178 de ce même fichier, le thème fait une recherche sur le nom de la catégorie. Si vous arrivez à ce qu’il cherche sur le nom traduit de la catégorie, cela devrait fonctionner…

      Répondre
      • Laurie

        20 juillet 2017 à 8 h 12 min

        Merci infiniment pour votre réponse, ça fonctionne avec la catégorie traduite !
        Bonne journée 🙂

        Répondre
  • Carine

    25 septembre 2017 à 10 h 01 min

    Merci beaucoup pour cette méthode qui m’a sauvé ! 🙂

    Répondre
  • Kaj

    14 novembre 2017 à 15 h 13 min

    Hi simplissite,

    I am very grateful for this workaround, well done! Would you know how to do the same with the fluida_lpbox ? As I can’t find the « page » line which has worked on the other two situations, I don’t know where to add the additional lines.

    Would you please so kind to help me with this?

    Kaj

    Répondre

Écrire un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

En continuant à utiliser le site, vous acceptez l’utilisation des cookies. Plus d’informations

Les paramètres des cookies sur ce site sont définis sur « accepter les cookies » pour vous offrir la meilleure expérience de navigation possible. Si vous continuez à utiliser ce site sans changer vos paramètres de cookies ou si vous cliquez sur "Accepter" ci-dessous, vous consentez à cela.

Fermer