2014-09-05 12 views
5

Ho csv in which have lot of email is exit, voglio assign those email to newsleter subscription list. Chi lo farò ....Come importare gli abbonati alla newsletter utente csv in magento

E check how skip for exiting customer because there are already list in newsleter

+0

è che non funziona –

+0

Aggiungi file di import.php nella directory principale anche il file csv e il nome file csv sono subscribers.csv e il codice interno è lo stesso check –

+0

hai un singolo negozio ya multi store –

risposta

7

Come krupal Patel non ha avuto abbastanza reputazione per il post risposta così, invece di ho messo risposta.

Seguire questo passaggio

Fase 1 Aggiungi import.php file in Magento root directory questo codice dovrebbe essere

 <?php 
    $store_id = 1; 
    $csv_filepath = "subscribers.csv"; 
    $csv_delimiter = ','; 
    $csv_enclosure = '"'; 
    $magento_path = __DIR__; 
    require "{$magento_path}/app/Mage.php"; 

    Mage::app()->setCurrentStore($store_id); 
    echo "<pre>"; 
    $fp = fopen($csv_filepath, "r"); 

    if (!$fp) die("{$csv_filepath} not found\n"); 
    $count = 0; 

    while (($row = fgetcsv($fp, 0, $csv_delimiter, $csv_enclosure)) !== false){ 
     if ($count != 0){ 

      $email = trim($row[1]); 
      $type = trim($row[2]); 
      $fname = trim($row[3]); 
      $lname = trim($row[4]); 
      $status = trim($row[5]); 
      $website = trim($row[6]); 
      $store = trim($row[7]); 
      $store_view = trim($row[8]); 

      if (strlen($email) == 0) continue; 
      echo "$email"; 
      $subscriber = Mage::getModel('newsletter/subscriber')->loadByEmail($email); 
      if ($subscriber->getId()){ 
       echo $email . " <b>already subscribed</b>\n"; 
       continue; 
       } 

      Mage::getModel('newsletter/subscriber')->setImportMode(true)->subscribe($email); 
      $subscriber_status = Mage::getModel('newsletter/subscriber')->loadByEmail($email); 

      if ($status == 1){ 
        $subscriber_status->setStatus(Mage_Newsletter_Model_Subscriber::STATUS_SUBSCRIBED); 
        $subscriber_status->save(); 
       }else if($status == 2){ 
        $subscriber_status->setStatus(Mage_Newsletter_Model_Subscriber::STATUS_NOT_ACTIVE); 
        $subscriber_status->save(); 
       }else if($status == 3){ 
        $subscriber_status->setStatus(Mage_Newsletter_Model_Subscriber::STATUS_UNSUBSCRIBED); 
        $subscriber_status->save(); 
       }else if($status == 4){ 
        $subscriber_status->setStatus(Mage_Newsletter_Model_Subscriber::STATUS_UNCONFIRMED); 
        $subscriber_status->save(); 
       } 
       echo $email . " <b>ok</b>\n"; 
      } 

     $count++; 

     } 

echo "Import finished\n"; 

Fase 2Add subscribers.csv file in Magento root directory

Fase 3:Run import.php file nella directory radice Mi piace (http://domainname.com/import.php)

Fase 4: Vai al menu di amministrazione Newsletter > Newsletter Subscribers and finally you subscriber user CSV file import

Visita collegamento per il codice = http://krupalpatel92.blogspot.com/2014/09/magento-newsletter-subscriber-csv-file.html

Coraggio krupal Patel

+0

krupal patel, si prega di accettare questa risposta. –

+0

Ho aggiornato questo codice per l'importazione di e-mail utente con stato. aggiorna anche il formato file CSV –

+0

Goood .. krupal .... –

Problemi correlati