গ্রাহকরা প্রোগ্রামক্রমে ইস্যু তৈরি করছেন


13

আমি কিছু গ্রাহককে প্রোগ্রামক্রমে তৈরি করতে চাই এবং ওয়েবসাইট আইডি সংরক্ষণ করতে চাইলে আমার একটি সমস্যা হয়।

আমার একাধিক ওয়েবসাইট আইডি রয়েছে:

0 => admin
1 => germany
2 => hungary
3 => romania

এটি আমার কোড:

 $customer = Mage::getModel("customer/customer");
 $customer->setWebsiteId(3);
 $customer->setStoreId(1);
.....
 $customer->save();

আমি যখন কোনও গ্রাহককে সঞ্চয় করি তখন ওয়েবসাইটAdmin থেকে নির্বাচিত মানটি ড্রপ ডাউন পাই । ওয়েবসাইট আইডিতে আমি যেই মান দেব (যেমন 12321) আমি Adminমান পেয়েছি । কেন?

ধন্যবাদ।

উত্তর:


0

আপনি এই কোড দিয়ে চেষ্টা করতে পারেন:

//If you know store id
$storeId = 'id';
$store = Mage::getModel('core/store')->load($storeId); // Mage::app()->getStore($storeId);
if($store && $store->getId()) {
    $customer = Mage::getModel("customer/customer");
    $customer->setStore($store);
}


//->setStore reference:app/code/core/Mage/Customer/Model/Customer.php
/**
 * Set store to customer
 *
 * @param Mage_Core_Model_Store $store
 * @return Mage_Customer_Model_Customer
 */
public function setStore(Mage_Core_Model_Store $store)
{
    $this->setStoreId($store->getId());
    $this->setWebsiteId($store->getWebsite()->getId());
    return $this;
}

আমি এই ত্রুটি বার্তা পাবেন: মারাত্মক ত্রুটি: Uncaught Mage_Core_Exception যখন ওয়েবসাইট সুযোগ ব্যবহার গ্রাহক ওয়েবসাইট আইডি উল্লেখ করা আবশ্যক
Attila Naghi

1
আপনি ইমেল দ্বারা গ্রাহক বোঝার চেষ্টা করছেন? এই সমস্যা উল্লেখ করা হয়: অ্যাপ্লিকেশন / কোড / কোর / পুরোনো যাদুকর / গ্রাহক / মডেল / রিসোর্স / Customer.php: 212 + + 0- অনুগ্রহ করে পড়ুন: inchoo.net/magento/programming-magento/...
osrecio

0

এটি আমার কোডের নমুনা এবং আপনাকে ওয়েবসাইট আইডি 2 বার সেট করতে হবে। আমাকে জিজ্ঞাসা করবেন না কেন। হয়তো কেউ আপনাকে আরও ভাল সমাধান দেবে তবে এটি আমার পক্ষে কাজ করে:

 $customer->setWebsiteId(1);
 $customer->setStoreId(5);
 $customer->setData(.....)

 $customer->save();

 $customer->setConfirmation(null);
 $customer->setWebsiteId(1); 
 $customer->save();

0

এই কোড ব্যবহার করে দেখুন

$websitesArray = array(0 => "admin",
                1 => "germany",
                2 => "hungary",
                3 => "romania");
foreach($websitesArray as $websiteId => $websiteName) {
    $website = Mage::getModel('core/website')->load($websiteId);
    if($website->getId()) {
        $customer = Mage::getModel("customer/customer");
        $customer->setWebsiteId($website->getId())
                    ->setFirstname('John')
                    ->setLastname('Doe')
                    ->setEmail('jd1@ex.com')
                    ->setPassword('somepassword');

        try{
            $customer->save();
        }
        catch (Exception $e) {
        }       
    }
}

বিঃদ্রঃ :

অ্যাডমিন দিকে যান এবং ফিল্ডে System > configuration > Customers > Customer Configuration > Account Sharing Optionsসেট করুনPer WebsiteShare Customer Accounts

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.