当Cookie不存在时,我们正在尝试在页面加载时开发自定义模式弹出窗口。 除了模板之外,一切都很好。我们在子主题中复制并修改了模板,弹出窗口效果很好!但是,我们对模板的修改影响了我们之前所有的模式弹出窗口。
我们想要扩展模板以在我们的模式弹出窗口中专门使用它,而不影响其他模板。
让我告诉你,
这是原始模板,位于: / vendor / magento / module-ui / view / base / web / templates / modal
<aside
class="modal-<%= data.type %> <%= data.modalClass %>
<% if(data.responsive){ %><%= data.responsiveClass %><% } %>
<% if(data.innerScroll){ %><%= data.innerScrollClass %><% } %>"
data-role="modal"
data-type="<%= data.type %>"
tabindex="0">
<div data-role="focusable-start" tabindex="0"></div>
<div class="modal-inner-wrap"
data-role="focusable-scope">
<header class="modal-header">
<% if(data.title){ %>
<h1 class="modal-title"
data-role="title"><%= data.title %></h1>
<% } %>
<button
class="action-close"
data-role="closeBtn"
type="button">
<span><%= data.closeText %></span>
</button>
</header>
<div
class="modal-content"
data-role="content"></div>
<% if(data.buttons.length > 0){ %>
<footer class="modal-footer">
<% _.each(data.buttons, function(button) { %>
<button
class="<%= button.class %>"
type="button"
data-role="action"><span><%= button.text %></span></button>
<% }); %>
</footer>
<% } %>
</div>
<div data-role="focusable-end" tabindex="0"></div>
,这是我们修改后的模板,位于以下位置: / app / design / frontend / {{vendor}} / {{child-theme}} / Magento_Ui / web / templates / modal
<aside
class="modal-<%= data.type %> <%= data.modalClass %>
<% if(data.responsive){ %><%= data.responsiveClass %><% } %>
<% if(data.innerScroll){ %><%= data.innerScrollClass %><% } %>"
data-role="modal"
data-type="<%= data.type %>"
tabindex="0">
<div data-role="focusable-start" tabindex="0"></div>
<div class="modal-inner-wrap <%= data.name %>"
data-role="focusable-scope">
<div
class="modal-content"
data-role="content"></div>
<div class="go-to-product-container">
<a class="go-to-product" href="<%= data.buttonurl %>">Ir al producto</a>
</div>
</div>
<div data-role="focusable-end" tabindex="0"></div>
我们需要使用自定义模板,而不会影响网站上其余的弹出窗口。在互联网上进行了如此多的搜索之后,没有关于如何在Magento 2上扩展模版/为模态创建子模板的解释。
如果你们能帮我解决这个问题,我将永远感激不已。