如何在帐户地址中添加新字段?

时间:2018-01-21 作者:jahau

在woocommerce插件中,需要在公司名称下添加新字段(例如增值税编号)。实现这一目标最简单/最合理的方法是什么?由于这个小改动,我不想复制模板文件,也不想安装任何插件来避免系统崩溃(如果作者在某个时候阻止更新)。我会投票支持所有提供有用信息的答案:-)谢谢!

4 个回复
最合适的回答,由SO网友:Peter HvD 整理而成

其他人认为你想添加自己商店的增值税号码,但我在上读到你想让客户在创建客户帐户或订单时添加他们的增值税号码。

这当然是可能的,WooCommerce确实有一个完整的机制来加入额外的客户帐户字段。然而,这是非常深入的,不适合胆小的人。我发现这本很棒的教程帮助我掌握了它。它相当长,但它确实会带您浏览每个需要注册其他字段的地方。

https://iconicwp.com/blog/the-ultimate-guide-to-adding-custom-woocommerce-user-account-fields/

希望有帮助

SO网友:benny-ben

要在设置页面(如General)中添加新字段,请尝试在函数中添加以下代码。php(或它所需的文件)。

回调函数需要输出适当的html输入:

function myprefix_setting_callback_function() {

    $value = get_option( \'vat_number_id\' );
    echo \'<input type="text" id="vat_number_id" name="vat_number_id" value="\' . $value . \'" />\';

}
此功能可用于向默认WP设置页面添加额外的设置字段:

function myprefix_settings_register_fields() {

    register_setting( \'general\', \'vat_number_id\', \'esc_attr\' );

    add_settings_field(
        \'vat_number_id\',
        \'<label for="vat_number">\'.__( \'VAT number\' , \'your_theme\' ).\'</label>\' ,
        \'myprefix_setting_callback_function\',
        \'general\'
    );

}
add_filter( \'admin_init\', \'myprefix_settings_register_fields\' );
在这里,您可以找到adding settings fields.

在主题(header.php、footer.php等)中,可以使用:

<?php echo get_option( \'vat_number_id\' ); ?>
注意:为了将位置更改为创建的输入字段,必须小心使用jQuery。

SO网友:BenoitLussier

如果不知道公司名称在哪里(例如在header.php中)以及它是如何编码的,很难判断。

假设它位于标题中。php,您可以使用echo和标准html将其添加到php中。

您还可以将widgetized区域添加到标头,方法是将其添加到标头。php文件:

<?php if ( !function_exists(\'dynamic_sidebar\') || !dynamic_sidebar("Name of Widgetized Area") ) : ?>
这就是功能。php:

if ( function_exists(\'register_sidebar\') ) register_sidebar(array( \'name\' => \'Name of Widgetized Area\',

\'before_widget\' => \'<div class = "widgetizedArea">\',
\'after_widget\' => \'</div>\',
\'before_title\' => \'<h3>\',
\'after_title\' => \'</h3>\',

) );

您可以删除“before widget”之前的空格,没有它,我无法正确显示代码。您可以看到对此的完整解释here.

此外,如果修改主题的php文件,我强烈建议您创建一个子主题,否则您的更改可能会在下次主题更新时丢失。

SO网友:jahau

这就是我想要的:https://tutel.me/c/programming/questions/43335335/woocommerce+customer+billing+address

不过,我需要对字段进行重新排序(增值税编号应该在公司名称之后,而不是在底部)。你知道如何做到这一点吗?谢谢

p、 我对你的答案投了赞成票,因为这些答案也是有效的(我还没有足够的声誉让你看到效果)。

结束

相关推荐