我正在尝试为我的变体添加自定义选择字段,因此每个变体将有两个选择字段,并且该值是相互关联的,即基于第一个选择字段的选项选择,第二个选择字段将从数据库获取结果并填充它有这些选择。
到目前为止,我能够创建自定义选择字段,在第一个选择字段中,我可以从数据库中提取选项,但是我不确定这是否是正确的方法。
要获取第二个选择字段的数据,我使用的是ajax,但似乎无效。
以下是我的functions.php文件中自定义字段的代码:
$vvr = array(
'0.01 TO 0.03 CT' => __( '0.01 TO 0.03 CT', 'woocommerce' ),
'0.04 TO 0.07 CT' => __( '0.04 TO 0.07 CT', 'woocommerce' ),
'0.08 TO 0.14 CT' => __( '0.08 TO 0.14 CT', 'woocommerce' ),
'0.15 TO 0.17 CT' => __( '0.15 TO 0.17 CT', 'woocommerce' ),
'0.18 TO 0.22 CT' => __( '0.18 TO 0.22 CT', 'woocommerce' ),
'0.22 To 0.29 CT' => __( '0.22 To 0.29 CT', 'woocommerce' )
);
woocommerce_wp_select( array(
'id' => '_diam_one[' . $variation->ID . ']',
'label' => __( 'Enter First diamond', 'woocommerce' ),
'class' => 'diamtype',
'value' => get_post_meta( $variation->ID, '_diam_one', true ),
'options' => $vvr
) );
以上代码非常适合创建预定义选项,因为我在functions.php文件中手动添加它们。
但我想从wordpress db中的自定义表中提取这些选项,下面是我用来从我的自定义表中获取这些选项的代码。
$result = $wpdb->get_results('SELECT distinct type FROM diamonds');
foreach($result as $row)
{
$vvr[$row->type] =$row->type;
}
上面的代码也从我的自定义表中提取数据,但是你可以看到它没有遵循WP标准来添加这些选项。
现在基于这个选择字段的选择,我想从我的自定义表中获取数据到我的另一个选择字段,我已经像第一个那样添加了。
您可以看到上面的屏幕截图,所以任何人都可以通过最佳方式帮助我实现此功能,因为我不想通过硬编码列出这些选项。