distributechmaroc Posted December 5, 2014 Share Posted December 5, 2014 Bonjour, je suis sous prestashop 1.6.09, suite à une mise à jour de google analytics via interface module BO je n'arive plus à acceder à mon site web ni le back office. j'ai cherché partout je n'arrive pas à trouver une solution à mon probleme. MERCI DE VOTRE AIDE Strict Standards: Declaration of Tools::completeMetaTags() should be compatible with that of ToolsCore::completeMetaTags() in /home/prestashop/public_html/override/classes/Tools.php on line 159Warning: Cannot modify header information - headers already sent by (output started at /home/prestashop/public_html/override/classes/Tools.php:159) in /home/prestashop/public_html/classes/controller/FrontController.php on line 793Parse error: syntax error, unexpected ':' in /home/prestashop/public_html/modules/ganalytics/ganalytics.php on line 628 Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted December 5, 2014 Share Posted December 5, 2014 Tu as un override qui pose problème. Va dans override/classes et trouve le fichier tools.php et renomme le en tools.php.back ça aura pour effet de le désactiver. Si ton site remarche après cette manipulation il faudra voir à quoi servait le fichier en question. Link to comment Share on other sites More sharing options...
stephane.964 Posted December 5, 2014 Share Posted December 5, 2014 (edited) Bonjour, idem sur une 1.6.0.6 petit tour dans les modules, tiens maj de qq uns, ok (dont le google) maintenant en front page blanche / coté adm impossible de rentrer dans la partie module Sous php my adm dans pss_module ganalytics 1.8.2 donc la version a bien planté lors de la maj. je l'ai passé à 0 (inactif) sans résultat. Une idée ?? manit4c: pas trouvé de tools.php .... Apparemment le problème semble sur le fichier de maj et non la version de prest. http://www.prestashop.com/forums/topic/386003-ganalytics-module-crash-after-update/ http://www.prestashop.com/forums/topic/386085-modulo-ganalytics-fatal-error-e-pagina-binaca/ Edited December 5, 2014 by stephane.964 (see edit history) Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted December 5, 2014 Share Posted December 5, 2014 Strict Standards: Declaration of Tools::completeMetaTags() should be compatible with that of ToolsCore::completeMetaTags() in /home/prestashop/public_html/override/classes/Tools.php on line 159 Euh c'est bizar que tu n'est rien trouvé car ce message est clair. Dans le dossier "home/prestashop/public_html/override/classes/" le à la ligne 159 du fichier "Tools.php" la déclaration de la class completeMeraTags n'est pas compatible avec la classe d'origine. Link to comment Share on other sites More sharing options...
stephane.964 Posted December 5, 2014 Share Posted December 5, 2014 Bonjour manit4c PArdon cela peut préter à confusion. Je n'ai pas exactement la même erreur que distributechmaroc Mon problème est relatif au module google et presta comme décrit dans le titre du post PAGE BLANCHE MODULE GGOGLE ANALYTICS PREST 1.6 ! Le problème ressort différemment selon les conf/overides mais est bien lié à cette maj.... Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted December 5, 2014 Share Posted December 5, 2014 (edited) J'ai confondu les pseudo sorry (mettez un avatar aussi, vous avez tous la même tête ). As-tu activé le mode debug ? Edited December 5, 2014 by manit4c (Olivier C.) (see edit history) Link to comment Share on other sites More sharing options...
stephane.964 Posted December 5, 2014 Share Posted December 5, 2014 Parse error: syntax error, unexpected ':' in /home/xxxxxx/www/modules/ganalytics/ganalytics.php on line 628 ganalytics.php / 628 est la ligne rouge $cart = array( 'controller' => Tools::getValue('controller'), 'addAction' => Tools::getValue('add') ? 'add' : '', 'removeAction' => Tools::getValue('delete') ? 'delete' : '', 'extraAction' => Tools::getValue('op'), 'qty' => (int)Tools::getValue('qty') ? : '1'); Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted December 5, 2014 Share Posted December 5, 2014 ouai c'est faux ça: 'qty' => (int)Tools::getValue('qty') ? : '1'); ça c'est bon: 'qty' => (int)Tools::getValue('qty') ? Tools::getValue('qty') : '1'); 2 Link to comment Share on other sites More sharing options...
stephane.964 Posted December 5, 2014 Share Posted December 5, 2014 (edited) Superbe, cela fonctionne parfaitement. Merci beaucoup. JE viens de regarder un site sous 1.6.9 module Google Analytics v1.8.2 - (nécessite une maj) le code en question n'existe pas la partie de code suivante est insérée lors de la maj /** * hook save cart event to implement addtocart and remove from cart functionality */ public function hookActionCartSave() { if (!isset($this->context->cart)) return; $ga_scripts = ''; $cart = array( 'controller' => Tools::getValue('controller'), 'addAction' => Tools::getValue('add') ? 'add' : '', 'removeAction' => Tools::getValue('delete') ? 'delete' : '', 'extraAction' => Tools::getValue('op'),// 'qty' => (int)Tools::getValue('qty') ? : '1');'qty' => (int)Tools::getValue('qty') ? Tools::getValue('qty') : '1'); $cart_products = $this->context->cart->getProducts(); if (isset($cart_products) && count($cart_products)) foreach ($cart_products as $cart_product) if ($cart_product['id_product'] == Tools::getValue('id_product')) $add_product = $cart_product; if ($cart['removeAction'] == 'delete') { $add_product_object = new Product((int)Tools::getValue('id_product'), true, (int)Configuration::get('PS_LANG_DEFAULT')); if (Validate::isLoadedObject($add_product_object)) { $add_product['name'] = $add_product_object->name; $add_product['manufacturer_name'] = $add_product_object->manufacturer_name; $add_product['category'] = $add_product_object->category; $add_product['reference'] = $add_product_object->reference; $add_product['link_rewrite'] = $add_product_object->link_rewrite; $add_product['link'] = $add_product_object->link_rewrite; $add_product['price'] = $add_product_object->price; $add_product['ean13'] = $add_product_object->ean13; $add_product['id_product'] = Tools::getValue('id_product'); $add_product['id_category_default'] = $add_product_object->id_category_default; $add_product['out_of_stock'] = $add_product_object->out_of_stock; $add_product = Product::getProductProperties((int)Configuration::get('PS_LANG_DEFAULT'), $add_product); } } if (isset($add_product)) { $ga_products = $this->wrapProduct($add_product, array(), 0, true); if ($cart['removeAction'] == 'delete' || $cart['extraAction'] == 'down') $ga_scripts .= 'MBG.removeFromCart('.Tools::jsonEncode($ga_products).');'; elseif (Tools::getValue('step') <= 0) // Sometimes cartsave is called in checkout $ga_scripts .= 'MBG.addToCart('.Tools::jsonEncode($ga_products).');'; $this->context->cookie->ga_cart .= $ga_scripts; } Bizarre que la maj ait été validée.. Edited December 5, 2014 by stephane.964 (see edit history) Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted December 5, 2014 Share Posted December 5, 2014 Bizarre que la maj ait été validée.. Google est tout puissant 1 Link to comment Share on other sites More sharing options...
Xavier du Tertre Posted December 5, 2014 Share Posted December 5, 2014 Une pull request un peu plus propre est en validation au moment où je vous parle. Version 2.0.1 d'ici 24h dans votre BO. Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted December 5, 2014 Share Posted December 5, 2014 Une pull request un peu plus propre est en validation au moment où je vous parle. Version 2.0.1 d'ici 24h dans votre BO. Xavier, lorsqu'un bug (bloquant) à été repéré sur la version d'un module post validation. Ne serait-il pas possible de ne pas proposer la mise à jour du module dans le BO de prestashop ? Ou du moins la maj vers une version clean ? Si c'est pas possible ce serait bien de faire remonter l'idée à la team qui gère ça pour le mettre en place ça ferait gagner du temps à tous le monde. Link to comment Share on other sites More sharing options...
Iron Star Posted December 6, 2014 Share Posted December 6, 2014 Avec la correction indiquée plus haut ça fonctionne parfaitement. Mais attention à bien modifier le zip avant installation et ne pas faire la maj à partir de l'admin, ça plante tout ! Ce serait pas mal de virer la grosse pub "Create Analytics account" lorsqu'on a indiqué un ID de suivi... c'est lourd et, surtout, inutile. Puis proposer un module buggé (et à priori validé), c'est pas très pro de la part de la team de validation... ça n'a manifestement pas été testé ! Link to comment Share on other sites More sharing options...
cherubin66 Posted December 6, 2014 Share Posted December 6, 2014 Même problème ! J'attends la mise à jour débuguée ^^ Link to comment Share on other sites More sharing options...
jogo01 Posted December 6, 2014 Share Posted December 6, 2014 merci j'ai connu le même problème page blanche plus moyen d'avoir acces via le BO aux modules je suis aller dans le module google ganalytics et j'ai modifié via dreamweaver la ligne que Manit4c à indiqué Milles Mercis ps je ne savais pas comment faire pour modifier les lignes .... et jje ne sais toujours pas je suis un novice autodidacte Link to comment Share on other sites More sharing options...
cedben Posted December 6, 2014 Share Posted December 6, 2014 ouai c'est faux ça: 'qty' => (int)Tools::getValue('qty') ? : '1'); ça c'est bon: 'qty' => (int)Tools::getValue('qty') ? Tools::getValue('qty') : '1'); Tx manit4c you save my saturday night 1 Link to comment Share on other sites More sharing options...
distributechmaroc Posted December 6, 2014 Author Share Posted December 6, 2014 Bonjour, manit4c (Olivier C.) Je vous remerçie pour votre réponse pertinente mon site a remarché aprés avoir modifier le fichier tools.php en tools.php.back. maintenant quand je vais sur module en BO j'ai cette warning dans une fenetre en rouge : Unknow error à la ligne 64 du fichier /home/prestashop/public_html/modules/m2t/m2t.php[2048] Accessing static property m2t::$ACCEPTED_URL as non staticUnknow error à la ligne 65 du fichier /home/prestashop/public_html/modules/m2t/m2t.php[2048] Accessing static property m2t::$storeId as non staticUnknow error à la ligne 66 du fichier /home/prestashop/public_html/modules/m2t/m2t.php[2048] Accessing static property m2t::$SECRETKEY as non static MERCI BIEN. Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted December 8, 2014 Share Posted December 8, 2014 A priori c'est donc le modules m2t qui a installé l'override qui pose problème. Désactivez-le. Link to comment Share on other sites More sharing options...
cherubin66 Posted December 8, 2014 Share Posted December 8, 2014 Salut Manit4C C'est quoi le module "m2t" ? Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted December 8, 2014 Share Posted December 8, 2014 Ben je sais pas moi c'est pas ma boutique Link to comment Share on other sites More sharing options...
cherubin66 Posted December 8, 2014 Share Posted December 8, 2014 lol Ouais, j'avais pas vu le rapport d'erreur ^^ Link to comment Share on other sites More sharing options...
Cedric31 Posted October 27, 2016 Share Posted October 27, 2016 (edited) Bonjour, J'ai le même problème, page blanche suite à la mise à jour du module Google analytics version 2.3.4 Je suis passé en débug et j'obtiens cette erreur Fatal error: Call to a member function isRegisteredInHook() on boolean in /var/www/html/nomdedomaine/modules/ganalytics/ganalytics.php on line 451 Si quelq'un à une idée, je suis preneur Edited October 27, 2016 by Cedric31 (see edit history) Link to comment Share on other sites More sharing options...
Cedric31 Posted October 27, 2016 Share Posted October 27, 2016 public function isModuleEnabled($name) { if (version_compare(_PS_VERSION_, '1.5', '>=')) if(Module::isEnabled($name)) { $module = Module::getInstanceByName($name); return $module->isRegisteredInHook('home'); =======> ligne 451 } else return false; else { $module = Module::getInstanceByName($name); return ($module && $module->active === true); } } Link to comment Share on other sites More sharing options...
Cedric31 Posted October 28, 2016 Share Posted October 28, 2016 ouai c'est faux ça: 'qty' => (int)Tools::getValue('qty') ? : '1'); ça c'est bon: 'qty' => (int)Tools::getValue('qty') ? Tools::getValue('qty') : '1'); Bonjour olivier, Je rencontre un bug similaire sur ce module, impossbile d'afficher mon site suite à la mise à jour du module Ganalytics Fatal error: Call to a member function isRegisteredInHook() on boolean in /var/www/html/nomdedomaine/modules/ganalytics/ganalytics.php on line 451 Aurais tu une idée du problème ? je te remercie par avance Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted October 28, 2016 Share Posted October 28, 2016 HEllo, l'erreur veux dire que $module qui devrait êter normalement une "classe" de type "module" est en réalité un booleen c'est à dire 0 ou 1. A priori la fonction getinstancebyname ne retourne pas la bonne valeur. Soit elle est corrompue (override dessus peut être) soit c'st la valeur qui lui est fournie ($name) qui est fausse. Cherche déjà si tu as un override de la classe "module" dans "override/classes" Link to comment Share on other sites More sharing options...
Cedric31 Posted October 28, 2016 Share Posted October 28, 2016 (edited) Hello, Merci pour ce retour mais je ne comprends pas trop l'action à réaliser je dois rechercher quel fichier dans le dossier "override/classes" en tout cas je ne vois rien avec la valeur getInstanceByName dans le dossier "override/classes" Edited October 28, 2016 by Cedric31 (see edit history) Link to comment Share on other sites More sharing options...
Cedric31 Posted October 28, 2016 Share Posted October 28, 2016 (edited) n'étant pas expert en dev, j'ai trouvé ce tuto sur override https://blog.ukoo.fr/prestashop/20120907-les-bonnes-pratiques-prestashop-loverride/ c'est plus clair pour info, je vois pas de fichier Module.php dans le dossier "override/classes" Par contre je trouve ça override/classes/module/Module.php Edited October 28, 2016 by Cedric31 (see edit history) Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted October 28, 2016 Share Posted October 28, 2016 Alors a priori c'est pas un override de la classe qui créé le bug . Ca va être difficile de t'aider plus via le forum, j'en ai peur. Fait appel à un dev qui pourra sûrement te corriger le problème. 1 Link to comment Share on other sites More sharing options...
Cedric31 Posted October 28, 2016 Share Posted October 28, 2016 (edited) le code source du fichier override/classes/module/Module.php <?phpabstract class Module extends ModuleCore{ protected function getCacheId($name = null) { if (version_compare(_PS_VERSION_,'1.5.3.1','>')) return parent::getCacheId($name); else return false; }} En tout cas merci pour ton aide Edited October 28, 2016 by Cedric31 (see edit history) Link to comment Share on other sites More sharing options...
Cedric31 Posted October 28, 2016 Share Posted October 28, 2016 Je posterai la solution quand j'aurai résolu le problème Link to comment Share on other sites More sharing options...
Olivier CLEMENCE Posted October 28, 2016 Share Posted October 28, 2016 Ok, renomme ce fichier en module.php.old puis va dans le dossier "cache" et supprime le fichier class_index. Ca va désactiver cet override et tu verra si t'as toujours le problème. ps: j’arrête pour ce soir moi Link to comment Share on other sites More sharing options...
Cedric31 Posted October 28, 2016 Share Posted October 28, 2016 (edited) ça ne fonctionne toujours pas, merci tout de même pour cette piste Edited October 28, 2016 by Cedric31 (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now