Prestashop

Sync Data

Personalizzazione dei dati del prodotto #

In Prestashop è possibile aggiungere la maggior parte degli attributi semplici direttamente dall’Admin, ma è anche possibile creare attributi personalizzati direttamente nel codice.

Invio di attributi semplici dall’Admin di Prestashop #

Nota: questa funzione funziona solo a partire dalla versione 5.3.2._ Consultare questa guida per vedere come aggiornare.

Nell’Admin di Prestashop, iniziare andando alla sezione seguente:

Prestashop 1.7: Catalogo -> Attributi e caratteristiche Prestashop 1.6 : Catalogo -> Attributi dei prodotti

Qui è possibile vedere tutti gli attributi disponibili:

Individuare i nomi degli attributi che si desidera aggiungere.

Andare quindi a Moduli e servizi -> Impiegato -> Configura.

In Impostazioni di sincronizzazione dei dati , digitare gli attributi Nomi separati da virgola in Campi aggiuntivi per i prodotti. È anche possibile attivare campi come Include Product Features per importare tutte le caratteristiche dei prodotti in Clerk. Entrambi i campi sono disponibili sia nella versione 1.6 che nella versione 1.7 di Prestashop:

Dopo aver implementato gli attributi, andare su my.clerk.io->Data e fare clic su Start New Data Sync nell’angolo in alto a destra.

Se gli attributi che si desidera inviare sono già disponibili come parte dei dati dei prodotti configurabili/raggruppati nell’amministrazione di PrestaShop, possono essere facilmente sincronizzati sull’ultima versione del plug-in. Appariranno come child_attribute, ad esempio child_color, child\skus ecc.

Invio di attributi personalizzati #

Gli attributi personalizzati, che sono più avanzati, possono essere aggiunti attraverso i file del modulo in FTP.

Questo file gestisce gli attributi dei prodotti:

moduli->clerk->controllori->fronte->prodotto.php

Ogni attributo ha il suo fieldHandler, che viene usato per estrarlo, nella funzione _construct.

È sufficiente aggiungere qui il proprio attributo, con la seguente sintassi:

$this->addFieldHandler('CLERK_ATTRIBUTE_NAME',function($product){
return PRESTASHOP_LOGIC;
});

Dove CLERK_ATTRIBUTE_NAME definisce il nome che si vuole che abbia in Clerk.io e PRESTASHOP_LOGIC è il codice per estrarre l’attributo da Prestashop.

Infine, includere i nuovi attributi nella funzione getDefaultFields() in fondo al file.

Scegliere quali prodotti importare #

È possibile configurare il modulo PrestaShop in modo che invii tutti i prodotti a Clerk.io, anziché solo quelli vendibili come fa di default.

Per fare ciò, iniziare a trovare questo file in FTP:

moduli->clerk->controllori->fronte->prodotto.php

Nella funzione getJsonResponse() individuare questa riga:

$products = $product->getProducts($this->getLanguageId(), $this->offset, $this->limit, $this->order_by, $this->order, false, false);

Basta cambiare l’ultimo parametro da true a false.

Se si esegue questa operazione, si consiglia di aggiungere anche un attributo extra a questo file, che indica quando un prodotto non è vendibile, in modo da poterlo mostrare nel proprio Design.

Supponendo di creare un attributo chiamato è vendibile, che può essere vero o falso, si può usare in questo modo in Designs:

{% raw %}
{% if product.is_saleable %}
   <div class="in-stock">In Stock</div>
{% else %}
  <div class="not-in-stock">Not In Stock</div>
{% endif %}
{% endraw %}

Infine, andare su my.clerk.io -&gt; Dati e fare clic su Avvia nuova sincronizzazione per importare i nuovi dati.

Disattivare la sincronizzazione degli ordini #

Dopo che la prima sincronizzazione dei dati è stata eseguita con successo, è possibile disattivare la sincronizzazione degli ordini da Prestashop, in quanto il monitoraggio delle vendite viene effettuato dal modulo.

Per disattivare la sincronizzazione degli ordini, andare su Migliora => Moduli => Gestione moduli

Scorrere fino in fondo e trovare il modulo Clerk tra gli altri. Fare clic su Configura:

Scorrere fino al campo denominato Impostazioni per la sincronizzazione dei dati e fare clic su SÌ accanto al testo Disattiva la sincronizzazione degli ordini:

Scorrere fino alla fine della pagina e premere Salva:

Le modifiche apportate diventeranno effettive.