Cookie Law parte seconda – Il Plugin

Paolo De Dionigi

Paolo De Dionigi

Ingegnere ambientale, finita l'università fonda con altri due soci una società che si occupa di realizzazione di siti internet e nel contempo effettua consulenze in ambito sicurezza sul lavoro e ambiente. Dopo alcuni anni si dedica completamente al web… Dal 2006 è responsabile tecnico di Zen Cart Italia.

54 Risposte

  1. Maurizio Tulotta Maurizio Tulotta ha detto:

    Grazie infinite per la vostra disponibilità.

    Ho un problema che non riesco a capire dove sbaglio.

    Una volta installata la path e caricati i file via FTP mi trovo tutto come da guida, l’unica cosa strana che se attivo il modulo su “true” non vedo nulla mentre se lo metto su “false” appare in alto la banda con la dicitura e il pulsante accetto.

    Dove sbaglio? Grazie ancore per la vostra disponibilità. Maurizo

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      Ciao, è molto strano il tuo problema.
      L’attivazione del modulo imposta a true il seguente parametro: ZW_COOKIE_LAW_ENABLED
      Nel frontend, l’unico punto in cui compare quel parametro è:

      if ((ZW_COOKIE_LAW_ENABLED == 'true') && $session_started) {
      

      in files/includes/init_includes/init_zw_cookie_law.php riga 14.

      Questo è il file di inizializzazione che attiva tutto il funzionamento del modulo o lo lascia spento.
      Controlla che effettivamente se impostato a true, nel db ti inserisca true e che il codice del tuo file di init sia come quello sopra riportato, anche se non vedo come potrebbero essere diversamente.
      Mi risulta incomprensibile che a te possa funzionare al contrario, ma se non sperimenti altri malfunzionamenti, lascialo in modo che a te funzioni.

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      Potresti inviarmi l’url del sito?

  2. Alfredo Trifiletti Alfredo Trifiletti ha detto:

    Buonasera,
    ringrazio per la disponibilita del modulo, Devo comfermare che mi trovo nelle identica situazione del Sig. Maurizio.
    Attivato il modulo su “true” non vedo nulla mentre su “false” appare in alto la banda con il pulsante accetto.
    Verificato il in files/includes/init_includes/init_zw_cookie_law.php riga 14.ed e’ su “true”
    Non so dove sbaglio, grazie.

    Alfredo

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      Non so cosa dire. E’ come se nel vostro caso, true valesse false e viceversa. E’ da notare che il controllo è su ‘true’, quindi stringa ‘true’, non valore booleano true, quindi non dovrebbero esserci malintesi su altri valori che danno risultato vero o falso. Inoltre non avrebbe senso la restituzione a vero in caso di valore falso (essendo stringhe). Pertanto non rimane che la funzione che imposta i valori lato admin imposti i valori al contrario: quando si sceglie true, nel db viene scritto false e viceversa.
      Controllare è abbastanza semplice, basta guardare nel db il valore della chiave ZW_COOKIE_LAW_ENABLED quando si attiva il modulo e quando lo si disattiva. Se effettivamente sono al contrario, poi si tratta di capire perchè e soprattutto perchè solo a voi.

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      Potresti inviarmi l’url del sito?

  3. sabrina bianchini sabrina bianchini ha detto:

    Buongiorno e grazie mille per il modulo, che ho provato oggi su zc 1.3.9.
    Purtroppo anche io ho lo stesso problema segnalato, se imposto il modulo su true il banner non appare. Mentre se lo imposto su false, il banner appare correttamente.
    Ho controllato il db ed i valori della chiave vengono impostati correttamente sia quando il modulo è attivato che disattivato.
    Inoltre, impostando il modulo su false e quindi con il banner attivo, cliccando il pulsante Accetta il banner rimane visibile.

    Sabrina

  4. Mirko Mirko Mirko Mirko ha detto:

    Buongiorno e grazie per la disponibilità, il mio problema invece è che dopo aver seguito alla lettera tutta la procedura di installazione non mi compare ne il menù nella pagina Admin e nemmeno alcun tipo di banner nel sito… 🙁 qualcuno mi può aiutare?

  5. Mark cecchi Mark cecchi ha detto:

    Buongiorno e complimenti per il modulo.

    Penso ci sia un errore nella funziona che gestisce l’if per assoggettare al consenso del codice nella pagina:

    la funzione zw_cookie_law_check_consent ritorna TRUE nel caso che la variabile $zw_cookie_content->id_del_cookie sia uguale ad 1. Invece il valore corretto presente è OK.

    Quindi ho modificato if($zw_cookie_content->{$cookie_id}==’1′) return true; con if($zw_cookie_content->{$cookie_id}==’OK’) return true;

    Non so se occorrono modifiche anche altrove.

    Marco.

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      Buongiorno, la funzione zw_cookie_law_check_consent serve per verificare se ci sia o meno il consenso sui cookie soggetti a consenso, non sul cookie tecnico di consenso generale.

      E’ il cookie di consenso generale ad essere valorizzato con OK, mentre il consenso dei cookie di profilazione è valorizzato a 1.

      Il setting del consenso a uno specifico cookie di profilazione, è attuato mediante la funzione zw_cookie_law_set_cookie_consent($cookie_id,$consent) che prende come parametri il cookie_id e il valore del consenso.
      Il valore del consenso è passato via POST dal form di espressione del consenso e i valori possibili sono 0 e 1

      Infatti per visualizzare il banner, il check non è fatto con quella funzione ma con questo codice:

      if(!isset($_COOKIE[ZW_COOKIE_LAW_COOKIE_NAME]) || ($zw_cookie_content->{ZW_COOKIE_LAW_COOKIE_NAME}!='OK')) {

      D’altronde se fai un test con il codice originale, vedrai che funziona, mentre se usi la tua modifica, non funzionerà l’espressione del consenso per i cookie specifici.

      • Mark cecchi Mark cecchi ha detto:

        Nel readme:

        ——————————————-
        if(zw_cookie_law_check_consent($cookie_id)) {
        CODICE DA ASSOGGETTARE AL CONSENSO
        }

        Dove $cookie_id è l’ID del cookie così come lo abbiamo inserito nella pagina di amministrazione.
        ————————–

        A me questo codice risulta sempre FALSE anche quando il cookie è stato accettato.

        Facendo un print_r di $zw_cookie_content, quando accettato il cookie, ho: stdClass Object ( [zw_cookie_law] => OK )

        Per questo ho pensato di cambiare da 1 a OK.

        • Paolo De Dionigi Paolo De Dionigi ha detto:

          Dici che il codice ti risulta sempre false, ma quale cookie_id gli fornisci?

          Ribadisco: non devi usarla per testare il consenso al cookie tecnico, ma ai cookie per i quali vuoi chiedere il consenso.

          Esempio: supponiamo nel tuo sito ci sia un servizio, chessò CRITEO, per il quale hai stabilito che deve essere bloccato senza consenso e debba essere data facoltà all’utente di esprimere / negare il consenso.

          Per ottenere questo risultato, devi aver inserito nel backend una categoria di cookies (ad esempio cookie di profilazione terze parti, ma il nome può essere ovviamente qualsiasi cosa), devi poi aver creato, sempre nel backend un cookie (in questo caso un servizio ma la procedura è la medesima), denominandolo ad esempio CRITEO, selezionando alla voce consenso ‘SI’.
          Questo cookie avrà un ID, nell’esempio poichè ne abbiamo inserito uno solo, sarà ‘1’.

          Dopodiché vai nel codice del frontend dove è inserito il blocco di codice che effettua la chiamata a CRITEO. Chiamiamolo BLOCCO_CRITEO per semplicità.

          Dovrai impostare questo codice:

          if(zw_cookie_law_check_consent('1')) {
          BLOCCO_CRITEO
          }
          

          Se il cookie / servizio che vuoi gestire, quando lo inserisci in admin si ritrova come ID 37, allora il codice per gestirlo nel frontend sarà:

          if(zw_cookie_law_check_consent('37')) {

          Il fatto che il print_r di $zw_cookie_content restituisca stdClass Object ( [zw_cookie_law] => OK ), significa che contiene il consenso al solo cookie generale (che ha come nome zw_cookie_law (così come creato di default).

          Se tu crei altri cookie in backend e li assoggetti al consenso (fai un test, creane 5 e assoggettane 3) e poi fai un print_r nel frontend (dopo aver preventivamente eliminato il cookie altrimenti non vedi le modifiche (è per questo che ho scritto che in caso di modifiche di questo tipo, in produzione, bisogna cambiare il nome al cookie (dalla pagina di configurazione), così la procedura di consenso viene ripetuta (per un cookiename diverso a questo punto, che rimarrà il cookie di gestione del consenso fino a ulteriore modifica), dunque facendo il print_r, troverai non solo zw_cookie_law (o meglio il nuovo nome usato) => OK, ma altri 3 elementi, ovvero i 3 cookie soggetti a consenso , ciascuno con il nome che hai scelto e il valore 1. Perchè? Perchè all’acquisizione del consenso generale, vengono accettati tutti i cookie e quindi il plugin recuperare tutti i cookie soggetti a consenso (che sono stati descritti da te) e attribuisce loro il consenso e lo inserisce nel cookie tecnico che abbiamo creato per questo scopo.

          • Mark cecchi Mark cecchi ha detto:

            Ok ora mi è tutto chiaro.

            Leggendo la documentazione non ho visto la parte dove si parla della gestione degli id dei cookies da admin e pensavo che $cookie_id facesse riferimento al nome del cookie generale (zw_cookie_law).

            Ora funziona correttamente.

            Grazie mille.

            Marco.

  6. Lisa Guarnieri Lisa Guarnieri ha detto:

    Ciao Paolo,
    ho provato ad installare il modulo, ma non mi si installa correttamente su Zencart 1.5.1, perche’ i 4 insert sulla tabella configuration non mi vanno a buon fine e danno l’errore:
    Errore Failed: 1
    Errore ERROR: Impossibile inserire configuration_key “” in quanto già esistente
    Vado a vedere in tabella, ma non ci sono quei valori della configuration_key.
    Mi puoi aiutare?
    Saluti.

  7. Lisa Guarnieri Lisa Guarnieri ha detto:

    Eccomi di nuovo. Il problema precedente l’ho risolto. Avevo una record con configuration_key = “” sulla tabella configuration…. Non so perche’.
    Adesso il modulo si è installato bene, ma viene presentato il banner solo se la ZW_COOKIE_LAW_ENABLED è false, mentre non viene visualizzato quando è true, come dovrebbe essere. Inoltre se clicco su Accetta non va via il banner. Ho visto che è successo anche ad altri, come si risolve questo problema?
    Grazie di tutto. Saluti.

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      Ho individuato il problema! Nel codice di esempio da utilizzare per far comparire il banner, nel file tpl_main_page, non ho inserito il controllo sull’enabled e quindi eseguiva sempre gli altri controlli, il banner risultava visibile anche se il modulo era disattivato ma il resto non funzionava (pulsante incluso) perchè appunto disattivato.
      La soluzione consiste nel correggere il codice da inserire nel file tpl_main_page.php

      // BEGIN ZW_COOKIE_LAW 1 of 1
      if((ZW_COOKIE_LAW_ENABLED == 'true') && ((!isset($_COOKIE[ZW_COOKIE_LAW_COOKIE_NAME]) || ($zw_cookie_content->{ZW_COOKIE_LAW_COOKIE_NAME}!='OK')))) {
        require($template->get_template_dir('zw_cookie_law.php',DIR_WS_TEMPLATE, $current_page_base,'common'). '/zw_cookie_law.php');
      }
      // END ZW_COOKIE_LAW 1 of 1
      

      Più tardi correggerò anche il file readme. In ogni caso, si tratta di un bug presente a modulo disattivato. A modulo attivo tutto funziona correttamente. Lisa, se a modulo attivo non vedi più il banner, è per via del fatto che ti si è settato il cookie di consenso e quindi il banner sparisce. Se elimini i cookie, vedrai ricomparire il banner, per poi sparire nuovamente (dopo due pagine viste se il plugin è settato come di default in modalità second_page).

  8. diego ferrante diego ferrante ha detto:

    Buongiorno,
    ho installato il plugin seguendo le istruzioni (uso zen cart 1.5.1) ma anch’io come altri utenti ho riscontrato il problema per cui se tengo settato il parametro di attivazione su “false” vedo la barra, mentre su “true” non mi compare nulla.
    Di per se sarebbe anche una situazione aggirabile, unitamente a questo però avviene che quando clicco sul pulsante “ACCETTO” la barra colorata non scompare.
    Da cosa può dipendere?
    L’url del mio sito è http://grossich.stokker.it/
    Grazie se mi può essere d’aiuto.

  9. c s c s ha detto:

    Non capisco dove ho commesso l’errore, nell’home page mi visualizza:

    // BEGIN ZW_COOKIE_LAW 1 of 1 if((ZW_COOKIE_LAW_ENABLED == ‘true’) && ((!isset($_COOKIE[ZW_COOKIE_LAW_COOKIE_NAME]) || ($zw_cookie_content->{ZW_COOKIE_LAW_COOKIE_NAME}!=’OK’)))) { require($template->get_template_dir(‘zw_cookie_law.php’,DIR_WS_TEMPLATE, $current_page_base,’common’). ‘/zw_cookie_law.php’); } // END ZW_COOKIE_LAW 1 of 1

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      Il codice in questione è php, quindi va messo all’interno dei tag php. Se questa risposta non ti chiarisce l’errore commesso e la soluzione, allora è meglio se ti rivolgi a qualcuno che conosca la differenza tra php e html, altrimenti rischi di combinare guai.

  10. Salvo Branca Salvo Branca ha detto:

    Salve, uso zencart 1.3.9h ho copiato i file nell’ftp e poi ho proceduto ad installare il file sql (quello per la versione 1.3.9), senza fare la modifica nel file tpl_main_page.php sono andato a vedere se il sito lato client era visibile e mi è preso il panico, non si apriva nulla di nulla pagina bianca senza errori, allora ho installato il file uninstall.sql ed è tornato visibile.
    Per evitare ulteriori problemi e sopratutto danni da parte mia chiedo se devo fare anche la modifica sul file tpl_main_page.php prima di vedere qualcosa a video?
    Grazie

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      Ciao, come descritto nel file readme, la procedura di installazione prevede come primo passo l’esecuzione delle query sql, poi il caricamento dei files. A questo punto non dovrebbe verificarsi nessun errore, anche senza aver modificato il file tpl_main_page.php, quindi presumo ci sia un problema specifico con la tua installazione, che però non ho modo di dirti quale possa essere. Controlla nella cartella cache se c’è qualche file myDebug-xxxxxx.log e verifica cosa contiene quello creato quando hai ottenuto pagina bianca. Se non lo trovi, ripeti l’installazione e se ottieni pagina bianca, vai a controllare in questa cartella e verifica l’ultimo file creato (ovviamente nel frattempo non devi fare altro e si spera non arrivino altri visitatori che facciano creare altri files (per altri motivi)). Qui trovi ulteriori informazioni sul tool di debug: http://www.zen-cart.com/content.php?124-blank-page

      • Salvo Branca Salvo Branca ha detto:

        Ciao Paolo, ho fatto ciò che mi hai detto ed ottengo 3 file del tipo che mi hai detto ma credo che interessi solo quello che ci sta nel terzo di tali 3 file che è:

        [19-Jun-2015 17:07:12] PHP Fatal error: Call to undefined function: json_encode() in /web/htdocs/www.magazzinomusicale.com/home/includes/functions/extra_functions/zw_cookie_law.php on line 85

        Mi sai dare indicazioni a tal proposito, grazie.

  11. Luigi Mario Luigi Mario ha detto:

    Carissimo Paolo,

    Ho riscontrato 2 volte lo stesso errore con 2 siti diversi,
    mi capita, installando la pach install.sql del plugin zw cookie law di ricevere un errore che dice

    “ERROR: impossibile inserire configuration_key “” in quanto già esistente

    È successo su http://www.gustodisicilia.com zc 1.5.1 e su http://www.dilegami.it zc 1.5.4 entrambi con template stilissimo modificato solo nel css e in alcuni file di lingua.

    Alla fine, caricando tutti i file specifici, li pannello configurazione >configura cookie law è vuoto mentre su strumenti > gestione cookie law mi fa caricare tutte le sezioni dell’informativa. Poi so frontend appare il banner (su fondo trasparente) e il pulsante accetta non fa nulla.

    Su gustodisicilia.com ho installato:
    • Simple Google Analytics
    • Minorderamount
    • login_box_1.5_it
    • ckeditor-for-zencart

    sull’altro soltanto
    • ckeditor-for-zencart
    potrebbe essere un conflitto con quest’ultimo modulo?

    Rimango in attesa.
    Buona domenica
    Luigi Mario Torti

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      L’errore in questione dipende dalla presenza nel db, nella tabella di configurazione, di uno o più record in cui il campo configuration_key è vuoto. Ciò non dovrebbe accadere e quindi bisogna cercare di capire da cosa dipenda (non dal plugin dei cookie, era già presente in precedenza (è possibile che ci sia data e ora di creazione del record e quindi si può provare a risalire)).

      Esistono due soluzioni:
      1) Eliminare tutti i record che hanno quel campo vuoto, ma ovviamente bisogna assicurarsi che non ci siano effetti negativi
      2) Eseguire le query di installazione direttamente tramite phpmyadmin (o qualunque altra interfaccia di gestione del db), ovviamente provvedendo ad aggiungere a tutti i nomi delle tabelle il prefisso nel caso la propria installazione di Zen Cart ne usi uno. Se si procede manualmente, via phpmyadmin o simile, è comunque necessario eseguire le query tutte contemporaneamente perchè sono scritte in modo tale che alcuni valori inseriti dipendono dalle query eseguite in precedenza e quindi se si eseguono separatamente i valori in questione non saranno disponibili per le query successive.

      Ricordo che eseguendo le query contenute in install.sql vengono eliminate e re-inserite le tabelle e i record necessari, quindi eventuali dati inseriti in admin (solo quelli in relazione al plugin ovviamente) vengono eliminati.

      • Luigi Mario Luigi Mario ha detto:

        Risolto!!!

        Buongiorno Paolo,

        Sono andato nella tabella db configuration > configuration_key
        al suo interno tutta la configurazione del sito, a questo punto sono andato all’ultimo record (ce ne sono quasi 700) ed era in effetti “VUOTO”, l’ho eliminato e poi install.sql di cookie_law si e installata perfettamente.
        lavoro di 3 minuti.
        Grazie e complimenti per il pacchetto… davvero potente e accurato.
        Luigi Mario Torti

  12. Salve
    a me funziona tutto alla perfezione. Ora mi chiedo quale sia il modo di inserire il link “Informativa sui cookies” nel box laterale link importanti?
    grazie a chiunque saprà essermi d’aiuto 😉
    il mio sito è questo lerbavogliogiocattoli.it

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      Ciao, i link nel box informazioni sono gestibili nel file /includes/modules/sideboxes/information.php. Se il tuo template si chiama MIOTEMPLATE, controlla se per caso esiste già il file /includes/modules/sideboxes/MIOTEMPLATE/information.php. Se c’è, allora devi intervenire su questo, se invece non c’è, allora copia il primo e mettilo nel secondo percorso e poi modifica quest’ultimo.

      Per inserire il link, basta aggiungere il seguente codice dove ritieni più opportuno:

      $information[] = '<a href="index.php?main_page=zw_cookie_law" rel="nofollow">Cookie Policy</a>';
      

      Non ho usato una define al posto di Cookie Policy perchè potrebbe anche andare bene scritta così in più lingue. Se si preferisce diversamente basta usare una define e tradurla come meglio si ritiene.

  13. Ste Debardi Ste Debardi ha detto:

    CIao a me non funziona. Nel back end quando inserisco o modifico il testo non lo mantiene (Quello in inglese si)
    Sul sito compare solo il tasto “Accetto” Senza nessun testo.

    Cosa ho sbagliato?
    Grazie

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      Ciao, ma hai installato normalmente e ti sei ritrovato in questa situazione? Perchè questo problema è dovuto al fatto che nella tabella dove sono contenuti i valori che non ti salva, il record relativo all’italiano non è presente. Poichè il sistema lavora su update e non su insert, non salva ciò che immetti perchè l’update non trova il record da aggiornare.
      Come mai non ci sia questo record, non so dirtelo, forse non hai fatto una normale installazione? Perchè in una normale installazione, il plugin rileva le lingue presenti e crea un record di default per ciascuna di esse.
      In effetti questo è un bug che risolverò, perchè in caso si installi una nuova lingua dopo aver installato questo plugin, ci si troverebbe nella situazione che descrivi.
      Al momento, per risolvere puoi accedere alla tabella zw_cookie_law_texts e copiare il record della lingua inglese, inserendo come id_lingua l’id della lingua italiana.

  14. giovanni marzano giovanni marzano ha detto:

    Ma questo plug in non funziona con la versione 1.3.7 di ZC?

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      Non ti so dire, non è stato testato, anche se dubito. La versione 1.3.7 è comunque troppo vecchia, dovresti valutare il passaggio all’ultima disponibile.

      • giovanni marzano giovanni marzano ha detto:

        Ciao,

        ho provato ad installare il modulo sula versione 1.3.7 di Zen Cart ma mi da’ lo stesso problema di Salvo Branca cioe’ blank page della home page del sito.
        Ho visto il file di debug creato nella directory cache e’ mi da lo stesso errore cioe’:
        PHP Fatal error: Call to undefined function json_encode() in c:\programmi\apache group\Apache\htdocs\piu\includes\functions\extra_functions\zw_cookie_law.php on line 85

        Qualche suggerimento?

        Grazie

        • giovanni marzano giovanni marzano ha detto:

          Aggiornamento:
          il problema dell’errore json_decode() dipende da una versione vecchia di php, dalla versione 5.2.0 in poi e’ incluso nel PHP e non da piu’ quell’errore e quindi la home page viene visualizzata.
          Cliccando pero’ sul tasto ok relativo al cookie ottengo un warning sulla funzione: json_decode() expects parameter 1 to be string, object given in ./home/includes/init_includes/init_zw_cookie_law.php on line 19

          Non capisco perche’ visto che il JSON dovrebbe essere installato.
          Suggerimenti?

          Grazie.

  15. Luca Rossato Luca Rossato ha detto:

    Buonasera,
    ho installato il plugin seguendo le istruzioni (uso zen cart 1.5.1), mi capita, installando la pach install.sql ricevo un errore che dice
    “ERROR: impossibile inserire configuration_key “” in quanto già esistente.
    Andando nella tabella db configuration > configuration_key, non vedo nessun campo vuoto.
    Ho installato come componenti aggiuntivi “SITEMAP XML” e “CKEDITOR”
    Come posso risolvere?
    L’url del mio sito è:
    http://www.internetbazar.it

    Grazie in anticipo.
    Luca

  16. jirby erpes jirby erpes ha detto:

    Salve ho appena scaricato il suo plugin lo provato su un web che sto creando http://www.aziendaagricolacampanito.com
    funziona tutto tranne che il banner non scompare dopo che stato premuto il pulsante. Ho letto tutti commenti
    e ho inserito // BEGIN ZW_COOKIE_LAW 1 of 1
    if((ZW_COOKIE_LAW_ENABLED == ‘true’) && ((!isset($_COOKIE[ZW_COOKIE_LAW_COOKIE_NAME]) || ($zw_cookie_content->{ZW_COOKIE_LAW_COOKIE_NAME}!=’OK’)))) {
    require($template->get_template_dir(‘zw_cookie_law.php’,DIR_WS_TEMPLATE, $current_page_base,’common’). ‘/zw_cookie_law.php’);
    }
    // END ZW_COOKIE_LAW 1 of 1

    ma continua a non funzionare potrebbe darmi un aiuto

  17. Carmelo Nicolosi Carmelo Nicolosi ha detto:

    Ciao a tutti, grazie per il lavoro fatto.
    Ho installato il componente zw-cookie-law su zen-cart v. 1.5.4
    Vi chiedo una cosa forse un pò banale:
    Cliccando sul tatto accetta dell’informativa breve sul footer del sito vengo reindirizzato su
    http://www.miosito/sito_zencart/sito_zencart/web3
    dovrebbe essere
    http://www.miosito/sito_zencart/web3
    Dove devo intervenire?

    • Paolo De Dionigi Paolo De Dionigi ha detto:

      Ciao, quel pulsante è il submit di un form che invia ad un url che effettua le operazioni necessarie sui cookie e poi effettua il redirect.

      Il file in questione è (a partire dalla root di zen): zw_assets/zw_cookie_law/code/zw_cookie_consent_ajax.php

      Così su due piedi non saprei dirti quale sia il problema perchè non mi è mai stato segnalato da nessuno, la cosa migliore è fare del debug sul file in questione cercando di capire dove si verifichi l’errore. Sono pochissime le righe coinvolte:

      if (sizeof($_POST['zw_come_from']) > 0) {
      	$origin_href = (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . base64_decode($_POST['zw_come_from']);
      } else {
      	if(sizeof($_GET['cf']) > 0) {
      		$origin_href = (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . base64_decode($_GET['cf']);
      	}
      	else {
      		$origin_href = zen_href_link(FILENAME_DEFAULT);
      	}
      }
      zen_redirect($origin_href);
      • Carmelo Nicolosi Carmelo Nicolosi ha detto:

        grazie per la risposta, il file in questione è diverso da quello postato da te, manca una parte
        0) {
        $origin_href = (($request_type == ‘SSL’) ? HTTPS_SERVER : HTTP_SERVER) . base64_decode($_POST[‘zw_come_from’]);
        } else {
        $origin_href = zen_href_link(FILENAME_DEFAULT);
        }
        zen_redirect($origin_href);

        ?>

        • Paolo De Dionigi Paolo De Dionigi ha detto:

          Hai ragione scusa, ho inserito il codice di una versione successiva, mai arrivata ad una versione stabile per assenza di reale interesse, che prevedeva la gestione del consenso tramite scroll e quella parte in più era proprio relativo a quello.

          Il file è comunque quello e la parte ‘incriminata’ è questa:

          if (sizeof($_POST['zw_come_from']) > 0) {
            $origin_href = (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . base64_decode($_POST['zw_come_from']);
          } else {
            $origin_href = zen_href_link(FILENAME_DEFAULT);
          }
          zen_redirect($origin_href);
          
        • Carmelo Nicolosi Carmelo Nicolosi ha detto:

          ho risolto il problema in questo modo
          if (sizeof($_POST['zw_come_from']) > 0) {
          // $origin_href = (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . base64_decode($_POST['zw_come_from']);
          $origin_href = zen_href_link(FILENAME_DEFAULT);
          } else {
          $origin_href = zen_href_link(FILENAME_DEFAULT);
          }
          zen_redirect($origin_href);

          Non so se è un metodo buono ma funziona nel mio caso.
          Grazie ancora per l’aiuto.
          P.S.: per inserire il codice in questi messaggi ho usato questo link che formatta il codice per essere inserito in un messaggio blog: http://www.blogcrowds.com/resources/parse_html.php

  18. Carmelo Nicolosi Carmelo Nicolosi ha detto:

    Scusami, volevo inserire il codice del file ma viene troncato. 🙁

  19. Luca Rossato Luca Rossato ha detto:

    Buonasera, ho un sito creato con zencart versione 1.5.1.ITA
    tempo fa avevo installato il plugin cookie law e funziona perfettamente.
    Ieri ho provato a disinstallarlo (ho eseguito il file uninstall.sql) e ho cancellato tutti i file presenti nella cartella files.
    Non riuscivo più a vedere alcuna pagina del sito.
    A questo punto tramite Filezilla ho eliminato tutti i file e le cartelle del sito ed ho caricato una copia (avevo fatto un backup di tutto prima di iniziare a disinstallare).

    Ora funziona a metà, nel senso che se vado su una pagina prodotto mi dà errore 404 Not Found The requested URL was not found on this server.
    Dal lato admin invece tutto funziona perfettamente.

    Mi potete aiutare?
    Grazie in anticipo
    Luca

  1. 1 Giugno 2015

    […] prossimo post vedremo come il plugin sia stato realizzato in modo da rispettare i dettami della norma, sempre […]

Lascia un commento