我需要将管理区域(后期编辑)中的自定义字段格式化为货币,即:12.000,00,用户只需键入数字、和。自动的我四处寻找,没有成功。。任何人感谢
我试图在admin中使用的将脚本排队的代码是
function enqueue_admin() {
wp_enqueue_script( \'jquery\' ); //adding Jquery to admin. Not sure if is needed or already there
wp_register_script( \'autonum\', THEME_DIR . \'/js/vendor/autoNumeric.js\', array( \'jquery\' ), \'1\', false ); //this is autoNumeric for currency format
wp_enqueue_script( \'autonum\' );
}
add_action( \'admin_enqueue_scripts\', \'enqueue_admin\' );
此外,我不确定是否需要在autoNumeric中将所有$更改为JQuery。js,因为wordpress的兼容性
最合适的回答,由SO网友:Simon Blackbourn 整理而成
如果您想在提交后处理该字段,php的number_format 功能是您所需要的:
$price = number_format( $number, 2, \'.\', \',\' );
但如果您想更改键入数字时的显示方式,请尝试
jQuery autoNumeric
SO网友:s_ha_dum
Autonumeric是一个jQuery插件,它看起来需要编写,这样您就不必交换$
.
我认为问题在于这一行:
wp_register_script( \'autonum\', THEME_DIR . \'/js/vendor/autoNumeric.js\', array( \'jquery\' ), \'1\', false ); //this is autoNumeric for currency format
问题是我不知道在哪里
THEME_DIR
来自。我的测试安装中没有定义该常量。我怀疑您的脚本URL已损坏。
无论如何,即使THEME_DIR
是定义的,我只是错过了它,而不是您可能应该使用的常量get_template_directory_uri()
如果这是独立主题或父主题,或get_stylesheet_directory_uri()
如果是子主题。
SO网友:bueltge
我认为更好的做法是,在价格字段中添加一个插件和一个元框。很容易过滤和格式化输出。数据库中的sore,更容易维护或为作者在字段中添加值。对于read,get output,可以使用自定义post类型的默认函数。它提供了许多关于WPSE的教程和答案。
对于格式为php 如果您使用money_format()
作用
举个例子:echo money_format(\'$%i\', 3.4); // echos \'$3.40\'
我认为这个功能是正确的。该函数使用WordPress安装中的locale变量,并可用于不同的类型和语言。带有默认php函数的格式在较长时间内不可用,在这种情况下很难格式化。
如果你想进去的话javascript, 那么看看这个WPSE thread, 非常有用。但我认为,php方式对于自定义字段(如元框)中的输出来说既快速又简单。