Debug di PrestaShop

Come eseguire il debug di errori in Prestashop

Debug può essere un compito arduo, perché con così tante versioni di prestashop moduli, terzi e diversi piattaforme di hosting possono essere un compito arduo. Questo tutorial è quello di verificare che il nostro negozio non contengono errori e se avessi, tenta di Difficoltà o determinare il problema di cercare aiuto in
il forum.

  1. Il primo passo nel debug è enable debug si porta prestashop. Questo ci mostrerà gli errori di front office che potrebbero avere il nostro negozio. Per attivare il debug, possiamo modificare il file config/config.inc.php e mettere sulla display_errors e il vero PS_DEBUG_SQL (per gli errori nelle query di database), lasciando il file come indicato di seguito:

ini_set ('display_errors', 'on');

define ('_PS_DEBUG_SQL_', true);

In ps 1.5/1.6, è il file config/defines.inc.php e PS_DEV_MODE impostata su true

Se (! defined('_PS_MODE_DEV_'))
define ('_PS_MODE_DEV_', false);


Abbiamo anche un modulo gratuito che ti permette di modificare questi parametri da back office:


http://Catalogo-onlinersi.net/en/Back-Office-PrestaShop-modules/304-debug-PrestaShop-Module.html?search_query=debug&Results=2

  1. Debug abilitato, bisogna visitare il sito dallafront office per i messaggi di errore possibili. È ideale per navigare le sezioni tutti i miei prodotti, contatto, ecc... Se hai qualcosa non funziona, ci rivolgiamo solo se la sezione dove sappiamo che è il problema per vedere l'errore. Gli errori che troviamo sono molti. Vedremo alcuni comuni.
    1. Problemi con Smarty - smarty motore è quello utilizzato per templatesprestashop. Come prestashop sta cambiando e la versione aggiornata, è normale che i modelli devono anche farlo e includono variabili e nuovo codice. In molti casi un modello creato per prestashop 1.4.3 non funziona bene in PS PS 1.4.1 o 1.4.6.2 per esempio. Questo solo sa cosa debug e attivando il modello viaggiando per gli errori. Un tipico caso di errore è il seguente:

      Nel messaggio di errore, possiamo vedere che è dentro il file themes/Perfume/address.tpl e si riferisce a una variabile non riconosciuta. Più probabile è che il file non corrisponde con address.tpl versione di prestashop che abbiamo installato. Per risolvere questo problema, possiamo sostituire quel file con il modello di file predefinito prestashop e vedere se l'errore è stato corretto. Vale la pena ricordare che se il file.
      è stato personalizzato, tale personalizzazione e si perde per rifarlo.
    2. Molte volte quando si modifica il file CSS o TPL, non vediamo modifiche. Questo è perché è attivata la protezione della cache. A forza di riscrivere la cache dopo la modifica di TPLfile e CSS, andiamo a preferenze/prestazioni o parametri/prestazioni avanzate e forzare la compilazione e disabilitare la cache:

      Abbiamo anche un modulo gratuito che pulisce la cache smarty senza dover modificare queste opzioni. Il modulo è il chiaro smarty in tutte le versioni di ps:
      http://Catalogo-onlinersi.net/en/Back-Office-PrestaShop-modules/93-Clear-Smarty-PrestaShop-Module.html?search_query=Clear+Smarty&Results=1

      È inoltre possibile eliminare i file manualmente via ftp da strumenti/smarty/compile o tolos/smarty_v2/compilazione (non eliminare index. php) o della cache/smarty/compilazione.
    3. Molte volte non vedrete eventuali messaggi di errore, solo una pagina vuota. In questo caso, possiamo andare al menu del tuo browser e trovare l'opzione di visualizzazione origine. Dal codice sorgente troviamo l'errore. Sarà sicuramente di qualche modulo, e che non riesce a compilare il modello di tutti e quindi non non vedere il front office.


      Codice sorgente:

      Alla fine del file dove possiamo vedere il problema:

      Prestabook.tpl fileappartiene a un modulo, che probabilmente non è compatibile con la nostra versione. In questi casi è meglio guardare al modulo creatore per darci una versione per il nostro negozio e spegnere il modulo per evitare errori.
    4. Molte volte abbiamo problemi nell'archivio, ma il debug ci non mostra alcun errore di prestashop. In questi casi gli errori possono provenire da java script/jquery in conflitto con qualche codice nel nostro negozio. Per verificare questo, utilizzare google chrome (si può fare in firefox con firebug anche o qualsiasi altro browser). Andiamo al nostro sito e attivare la visualizzazione di debug (click destro, ispezionare elemento):



      E poi clicchiamo sulla console del pulsante Visualizza:


      Se nessun Errori appaiono a noi, noi siamo bravi. Dobbiamo esaminare l'intero sito e intervenire per aggiungere prodotti per carrello, cambiare utente e gestione dati, eseguire un ordine di prova e così via. Ad esempio, mostriamo qui un errore:


      Non rilevata ReferenceError: mclosetime non è definito Alla fine della linea, vediamo che il file è l'errore "product.php:238", facendo clic su tale file ci mostrerà esattamente dove l'errore:



      Come possiamo vedere, è relativo al blocco delle lingue, probabilmente con un codice personalizzato:


      Questo è perché molti modelli modificati moduli e possono portare il conflitto con il codice di default di prestashop. Dovremmo vedere se abbiamo una cartella denominata moduli modello, e all'interno di una cartella con il nome del modulo che causa il problema. Noi possiamo rinominare la cartella per caricare il modulo prestashop originale e vedere se il problema è risolto.
      Questo deve anche tener conto se vogliamo modificare un modulo e non si vede alcun cambiamento, perché se il modello dispone di moduli personalizzati all'interno del nostro tema/moduli, abbiamo bisogno di modificare i file, non gli originali che sono in prestashop/moduli.
    5. Un altro punto di errore comune è il limite di memoria su alcuni server. Questo può causare errori di molti generi, ma il più comune è che noi non mostrano tutti i moduli, o memoria hanno un messaggio come questo:


      La soluzione a questo problema è quello di aumentare la quantità di memoria disponibile. Con il Debug modulo puoi farlo dal back office

      E mettere la memoria su un valore di 256MB. Tutto dipende dal numero di moduli che usiamo.
      Possiamo anche aggiungere una riga nel config / config.inc.php con memoria valore ini_set ('memory_limit', '256 M');
      Dobbiamo dimostrare a un alto valore e immettere thseguenti numeri (8, 16, 32, 64, 128.256, ecc..) La M è megabyte.
      Se il problema persiste, bisogna contattare il nostro ospite per modificare questi valori per noi.
    6. In nuove versioni Prestashop e alcuni ospiti, avete un file error_log, nel sito principale o nelle sottocartelle, contenente erros come mancante di variabili, librerie, ecc è possibile scaricare e controllare aperto con qualsiasi editor di testo per trovare gli errori.

Carrello 0 Carrello della spesa

Nessun prodotto

Spedizione gratuita! spedizione
$0.00 Totale

Check-out