I am trying to create a drop down list box in woocommerce but have it populated with data from the database.
I have the majority of the code working but the portion to populate the list box is killing me. This is what I have so far.
add_action( 'woocommerce_product_options_general_product_data', 'woo_add_custom_general_fields' ); // Display Extra Fields on General Tab Section
add_action( 'woocommerce_process_product_meta', 'woo_add_custom_general_fields_save' ); // Save Fields
function woo_add_custom_general_fields() {
global $woocommerce, $post, $product;
echo '<div class="options_group">';
// Select
$options = array(
'hide_empty' => false,
'order' => 'ASC',
'fields' => 'names'
);
$DogBreeds = get_terms('pa_breed', $options);
foreach ($DogBreeds as $key => $value) {
$theArray = "'{$value}' => __( '{$value}' , 'woocommerce' ), ";
}
woocommerce_wp_select(
array(
'id' => '_select',
'label' => __( 'My Select Field', 'woocommerce' ),
'options' => $theArray //this is where I am having trouble
)
);
echo $theArray;
echo '<pre>';
var_dump($DogBreeds);
echo '</pre>';
echo '</div>';
}
// Save Fields
function woo_add_custom_general_fields_save( $post_id ){
// Select
$woocommerce_select = $_POST['_select'];
if( !empty( $woocommerce_select ) )
update_post_meta( $post_id, '_select', esc_attr( $woocommerce_select ) );
else {
update_post_meta( $post_id, '_select', Null );
}
}
This should pull information from the "ATTRIBUTES" section in WooCommerce. I created a Breed Attribute and put a few dog breeds in there.
Any direction is greatly appreciated!
I know the 'options' section on the array is totally wrong but I put it there so you would know what I am trying to accomplish.