Jump to content

No actualiza productos despues de importación CSV


Recommended Posts

Buenos dias amigos, tengo un pequeño o gran problema según se mire, tenemos un proveedor por el cual realizamos la importación de sus productos a traves de tareas cron y no hay ningún problema en este sentido, el problema esta que hasta que no accedemos a Parametros avanzados --- Rendimiento --- Borrar cache y la borramos no aparecen los nuevos articulos importados, os dejo capturas de nuestro apartado de Rendimiento por si nos podeis ayudar. 

Prestashop 1.7.8 

Un Saludo 

1.png

2.png

3.png

4.png

Link to comment
Share on other sites

Hola @cavinformaticaonline

La caché se puede borrar mediante el administrador o mediante consola.

Si los procesos que estas automatizando usan el CRON de Linux, puedes usar algo como este script que me hice para borrar las caches desde un script "sh"

php bin/console cache:clear --no-warmup
rm -rf var/cache/*

Lo añades al final de tu script de carga y listos.

Espero te sirva

Link to comment
Share on other sites

57 minutes ago, Manuel_GT said:

Hola @cavinformaticaonline

La caché se puede borrar mediante el administrador o mediante consola.

Si los procesos que estas automatizando usan el CRON de Linux, puedes usar algo como este script que me hice para borrar las caches desde un script "sh"

php bin/console cache:clear --no-warmup
rm -rf var/cache/*

Lo añades al final de tu script de carga y listos.

Espero te sirva

Los creo a traves del Cpanel 

Link to comment
Share on other sites

Hola,

sin ver el código del cron es difícil decir cual sería la mejor formula para solventarlo. Pero creo que ese cron no está importando los productos usando los modelos objetos de prestashop correctamente y sus métodos, ya que ellos se encargan de gestionar automáticamente la caché asociada.

Te propongo 3 opciones, de mas optima a menos:

1ª Opción:

Ejemplo muy muy sencillo:

$product = new Product();
$product->name = [1 => 'Nombre del producto', 2 => 'Product name']; // Por idioma
$product->id_category_default = $idCategoria;
$product->price = 100.99;
$product->save();

2ª Opción:

Otro método es lo que comenta el compañero "Manuel_GT" limpiar cache, bien como ya te ha propuesto, o dentro del mismo cron añadir después de importar:

// Clear smarty modules cache
Tools::clearCache();

3ª Opción:

o limpiar todas las cache:

// Clear both Smarty and Symfony cache
Tools::clearAllCache();

Lo ideal es limpiar solo la cache necesaria, ya que esto supone que el servidor luego tiene que volver a generarla.

Saludos.

Link to comment
Share on other sites

9 minutes ago, ChrlS said:

Hola,

sin ver el código del cron es difícil decir cual sería la mejor formula para solventarlo. Pero creo que ese cron no está importando los productos usando los modelos objetos de prestashop correctamente y sus métodos, ya que ellos se encargan de gestionar automáticamente la caché asociada.

Te propongo 3 opciones, de mas optima a menos:

1ª Opción:

Ejemplo muy muy sencillo:

$product = new Product();
$product->name = [1 => 'Nombre del producto', 2 => 'Product name']; // Por idioma
$product->id_category_default = $idCategoria;
$product->price = 100.99;
$product->save();

2ª Opción:

Otro método es lo que comenta el compañero "Manuel_GT" limpiar cache, bien como ya te ha propuesto, o dentro del mismo cron añadir después de importar:

// Clear smarty modules cache
Tools::clearCache();

3ª Opción:

o limpiar todas las cache:

// Clear both Smarty and Symfony cache
Tools::clearAllCache();

Lo ideal es limpiar solo la cache necesaria, ya que esto supone que el servidor luego tiene que volver a generarla.

Saludos.

La secuencia cron que tengo en mi cpanel es esta:

 

curl "https://juguetedefresa.com/module/elegantaleasyimport/import?id=1&secure_key=91mxP28P88x0"

 

Un abrazo 

Link to comment
Share on other sites

hace 5 minutos, cavinformaticaonline dijo:

La secuencia cron que tengo en mi cpanel es esta:

 

curl "https://juguetedefresa.com/module/elegantaleasyimport/import?id=1&secure_key=91mxP28P88x0"

 

Un abrazo 

Pues a ese módulo de "elegantaleasyimport" habría que revisar si hace bien el uso de los modelos de objetos de prestashop cuando los importa. O añadir el código de limpiar cache justo en la parte correspondiente tras finalizar de importar .

Como es un módulo de pago, si lo tienes aun con licencia... yo contactaría con el desarrollador para que te diese soporte.

saludos

Edited by ChrlS (see edit history)
Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...