cazaubon laurent pierre

Toutes mes réponses sur les forums

4 sujets de 1 à 4 (sur un total de 4)
  • Auteur
    Messages
  • en réponse à : correctif pour CSS menus sur site multilangue #6517

    merci. également une amélioration pour mieux controler l’aspect barre de langue avec le css dans header.php:

    <html <?php language_attributes(); ?> class= »no-js lang-<?=pll_current_language()?> »>

    en réponse à : Erreur liée au plugin "Polylang" #6516

    bonjour @Anonyme

    cela reste, meme apres l’installation:

    l’installation la montre temporairement, puis la masque apres refresh (tres rapide, on peut ne pas la voir: (1) ? ).

    – lors de l’installation, erreur du type Invalid argument supplied for foreach() in <votre-site>\wp-content\plugins\polylang\include\model.php on line 100 etc…
    – ensuite: ex avec <votre-site>/le-laboratoire/fonctionnement, ca se traduit par si on remet ini_set(« display_errors », 1);
    Warning: array_merge(): Argument #1 is not an array in …wp-content/plugins/polylang/include/filters.php on line 157

    –> légère correction à faire dans <theme-enfant>\template-parts\content-page.php :

    
                $args = array(
                    'sort_order' => 'asc',
                    'sort_column' => 'post_title',
                    'hierarchical' => 1,
                    'exclude' => array(get_the_ID()), <<<
                    'include' => array(), <<<
                    'meta_key' => '',
                    'meta_value' => '',
                    'authors' => '',
                    'child_of' => 0,
                    'parent' => $post->post_parent,
                    'exclude_tree' => array(), <<<
                    'number' => 3,
                    'offset' => 0,
                    'post_type' => 'page',
                    'post_status' => 'publish'
                );

    ensuite, tout est ok avec ce template ! 🙂

    ———————————————————————————
    load.php de wordpress :

    <em><strong>(1)  </strong>	if ( defined( 'XMLRPC_REQUEST' ) || defined( 'REST_REQUEST' ) || ( defined( 'WP_INSTALLING' ) && WP_INSTALLING <<<< ) || wp_doing_ajax() ) {
    		<strong>@ini_set( 'display_errors', 0 ); <<<</strong>
    	}</em>
    en réponse à : Déboguage du Kit CNRS Impossible!! #6514

    je ne peux pas modifier mon message précedent:

    bien sûr erreur de frappe, mettre:

    function err($mode=’off’) {

    static $err=0;

    if($err==0) <<<<<<<<
    $err=ini_get(« display_errors »);

    ….
    }

    autre problème de ce fichier : (?)
    j’ai l’impression qu’il contient des parties pure front (sans test is_admin() pour certains blocs ??) et des partie admin qui sont parfois chargées aussi bien en front ou admin. (le fichier functions.php pointe dessus systematiquement : un découpage en fonctions admin et front aurait été idéal)

    tout cela, ralentit peut-etre l’admin et le front. peut-etre petits dynsfonctionnement ?
    j’ai des lenteurs inhabituelles et un plantage lors de l’installation d’un plug-in que j’utilise sans pb.

    je ne sais pas en fin de compte….

    c’est dommage car pour le reste le kit fait gagner du temps et est bien pensé globalement:
    mais ce fichier central très important me laisse perplexe….

    en réponse à : Déboguage du Kit CNRS Impossible!! #6498

    bonjour,

    idem (2 jours perdu) et j’envisage meme de changer de thème en gardant le reste du kit, si pas resolu rapidement.

    en effet, qd on passe en WP_DEBUG + WP_DEBUG_DISPLAY:true, nos propres bugs ne sont pas visualisés car ce ini_set(« display_errors », 0) neutralise tout les réglages du wp-config.php et masque les bugs du site

    c’est bloquant car:

    – inc-pages-functions.php contient beaucoup de bugs (basiques: this au lieu de $this, variables non initialisées, cas de pages non traités dans certaines fonctions, …-) et un des fichier le plus importants du thème (dispatche ou extraits les informations vers les pages)

    – la démo ne fonctionne que parce que les bugs sont masqués :
    si on sort du cas de figure de cette démo, on a des comportements bizarrs (logique: les bugs by-passés font faire des sauts de puce/sorties dans le code)

    personnellement, j’ai corrigé qq bugs mais l’administration plante encore … abandon ==> autre solution temporaire :

    A- blinder inc-pages-functions.php :
    fait des ini_set(« display_errors », 0); en entrée de chaque fonction sensible et ini_set(« display_errors », ?) en sortie
    Pour que le site respecte au final les options du wp-config.php (sinon soit on développe à l’aveugle, soit faut distinguer ses bugs parmi 15 autres bugs)

    B- la fonction qui automatise ca:

    function err($mode='off') {
        
        static $err=0;
        if($err=0)
                $err=ini_get("display_errors");
        
        if($mode=='off')
            if(WP_DEBUG) 
                if(WP_DEBUG_DISPLAY)
                    ini_set("display_errors", 0);
                
        if($mode=='on')
            if(WP_DEBUG) 
                if(WP_DEBUG_DISPLAY)
                    ini_set("display_errors", $err);    
    }

    C- utilisation dans fichier inc-pages-functions.php :

    //ini_set("display_errors", 0); //VERSION CORRIGEE

    avec ex de fonction qui pose pb :

    class CnrswebkitPageItemsList {
    ....
    public function get_html_item_list($template = false) {
    
        public function get_html_item_list($template = false) {
            
            err();
            if (!$template) {
                $template = $this->post_type;
            }
    
          ....
    
                switch ($this->post_type) {
                    case 'actualite':
                        if (is_home() || is_front_page()) {
                            echo '<article id="actualite-social-links" class="widget"><h1>Suivez-nous</h1></article>';
                        }
                        break;
                }
            }
            err('on');
        }
    

    D- test :

    faites un echo zzzz; dans votre functions.php du thème enfant. et vous allez voir votre bug seul (sans ceux de inc-pages-functions.php)

    mais c’est vraiment pas une bonne solution car le kit dysfonctionnera qd meme (il marche « grace » à ces bugs ?….).
    Et sera écrasé lors la prochaine mise à jour.

    ——————————————————–

    il faudrait signaler ca à l’équipe : car on peut pas travailler sur cette base (+ failles de sécurité dans cette version: l’ingenieur système refusera de mettre en ligne un tel appât à hackers)

4 sujets de 1 à 4 (sur un total de 4)