改变WooCommerce的设置

时间:2011-11-02 作者:input

我正在使用最近发布的WooCommerce 我的电子商务网站的插件。在WooCommerce设置中,未列出我国的货币。所以我必须通过在woocommerce.phpadmin-settings.php 文件

出现更新时会出现问题。只要我更新插件,文件就会被替换为新的文件,其中我手动添加的代码会被删除,而且我所在国家的货币也不会被列出。

如何确保更新不会替换我手动编码的货币列表?

1 个回复
最合适的回答,由SO网友:EAMann 整理而成

您有两种选择:

联系Woo,您可以直接联系WooThemes(插件的作者),并要求他们将您所在国家的货币添加到列表中,以确保您的更改是永久性的。

使用过滤器,或者记住所有内容都已过滤。Woo正在使用woocommerce_currency_symbol 筛选输入woocommerce.php. 要将货币添加到该列表中,您可以使用:

function add_my_currency_symbol( $currency_symbol, $currency ) {
    if($currency == "USD") {
        $currency_symbol = \'$\';
    }
    return $currency_symbol;
}
add_filter( \'woocommerce_currency_symbol\', \'add_my_currency_symbol\', 10, 2 );
每当Woo调用它们的函数时,它们都会在返回货币符号之前通过过滤器。您只需挂接该过滤器,检查货币是否与自定义值匹配,如果匹配,则返回自定义符号。我在这里用美元作为例子,但你需要什么就用什么。

要将您的货币添加到设置页面,您将连接到woocommerce_currencies 过滤器:

function add_my_currency( $currencies ) {
    $currencies["USD"] = \'US Dollars ($)\';

    return $currencies;
}
add_filter( \'woocommerce_currencies\', \'add_my_currency\', 10, 1 );
Woo正在他们的选项面板中添加一系列货币。所做的一切就是查看数组,添加自定义货币,然后返回它,使函数可以正常运行。

要使用这些过滤器,您必须编写第二个插件。给它一个唯一的名称,并像其他插件一样激活它。当您更新WooCommerce时,只要他们不更改其过滤器名称,您就不应该丢失任何自定义项。

结束

相关推荐

Integrating plugins in themes

我找不到讨论这个的帖子,所以开始这篇。我目前正在为3.1+开发一个相当复杂的主题,我的意思是,除了样式和常规的前端功能之外,我还在主题的核心包括后端和前端的插件。因此,为了使这一点更有条理,我将其分为三个问题:集成插件是一种常见的做法吗</自动更新主题/插件有什么影响/复杂之处</在不破坏现有功能的情况下,包含每个插件的最佳方式是什么