Questions tagged «customer»

表示与客户模块有关的问题

3
向客户添加自定义属性
我们需要一种简单的方法来将属性添加到客户记录中,而该属性不能由客户或管理员编辑,只能以编程方式进行。本质上,我们有一个与Magento耦合的ExpressionEngine网站。 我们通过网络服务进行身份验证,并希望将从身份验证中获取的一些JSON存储到客户的记录中,并在每次登录时进行更新。 如果他们在结帐流程中更改信息(例如送货地址),我们还将希望修改数据。然后,我们将按照当前当前对每个订单的处理将数据发送回我们的Web服务。 因为我们现在正在使用MageWorx的“自定义选项”扩展程序中的自定义属性在每个产品上存储一些JSON,这很难做到吗? 我在此处http://www.silksoftware.com/magento-module-creator/使用了Online Module Creator,但不确定模块安装后如何修改或检索该值。 我在哪里可以学习如何编写扩展名来做到这一点?



6
使用观察者将列添加到客户网格或覆盖客户网格
我面临在客户网格上添加一列并在该列中显示值的问题。 这是我一直试图显示此列的观察者代码:- if ($block->getType() == 'adminhtml/customer_grid') { $customer = $observer->getCustomer(); $collection = Mage::getResourceModel('customer/customer_collection'); $block->addColumnAfter('mobile', array( 'header' => 'Mobile No.', 'type' => 'text', 'index' => 'mobile', ), 'email'); } 这将添加该列,但在该列下不显示任何值。


1
Magento 2 minicart,欢迎消息,其他在客户登录后禁用页面缓存的情况下不起作用
使用Magento 2.0.4缓存,更具体地说,启用页面缓存,一切正常。 如果我禁用它,请清除cookie,然后以客户身份登录,而不是minicart中的产品。 欢迎消息并不正确。我必须从产品页面将产品添加到购物车才能看到迷你车。比起结帐,我的国家/地区没有显示在地址摘要中(送货地址已添加到我的帐户中)。 我已经调试完毕,看来问题出在: module-customer/view/frontend/web/js/customer-data.js。Cookie private_content_version已设置在中module-page-cache/view/frontend/web/js/page-cache.js并在中使用customer-data.js。参见customerData::reload功能。 在禁用页面缓存的情况下,不会像该功能dataProvider::getFromServer()那样从服务器加载数据。 当禁用页面缓存时,cookie private_content_version不在其中(不在页面之外执行page-cache.js)。但是cookie section_data_ids只有'*'和'messages'=>为空(false或null)。 启用页面缓存后private_content_version,将section_data_ids具有并带有哪些键和值: *: null cart: 123 compare-products: 123 customer: 123 directory-data: 123 last-ordered-items: 123 multiplewishlist: 123 review: 123 wishlist: 123 在启用页面缓存的情况下登录后,在客户仪表板上,还有2个其他的ajax请求加载数据: http://test.localhost/customer/section/load/?sections=&update_section_id=false&_=123 http://test.localhost/customer/section/load/?sections=directory-data&update_section_id=false&_=123 这些包含具有客户特定数据和目录数据的json对象,例如所有国家和地区。通过这些呼叫,在结帐时,地址摘要将显示国家/地区名称。请参阅:module-customer/view/frontend/web/js/sections-config.js 和module-checkout/view/frontend/web/js/view/shipping-address/address-renderer/default.js,函数getCountryName。 这是Magento 2错误还是我搞砸了?谢谢


3
为什么Magento在结帐时重新保存现有的客户地址?
在结帐过程中,即使客户从下拉菜单中选择了现有地址,该customer_address实体也会被重新保存。任何想法是为了什么? 更新: 它从Mage_Checkout_Model_Type_Onepage::saveOrder执行以下代码的位置开始: $service = Mage::getModel('sales/service_quote', $this->getQuote()); $service->submitAll(); 这submitAll将Mage_Sales_Model_Service_Quote::submitOrder执行以下命令: $transaction->save(); 此方法循环遍历quote(?)的所有对象并保存它们。 更新: 最令人作呕的是他们正在为客户拥有的所有地址进行此​​操作。因此,如果您的访客在通讯录中保存了10个地址,那么所有这些地址都将在结帐时重新保存。不要怀疑为什么它是Magento中最消耗资源的部分。


2
从后端在前端自动登录
请参阅以下情形。 我有一些自定义模块,允许前端用户对某些自定义实体执行某些操作。(细节不是很重要)。 要求管理员应该能够使用客户帐户(没有密码)在前端登录,并能够为客户执行这些操作。 由于您不能使用后端的前端会话,并且我不想为前端创建永久的自动登录链接,因为这可能是一个很大的安全漏洞,这就是我到目前为止所做的。 为客户实体添加一个空属性。(叫它login_key) 在客户编辑页面的后端添加一个按钮,该按钮重定向到管理页面,在该页面中生成一个随机字符串并将其保存在属性中login_key。 在同一操作中,我将管理员重定向到这样的前端URL autologin/index/index/customer_id/7/login_key/ajkshdkjah123123(在上一步中生成的值)。 在前端网址中,如果客户ID与login_key特定客户匹配,则我在会话中设置了客户对象(如已登录)并删除了login_key该对象,因此该网址将来将无法使用。 这可以正常工作。我的意思是,我以所选客户的身份登录,并且用于自动登录的链接第二次不起作用。 不利的一面是,如果2个管理员大约同时单击“自动登录”按钮,则一个人将无法登录,但这是可以接受的风险。 我主要担心的是,这也可能是一个(不是那个)重大的安全问题。有人可以看到这种方法有问题吗?还是建议一个更好的? 可以忽略客户帐户可以由网站分隔的事实。这并不重要,也可以轻松管理。

4
如何检查客户是否已订阅新闻通讯
我需要检查客户是否订阅了新闻快讯。目前,我正在使用此代码,但未返回任何内容: if (Mage::getSingleton('customer/session')->isLoggedIn()) { $status = Mage::getSingleton('customer/session')->getCustomer()->getIsSubscribed(); echo $status; die(); } 这什么也没给。任何想法如何使它工作?

6
Magento 2:如何在注册表中显示地址字段?
我想在客户注册表格中显示地址字段(以保存为默认帐单地址)。我知道如何在Magento 1中进行操作。但是我对Magento 2感到震惊。在此之前有人做过吗? 像magento 1中一样的任何xml文件更新 <customer_account_create> <reference name="customer_form_register"> <action method="setData"><key>show_address_fields</key><value>1</value></action> </reference> </customer_account_create>

3
以编程方式创建客户
我想以编程方式创建一些客户,并且在保存网站ID时遇到问题。 我有多个网站ID: 0 => admin 1 => germany 2 => hungary 3 => romania 这是我的代码: $customer = Mage::getModel("customer/customer"); $customer->setWebsiteId(3); $customer->setStoreId(1); ..... $customer->save(); 当我保存一个客户时,我Admin从网站下拉列表中选择了值。无论我给网站ID(如12321)赋予什么价值,我都得到了Admin价值。为什么呢 谢谢。

2
客户是否可以使用客户编号而不是电子邮件地址登录
我想创建一个使用分配的客户编号而不是其电子邮件地址的登录页面。在单独的eComms平台上,我的业务设置方式是,他们使用客户编号访问其帐户,因为他们是一个帐户的多个客户经理。我为他们创建帐户,然后分配一个客户编号,然后将其用于登录并输入密码。 任何帮助将不胜感激。

3
客户无法登录
我刚刚迁移了我的网站。但是我有一个问题。 我的客户无法登录他们的帐户。单击登录页面上的登录时。http://www.mywebsite.com/customer/account/login/应该登录他们的帐户,但它会重定向同一页面。 我是magento的新手。请帮助我如何解决?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.