Tôi cố gắng thêm một tùy chọn đăng nhập bổ sung trong quá trình thanh toán. Hiện tại, bạn có tên người dùng / mật khẩu. Tôi muốn thêm hình ảnh nút để đăng nhập thông qua quy trình OAuth (trong trường hợp của tôi là Github).
Tôi đã tìm thấy một cách nhưng đó không phải là cách tốt nhất. Có trong tệp mẫu thanh toán / onepage / login.phtml, một cuộc gọi để lấy một khối con có tên form.additional.info
.
Tôi đã cố gắng chèn khối riêng của mình vào đó theo cách này nhưng nó không hoạt động.
<checkout_onepage_index>
<reference name="form.additional.info">
<block type="core/template" name="login_github_button" as="login.github.button">
<action method="setTemplate" ifconfig="github/config/enabled">
<template>github/customer/login.phtml</template>
</action>
</block>
</reference>
</checkout_onepage_index>
Tôi đã tìm thấy một cách khác giống như được thực hiện bởi mô-đun captcha:
<checkout_onepage_index>
<reference name="checkout.onepage.login">
<block type="core/text_list" name="form.additional.info">
<block type="core/template" name="login_github_button" as="login.github.button">
<action method="setTemplate" ifconfig="github/config/enabled">
<template>github/customer/login.phtml</template>
</action>
</block>
</block>
</reference>
</checkout_onepage_index>
Trong trường hợp này, nó hoạt động NHƯNG hình ảnh xác thực sẽ không được hiển thị. Làm thế nào tôi có thể chèn một số khối vào form.additional.info
khối?
Cảm ơn bạn đã giúp đỡ
CHỈNH SỬA :
Tôi tìm thấy một số lý do tại sao nút không được hiển thị dưới các trường đăng nhập khi sử dụng form.additional.info
phương thức tham chiếu . Nó được hiển thị trong giao diện thanh toán thay thế.
- Khối
form.additional.info
được tạo bởi mô-đun captcha cho khốicheckout.onepage.login
sau đó nó cũng được tạo cho khốicheckout.onepage.billing
- Trong khi tạo khối trong Mage_Core_Model_Layout :: _ GenerBlock (), nó tìm kiếm đối tượng khối cha của khối
login_github_button
. Thay vì tìm một trong sốcheckout.onepage.login
đó, nó tìm thấy một trong những cái mới nhất được tạo :checkout.onepage.billing
. Khối được gắn vào cái cuối cùng này, thay vì đăng nhập một. Sau đó, tôi tìm thấy nút đăng nhập của mình trong chế độ xem địa chỉ thanh toán thay vì chế độ xem đăng nhập !!! - Nếu tôi nhận xét vào tệp captcha.xml bố cục, phần về
checkout.onepage.billing
giải pháp đầu tiên của tôi sẽ hoạt động.
Nó vẫn không ổn nhưng tôi bắt đầu tìm lý do.
<reference name="form.additional.info">
và<depends>
giải pháp trên là nhiều sạch hơn và dễ bảo trì hơn.