0

我现在正在用 wordpress 做一些网页设计。

我创建了一个带有 Web 表单的页面,客户可以在其中输入一些信息(姓名、电子邮件、发票号码、价格、gst 等)。

我使用了一个名为联系表单 7 的插件来提供网络表单,当用户输入他们的所有信息时,该插件会通过电子邮件将 html 格式的发票发送到我的电子邮件地址,其中的字段由短代码占据,这些短代码具有来自网络的价值形式。

例如,在我的发票表的名称字段中,我输入 [first-name],用户输入的名称会在发票中通过电子邮件发送给我。

我需要找到一种方法来计算其他两个字段的值,我的发票表单上的一个字段称为总计,它应该等于用户在 Web 表单上输入的 [gst]+[price]。

我试图寻找一个可以将其参数作为其他简码值的 php 简码函数,但没有任何运气。我之前从未真正使用过 php,因此不知道如何编写。

我设法找到了这个,这似乎不起作用,因为当电子邮件通过时,我看到的只是 [sumsc][gst] [price][/sumsc]

    add_shortcode('sumsc','sumsc_func');
    function sumsc_func( $atts, $content = null ) {
        $sum=0;
        $content=str_replace(array("  ","] [","]["),array(" ","][","]|["),$content);
        $codes=explode("|",$content);
        foreach($codes as $code){
            $sum+=do_shortcode($code);
        }
        return " <div>".$sum."
    </div>";    
    }

任何帮助将不胜感激,我还需要能够将短代码值乘以某个数字的功能。例如,价格需要除以 0.6 才能得出发票上出现的数量。谢谢!

4

1 回答 1

1

在表单中创建一个隐藏字段,说它有一个唯一的 id,说它是 fields_sum。

在该页面上使用 jquery 并捕获表单提交事件。获取这些字段的值,对其求和并将结果设置为 fields_sum 字段。然后在你想要的地方使用字段简码。jQuery 脚本类似于(算法)

$(document).ready(function(){
$("your_form_id").submit(function(e){

// get value of field one
// get value of field two
// sum them
// set sum to the hidden field

});
});

我希望这有效并且足以获得这样的解决方案。

于 2013-06-03T14:22:19.090 回答