2014-09-05 6 views
5

Ich habe csv in which have lot of email is exit, wollen Sie assign those email to newsleter subscription list. Wer das will ich tun ....Wie zu importieren Newsletter Abonnenten Benutzer csv in Magento

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

+0

ist es nicht –

+0

hinzufügen import.php Datei in Stammverzeichnis Arbeits auch csv-datei und csv-dateiname ist subscribers.csv und innerhalb code ist der gleiche check –

+0

sind sie single speichern ya multi store –

Antwort

7

Als krupal Patel hatte nicht genug Ruf für Post Antwort so, statt ihm i Antwort gesetzt worden.

Folgen Sie diesen Schritt

Schritt 1 hinzufügen import.php file in Magento root directory dieser Code

 <?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"; 

Schritt 2Add subscribers.csv Datei in Magento root directory

Schritt 3 sein soll:Run import.php file in Stammverzeichnis wie (http://domainname.com/import.php)

Schritt 4: dem Server-Betreiber Menü springen Newsletter > Newsletter Subscribers and finally you subscriber user CSV file import

Besuchen Link für code = http://krupalpatel92.blogspot.com/2014/09/magento-newsletter-subscriber-csv-file.html

Cheer up krupal patel

+0

Krupal Patel, bitte akzeptieren Sie diese Antwort. –

+0

Ich habe diesen Code für den Import von Benutzer-E-Mails mit Status aktualisiert. Aktualisieren Sie auch CSV-Dateiformat –

+0

Goood .. krupal .... –