سؤال

هل يمكن لشخص ما أن ينصح لماذا عند إضافة عميل عبر برنامج نصي خارجي يتم تجاهل قيم موقع الويب والمتجر ويتم تعيين العميل دائما إلى" المسؤول "وليس إلى"الموقع الرئيسي".

ليس لدي سوى 1 موقع و 1 مخزن داخل بلدي مثيل الماجنتو ولكل منها معرف 1

الرمز الخاص بي أدناه:

    $customer = Mage::getModel("customer/customer");
    $customer   ->setWebsiteId(1)
                ->setStore(1)
                ->setFirstname('John')
                ->setLastname('Smith')
                ->setEmail('john@smith.com')
                ->setPassword('password')
                ->setGroupId('1');
    try{
        $customer->save();
    }
    catch (Exception $e) {
        Zend_Debug::dump($e->getMessage());
    }
هل كانت مفيدة؟

المحلول

بدلا من استخدام setStore() هل يمكن أن يكون استخدام setStoreId()

$customer = Mage::getModel('customer/customer');

$email = 'john@smith.com';
$storeId = 1;

$website_id = Mage::getModel('core/store')->load($storeId)->getWebsiteId();
$customer->setWebsiteId($website_id);
$customer->setStoreId($storeId);
...

نصائح أخرى

لديك خطأ في التعليمات البرمجية الخاصة بك،

giveacodicetagpre.

ما سبق لا يأخذ قيمة عدد صحيح لمعرف المتجر، فإنه يأخذ مثيل للمتجر الحالي، على سبيل المثال

giveacodicetagpre.

في قضيتك، أتصور أنه سيكون،

giveacodicetagpre.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى magento.stackexchange
scroll top