Як я можу включити хід оформлення замовлення на сторінку експрес-огляду Paypal?


16

Гаразд, я розбив це на кроки, і ви можете бачити, де я застряг:

Крок 1 - змінити номер стовпця

Сторінка експрес-огляду PayPal (наша сторінка, на яку PayPal відправляє покупця назад, щоб переглянути та нарешті подати своє замовлення) - це одна стовпець. Звичайно, ми можемо змінити кількість стовпців, змінивши макет у файлі користувальницького модуля xml:

<paypal_express_review>
   <!-- maybe other references here -->
   <reference name="root">
      <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
   </reference>
   <!-- maybe other references here -->
</paypal_express_review>

Крок 2 - видаліть код, що обмежує вміст стовпця правої частини

Тепер стовпець праворуч буде присутній, але він буде порожнім - це через наступний рядок у app/design/frontend/base/default/layout/paypal.xml- який ми видаляємо:

<remove name="right"/>

Крок 3 - додайте вміст у XML-файл

Очищення кешу та оновлення сторінки покаже вміст стовпця праворуч за замовчуванням. Тож якщо звідти ми додаємо наступні рядки (запозичені у app/design/frontend/base/default/layout/checkout.xml) у файл користувальницького модуля xml, ми знову придумуємо порожній.

<reference name="right">
    <action method="unsetChildren"></action>
    <block type="page/html_wrapper" name="checkout.progress.wrapper" translate="label">
        <label>Checkout Progress Wrapper</label>
        <action method="setElementId"><value>checkout-progress-wrapper</value></action>
        <block type="checkout/onepage_progress" name="checkout.progress" before="-" template="checkout/onepage/progress.phtml"/>
    </block>
</reference>

Я знаю, що це правильний метод отримання вмісту в цьому стовпці, оскільки я можу це зробити за допомогою спеціального шаблону, наприклад

<reference name="right">
    <action method="unsetChildren"></action>
    <block type="page/html" name="custom" template="custom_module/custom.phtml" />
</reference>

Трохи не впевнені в block typeцьому. Також мені відомо, що в такому блоці app/design/frontend/base/default/layout/checkout.xmlне використовується:

<block type="checkout/onepage_progress" name="root" output="toHtml" template="checkout/onepage/progress.phtml">
    <block type="checkout/onepage_payment_info" name="payment_info">
        <action method="setInfoTemplate"><method></method><template></template></action>
    </block>
</block>

Як ви бачите, мої знання щодо цього досить обмежені - через більше відсутність документації, ніж бажання (хоча цей сайт був цікавий).

Я мушу наголосити, що це аж ніяк не є недосяжним, тому, якщо хтось пропонує пропозиції чи на жаль, шукане рішення чи будь-яке розуміння на вашій посаді є гідним та найкращим чином. Велике дякую

Відповіді:


1

Так, це можливо.

введіть тут опис зображення

Це те, що вам потрібно для її досягнення.

У вашому module.xmlвидалити всі посилання <remove name="right" />з paypal_express_reviewручки і оновити шаблон так само , як ви робили в кроці 1 і 2.

Далі ви можете додати блок обгортки checkout.progress у rightпосилання. Цей блок можна знайти вapp/design/frontend/base/default/layout/checkout.xml

<reference name="right">
            <action method="unsetChildren"></action>
            <block type="page/html_wrapper" name="checkout.progress.wrapper" translate="label">
                <label>Checkout Progress Wrapper</label>
                <action method="setElementId"><value>checkout-progress-wrapper</value></action>
                <block type="checkout/onepage_progress" name="checkout.progress" before="-" template="checkout/onepage/progress.phtml">
                    <block type="checkout/onepage_progress" name="billing.progress" template="checkout/onepage/progress/billing.phtml"></block>
                    <block type="checkout/onepage_progress" name="shipping.progress" template="checkout/onepage/progress/shipping.phtml"></block>
                    <block type="checkout/onepage_progress" name="shippingmethod.progress" template="checkout/onepage/progress/shipping_method.phtml"></block>
                    <block type="checkout/onepage_progress" name="payment.progress" template="checkout/onepage/progress/payment.phtml"></block>
                </block>
            </block>
        </reference>

Як тільки ви перейдете на paypal/express/review/сторінку, ви повинні побачити, що є порожній стовпець? Чому ви не блокуєте показ? Якщо ви переглядаєте сторінку в правому стовпці, ви повинні побачити opactity: 0;. Оновіть свої стилі, opacity:1;і блок повинен бути там.

введіть тут опис зображення

Єдине питання, яке може виникнути, - це отримання посилань на зміну для роботи, оскільки вони очікують, що контейнер вже буде там. Якщо ні, ви можете подивитися на створення власного шаблону для прогресу та видалення посилань. Сподіваюсь, це допомагає: D

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.