2011-10-27 40 views
13

Tôi đang cố gắng đặt lại mật khẩu tài khoản khách hàng thử nghiệm cho cửa hàng của mình, khi tôi nhấp vào liên kết quên mật khẩu, yêu cầu tôi cung cấp địa chỉ email khi nhập địa chỉ email hợp lệ liên kết đặt lại mật khẩu được gửi đến thư của bạn & nó đang chuyển tiếp cho tôi một liên kết trong email khi tôi nhấp vào liên kết đang hiển thị lỗi Fatal error: Call to a member function setCustomerId() on a non-object in /var/www/websites/jivity/app/code/core/Mage/Customer/controllers/AccountController.php on line 587, Làm cách nào tôi có thể khắc phục lỗi này ?? & Thanx trước.Magento: Liên kết đặt lại mật khẩu không hoạt động

+0

Phương pháp đó là gì? Dòng 587 của tôi trong bản phân phối 1.5.1.0 không gọi setCustomerId() – jprofitt

+0

Bạn đang sử dụng phiên bản Magento nào? –

+0

Tôi đang sử dụng phiên bản mới nhất của magento i, e. magento-1.6 –

Trả lời

19

Chỉ cần cố định cùng một vấn đề trên một nâng cấp 1.6.1.0 trang web - Bạn đang sử dụng hết hạn customers.xml, diff bản sao của bạn và app/design/frontend/base/default/layout/customer.xml để tìm những thay đổi mà không cần làm

+0

điều này giải quyết vấn đề của tôi cảm ơn u cảm ơn u rất nhiều ...... –

+1

Sử dụng cùng một sửa chữa trên một trang web 1.7.0.2. Cảm ơn! – miles

13

Nếu bất cứ ai đang tự hỏi, trong phiên bản mới (1.6 ++) của tệp customer.xml bit sau đã được thêm vào:

<customer_account_resetpassword translate="label"> 
    <label>Reset a Password</label> 
    <remove name="right"/> 
    <remove name="left"/> 

    <reference name="head"> 
     <action method="setTitle" translate="title" module="customer"> 
      <title>Reset a Password</title> 
     </action> 
    </reference> 
    <reference name="root"> 
     <action method="setTemplate"> 
      <template>page/1column.phtml</template> 
     </action> 
     <action method="setHeaderTitle" translate="title" module="customer"> 
      <title>Reset a Password</title> 
     </action> 
    </reference> 
    <reference name="content"> 
     <block type="customer/account_resetpassword" name="resetPassword" template="customer/form/resetforgottenpassword.phtml"/> 
    </reference> 
</customer_account_resetpassword> 
+0

Cảm ơn, điều này đã khắc phục sự cố cho tôi trên Magento 1.6.2 – Yeroon

+0

Bài đăng tuyệt vời. cảm ơn rất nhiều. Đã lưu thời gian của tôi .... – rbncha

+0

Cố định mỏ trên Mangento 1.9.1 (từ 1.5) – RPDeshaies

0

Tôi đã thử ở trên nhưng không hoạt động. Từ một mẹo khác mà tôi đã thấy, tôi đã thêm cùng một mã ở trên vào 'mageb2bextensionscustomer.xml' trong cùng một thư mục bố cục, xóa tất cả bộ nhớ cache và nó hoạt động ngay bây giờ. :-)

+2

Đó là vì tiện ích của bạn đang ghi đè xml khách hàng mặc định. –

1

vui lòng thêm mã bên dưới vào tệp costomer.xml [app/design/frontend /// layout/customer.xml] của bạn.

<customer_account_resetpassword translate="label"> 
     <label>Reset a Password</label> 
     <remove name="right"/> 
     <remove name="left"/> 

     <reference name="head"> 
      <action method="setTitle" translate="title" module="customer"> 
       <title>Reset a Password</title> 
      </action> 
     </reference> 
     <reference name="root"> 
      <action method="setTemplate"> 
       <template>page/1column.phtml</template> 
      </action> 
      <action method="setHeaderTitle" translate="title" module="customer"> 
       <title>Reset a Password</title> 
      </action> 
     </reference> 
     <reference name="content"> 
      <block type="customer/account_resetpassword" name="resetPassword" template="customer/form/resetforgottenpassword.phtml"/> 
     </reference> 
    </customer_account_resetpassword> 

Nó làm việc

2

Nếu bạn đang ở trong Magento 1.9.1 Dưới đây là một giải pháp mà làm việc cho tôi.

Nếu chủ đề của bạn không bao gồm bất kỳ cài đặt cấu hình tùy chỉnh hoặc bố trí cụ thể mà bạn một cách an toàn thể xóa customer.xml của bạn (hoặc chỉ cần đổi tên để customer1.xml) tập tin nằm ở /app/design/frontend/default/<your_theme_package>/<your_theme_name>/layout/customer.xml

Nếu bạn xóa Magento tệp này sẽ tải các tùy chọn cấu hình mặc định (với các bản cập nhật) từ chủ đề Magento mặc định của nhà máy. /app/design/frontend/base/default/layout/customer.xml

Hãy nhớ tuôn/làm mới cấu hình Magento của bạn thông qua khu vực quản lý, điều này sẽ buộc các tập tin customer.xml được nạp lại.

+0

Điều tương tự cũng hợp lệ đối với Magento 1.7 sau khi một bản cập nhật vá lỗi phê bình (6788) bắt đầu đưa ra vấn đề này trong một số cài đặt. – versvs

0

Luôn sao lưu các tệp của bạn!

Tôi đã tìm thấy cách nhanh chóng để giải quyết vấn đề: Tôi đã thay thế tùy chỉnh customer.xml được chủ đề của tôi sử dụng trong app/design/frontend/your_theme_package/your_theme_name/layout/ bằng tệp trong app/design/frontend/base/default/layout/customer.xml.

Bây giờ nó hoạt động tốt.

Các vấn đề liên quan