gpt4 book ai didi

magento - 在 javascript 中检索 Magento 商店的基本 url

转载 作者:行者123 更新时间:2023-12-02 14:07:29 24 4
gpt4 key购买 nike

从 JavaScript 内部确定 Magento 商店的基本 url 的最佳方法是什么?

我正在开发一个可重用的扩展程序,它需要知道 javascript 中商店的基本 url,以便执行一些 Ajax 调用。人们会认为像

这样的属性
Mage.baseUrl 

可以使用,但我找不到它。

另一种方法是将基本网址添加为一些内联 javascript,但我找不到任何有关如何以编程方式添加内联 javascript(仅外部 js 文件)而不更改模板的信息。

最佳答案

默认情况下,此信息不会(可靠、稳定)通过 Javascript 公开。您将需要通过添加到布局中的自定义 block 自行公开它。最简单的方法是

  1. 通过主题的 local.xml 文件添加 block

  2. 为上述 block 添加模板到您的主题

要通过 local.xml 文件将 block 添加到布局中,类似这样的内容就足够了

<default>
<reference name="root">
<block name="my_custom_js_block">
<action method="setTemplate">
<template>my_custom_js_block/extra-js.phtml</template>
</action>
</block>
</reference>
</default>

然后将以下文件夹和文件添加到您的主题

app/design/frontend/default/your_theme/template/my_custom_js_block/
app/design/frontend/default/your_theme/template/my_custom_js_block/extra-js.phtml

此时,您已经有了一个将在每个页面上呈现的phtml模板文件。您可以添加任何您想要的 JavaScript 变量。我喜欢类似

的模式
#File: app/design/frontend/default/your_theme/template/my_custom_js_block/extra-js.phtml
<?php
$h = Mage::helper('core');
$info = new stdClass();
$info->base_dir = Mage::getBaseDir();
?>
<script type="text/javascript">
var my_custom_js_block_info = <?php echo $h->jsonEncode($info); ?>;
</script>

(未经测试,我的头顶代码,但应该可以工作)

关于magento - 在 javascript 中检索 Magento 商店的基本 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8936450/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com