Как получить переменную $ static_token из файла managewishlist.tpl в Prestashop 1.6.1.x - PullRequest
0 голосов
/ 19 апреля 2020

Я использую следующие две строки для создания кнопки «Купить» внутри файла managewishlist.tpl (в папке моих модулей темы):

{capture}add={$product.quantity|intval}&id_product={$product.id_product|intval}{if isset($product.id_product_attribute) && $product.id_product_attribute}&ipa={$product.id_product_attribute|intval}{/if}{if isset($static_token)}&token={$static_token}{/if}{/capture}
<a class="btn btn-default ajax_add_to_cart_button add-to-cart-wishlist-button" href="{$link->getPageLink('cart', true, NULL, $smarty.capture.default, false)|escape:'html':'UTF-8'}" data-id-attribute="{$product.id_product_attribute}" data-id-product="{$product.id_product|intval}" data-minimal_quantity="{$product.quantity|intval}" title="{l s='Add to cart' mod='blockwishlist'}"><span>{l s='Buy' mod='blockwishlist'}</span></a>

... и переменная $ static_token равна по-видимому, не доступны для шаблона.

1 Ответ

0 голосов
/ 19 апреля 2020

Первоначально я задавал этот серьезный вопрос, чтобы продолжить работу над своим проектом, но я понял это, поэтому решил поделиться этим решением.

В / modules / blockwishlist / managewishlist. php файл - вам нужно добавить следующую строку:

    $context->smarty->assign(array('static_token' => Tools::getToken(false))); /* make $static_token available in tpl */

непосредственно перед этой строкой:

    $action = Tools::getValue('action');
...