Carritos abadonados

Tema en 'Soporte General' iniciado por Juls, 25/6/14.

Etiquetas:
  1. Juls

    Juls Miembro

    37
    1
    8
    Buenas a tod@s
    Tengo un problema con magento.. he estado mirando y los carritos abandonados se deberían de borrar automáticamente cuando la fecha de validez del carrito está activada. El caso es que yo tengo configurado mi magento 1.6.1 para que los carritos tengan una validez de 30 días, pero no me los borra...
    Alguien me podría orientar de en donde buscar el fallo por favor??

    Gracias!!
     
  2.  
    Comunidad Magento orgullosamente patrocinada por el hosting y vps magento de FactoriaDigital.com.
  3. santibm

    santibm Miembro

    151
    12
    18
    Hola Juls!

    Estas seguro de que la configuración que comentas afecta los carros abandonados mostrados en el backend?! Creo la configuración que comentas afecta a cuanto tiempo dura el carro en la cuenta del cliente, otros comentan el mismo problema que indicas y hablan de soluciones a medida o modulos!

    Si encuentras una solución sencilla compartela!!

    saludos
     
  4. Juls

    Juls Miembro

    37
    1
    8
    Según todos los manuales y entradas que he estado leyendo, la configuración es la que comento.. y se supone que todos los días debería de borrar esos carritos... La solución que he visto es totalmente manual... entrar en la tabla sales_flat_quote y quitarlos a piñon.... por eso busco alguien que sepa algo del tema para solucionarlo o alguien que sepa de algún módulo que lo haga

    Gracias
     
  5. santibm

    santibm Miembro

    151
    12
    18
    Parece que esa es la configuración, pero resulta que un carro de un cliente no registrado nunca cambia de is_active=1 a =0, aquí hay mas datos:
    http://stackoverflow.com/questions/...rt-to-be-abandoned-wheres-that-time-limit-set

    Con lo cual la configuración que comentas, borra los carros abandonados de clientes (no invitados), ya que en el caso de clientes identificados si que cambia esa variable a 0 cuando el cliente se desconecta.

    Como decia antes, tienes que hacerte la "solución", aqui describen el problema con mas detalle:
    http://www.magentocommerce.com/boards/viewthread/53981/P15/

    Y aqui el script final que surge de ese foro:
    https://gist.github.com/mystix/2568084

    Ojo, con ese script sobreescribes una funcion del archivo (no el archivo entero):
    app/code/core/Mage/Sales/Model/Observer.php

    saludos
     
  6. Juls

    Juls Miembro

    37
    1
    8
    Lo primero muchas gracias!!
    Los link que me pones ya lo hice ayer.. y nada de nada... mi problema es con todos los carritos, los de clientes y los de invitados.... porque is_active siempre está a 1...
     
  7. santibm

    santibm Miembro

    151
    12
    18
    Hola Juls! no hay de que!

    En la ultima solución con el codigo de github para reemplazar la funcion de magento si que veo que busca los registros con is_active = 1, en esta parte:

    // cleaning expired quotes that have not been converted to orders
    // change by sergii@nmediasystems.com
    foreach ($lifetimes as $storeId=>$lifetime) {
    $lifetime *= 86400;

    // let's be safe and allow double of the expiration period for those quotes that have not been
    // converted to orders
    $lifetime *= 2;

    $quotes = Mage::getModel('sales/quote')->getCollection();
    /* @var $quotes Mage_Sales_Model_Mysql4_Quote_Collection */

    $quotes->addFieldToFilter('store_id', $storeId);
    $quotes->addFieldToFilter('updated_at', array('to'=>date("Y-m-d", time()-$lifetime)));

    // not converted
    $quotes->addFieldToFilter('is_active', 1);

    $quotes->walk('delete');
    }

    No se si llegaste a aplicar este paso! Tambien esta la opcion de crear un script que ejecute la consulta contra la base de datos (sales_flat_quote) y borrar los que tengan una antiguedad determinada!
     
  8. Juls

    Juls Miembro

    37
    1
    8
    Si puse ese código... pero pasa de mi.... al final me decidido por el script....
    Dejo el código por si a alguien algún día le sirve.
    <?php
    $host="servidor";
    $user="usuario";
    $passwd="clave";
    $db="nombre bdd";

    //Creamos la conexión

    $link = mysql_connect($host, $user, $passwd);
    mysql_select_db($db, $link);

    //Aquí calculamos la fecha, le restamos los días que necesitemos y ejecutamos las sentencias
    $fecha = date('Y-m-j');
    $nuevafecha = strtotime ( '-15 day' , strtotime ( $fecha ) ) ;
    $nuevafecha = date ( 'Y-m-j' , $nuevafecha );

    $sql=mysql_query("UPDATE sales_flat_quote SET is_active=0 WHERE updated_at < '$nuevafecha'",$link);
    $sql=mysql_query("DELETE FROM sales_flat_quote WHERE is_active=0",$link);


    ?>
     
    A santibm le gusta esto.
  9. Juls

    Juls Miembro

    37
    1
    8
    Hola...

    Yo sigo a vueltas con el tema de los carritos abandonados... Ahora que he conseguido borrar los antiguos..
    He encontrado una extensión free para notificar por email a los clientes que tienen productos en su cesta (http://www.magentocommerce.com/magento-connect/abandoned-carts-notifications.html) es muy sencilla... Se supongo que automáticamente se ejecuta todos los días a media noche, pero eso es lo que dicen porque yo no puedo configurarlo... El caso es que no se ha ejecutado y quiero meter yo la tarea manualmente en el cronjob para ejecutarla y como nunca he tenido que programar la ejecución de extensiones a mano no se a qué archivo debo llamar.

    Alguien sabe algo acerca del tema??

    Un saludo
     
  10. santibm

    santibm Miembro

    151
    12
    18
    hola!

    Como dices se ejecuta cada dia a las 12 de la noche:

    <crontab>
    <jobs>
    <digitalpianism_abandonedcarts_send>
    <schedule>
    <cron_expr>0 0 * * *</cron_expr>
    </schedule>
    <run>
    <model>abandonedcarts/observer::sendAbandonedCartsEmail</model>
    <model>abandonedcarts/observer::sendAbandonedCartsSaleEmail</model>
    </run>
    </digitalpianism_abandonedcarts_send>
    </jobs>
    </crontab>

    Si tienes el cron de magento configurado en el servidor el de este modulo debería llamarse, pero parece que el modulo tiene unos requisitos que quizá no estes cumpliendo como el uso del Flat Catalog Product!

    Acabo de instalar el modulo en un entorno de desarrollo lo probare y te dire algo mas cuando sepa!

    saludos
     
  11. Juls

    Juls Miembro

    37
    1
    8
    Estas siendo mi salvación!!! Muchísimas gracias
    Yo el cron de magento "creo" que lo tengo bien configurado.. tengo un tarea en cronjob que llama a cron.sh cada 5 minutos.... El resto de cosas configuradas como sitemap o googleshopping si me funcionan automáticamente..
     
  12. Juls

    Juls Miembro

    37
    1
    8
    Hola, el proceso funciona si pulso manualmente el botón de enviar en el backend.. Alguien sabe como puedo saber a que función o php llama para poder ejecutarlo manualmente desde un cron?
     
  13. santibm

    santibm Miembro

    151
    12
    18
    hola! el otro dia lo instale pero no me daba resultados ni pulsando el botón, a ver si lo miro con detalle y lo pongo a funcionar que ahora lo necesito yo tambien :)
     
  14. Juls

    Juls Miembro

    37
    1
    8
    Este es la configuración que tengo yo y al darle al botón si los envía, pero ojo!! sólo una vez, después de que ha sido notificado el cliente ya no se le vuelve a molestar.


    Enable Abandoned Carts Notification Sí No [STORE VIEW]
    Nombre del remitente XXXXXX
    Correo electrónico del remitente xxxx@xxx.es
    Email Template for Unaltered Abandoned Carts CARRITOS ABANDONADOS
    Send Abandoned Cart Email After 2


    Enable Sale Abandoned Carts Notification Sí No
    Email Template for Abandoned Carts Sale CARRITOS ABANDONADOS
    Dry Run Sí No

    Test Email
     
Cargando...

Compartir esta página

Cargando...