首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改woocommerce错误消息

问更改woocommerce错误消息
EN

Stack Overflow用户
提问于 2016-08-21 13:16:43
回答 2查看 13.4K关注 0票数 1

当客户没有填写所有必填字段时,我想更改结帐页面上出现的错误消息的文本。目前,消息会显示每个需要填写的字段,例如:“帐单地址是必填字段,帐单邮政编码是Q必填字段,电子邮件地址是必填字段...”

我只想要一条消息,说“请填写必填字段。”或者,如果需要在“请填写必填字段”中填写多个字段。

有谁知道怎么染这个吗?我的PHP是有限的。谢谢!

EN

回答 2

Stack Overflow用户

发布于 2016-08-22 20:20:45

更新代码:

在function.php文件中添加以下代码:

代码语言:javascript
复制
function my_woocommerce_add_error( $error ) {
    if (strpos($error,'required') !== false) {
        $error = 'Required';
    }
    return $error;
}
add_filter( 'woocommerce_add_error', 'my_woocommerce_add_error' );

并在notices\error.php文件中添加以下代码:

代码语言:javascript
复制
<ul class="woocommerce-error">
    <?php 
    $totalReq = count(array_keys($messages, 'Required')); 
    $removeReq = array_diff($messages, ["Required"]);

    if($totalReq > 1){
        echo '<li>Please fill in all the <strong>required</strong> fields.</li>';
    }else{
        echo '<li>Please fill in the <strong>required</strong> field.</li>';
    }
    ?>
    <?php foreach ( $removeReq as $message ) : ?>
        <li><?php echo wp_kses_post( $message ); ?></li>
    <?php endforeach; ?>
</ul>

希望它能解决您的顾虑:)

票数 3
EN

Stack Overflow用户

发布于 2017-01-30 23:19:51

此代码可以很好地显示一般所需的错误消息。但是在strpos函数中搜索字符串'required‘也依赖于网站的语言,这需要根据你的网站语言来改变。

同样在代码中,错误模板文件需要从

代码语言:javascript
复制
$removeReq = array_diff($messages, ["Required"]);

至

代码语言:javascript
复制
$removeReq = array_diff($messages, array("Required"));

它就像一种护身符。覆盖错误消息的好主意。目前还没有找到解决这个问题的方法,但这真的很好用。

但它适用于所有woocommerce表单,如从我的帐户页面编辑地址等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39061036

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档