Exporting Input Fields Individually
-
Are there individual meta data keys for the input fields that can be used for export? I’m using Advanced Order Export for Woocommerce and I see that there is an “Input Fields” export available, but that leaves all input values combined in one column. I see that you can export _alg_wc_pif_local and _alg_wc_pif_global but these exports include absolutely everything when I just need the value. I have tried custom meta keys of _alg_wc_pif_local_value and had no luck. Any help on this would be appreciated.
Thanks,
Eric
-
hi Eric
if you use free version of “Input fields”plugin –
please, add field ” _alg_wc_pif_global” and put following code to section “Misc Settings”.
if you will add field _alg_wc_pif_local – adjust code too!
thanks, Alexadd_filter('woe_get_order_product_value__alg_wc_pif_global', function ($value,$order, $item, $product,$item_meta) { $t = unserialize($value); if( is_array($t) ) $value = $t[0]['_value']; return $value; }, 10, 5);-
This reply was modified 6 years, 8 months ago by
algol.plus.
Thank you for the prompt reply Alex! Worked Perfectly!
Eric
For anyone else wondering “Misc Settings” can be found on the Export Orders Tab of Woocommerce after downloading Advanced Order Export. Click the Custom PHP Code box in order to add the filter code.
you’re welcome π
I’m an author of “Advanced Order Export for Woocommerce” pluginHi @elinhart9,
I am glad that you found a fix for the issue and it is working fine on your site now.
Please let us know if you have any further queries regarding our plugin.
Regards,
Kenil ShahSo I decided to purchase the full version of the Plug-in and now have 3 Global inputs. Is there a modification to the code that would allow me to have these three Globals in difference columns now?
Thanks,
EricThis works incase we have just one field to export. But What if here is 4 fields to export
“alg_wc_pif_global_1” “alg_wc_pif_global_2” “alg_wc_pif_global_3” “alg_wc_pif_global_4”
?at the moment the code exports just [0]value which is 1st value
Do you want to export each value as separate column ?
Or will we put 4 values in one cell ?// add this code to functions.php or via https://ww.wp.xz.cn/plugins/code-snippets/ // visit >Setup Fields>Products to see these fields , and drag necessary fields to export add_filter('woe_get_order_product_fields', function ($fields) { // you must edit label and colname! $fields['alg_1'] = array( 'label' => 'Age', 'colname' => 'Age', 'checked' => 1 ); $fields['alg_2'] = array( 'label' => 'Gender', 'colname' => 'Gender', 'checked' => 1 ); $fields['alg_3'] = array( 'label' => 'Prefer color', 'colname' => 'Prefer color', 'checked' => 1 ); $fields['alg_4'] = array( 'label' => 'Date of visit', 'colname' => 'Date of visit', 'checked' => 1 ); return $fields; }); add_filter( 'woe_fetch_order_product', function ($row, $order, $item, $product, $item_meta ){ $scope = "global"; // or local ? $alg_meta = $item->get_meta( '_' . ALG_WC_PIF_ID . '_' . $scope ); foreach($row as $k=>$v) { if( preg_match('#alg_(\d+)#',$k,$m) ) { $idx = $m[1] -1; if( isset($alg_meta[$idx])) // has value? $row[$k] = $alg_meta[$idx]['_value']; } } return $row; },10,5);Ok 1st I want to thank you for your effort.
How ever it is not working for me, maybe I do something wrong (I am not a PHP guru) although this is what I did:
1. I placed the above code into “functions.php”
2. you wrote: // visit >Setup Fields>Products to see these fields , and drag necessary fields to export
Maybe you wanted to mention :
// visit >Setup Fields>Product ItemsBecasue in Prducts I dont see “alg_wc_pif_global”
If you’ve modified my code – you should see your “labels”
Here is my fields https://imgur.com/gf3iVlM
Yeah, I dint see those fields there. I thought I must Add them from the option add field.
Now it works for 100%! Your are my hero!
And this means I can add unlimited fields, just make the modifications in your function.
Thanks for help!
@anbaban
you’re welcomeI am using the “Print Invoice & Delivery Notes for WooCommerce” and the “Product Input Fields for WooCommerce”. I am trying to get the data from my one input field to show on my printed invoice.
Looking at the data I want it is stored in the DB
woocommerce_order_itemmeta -> _alg_wc_pif_local -> a:1:{i:0;a:33:{s:7:"enabled";s:3:"yes";s:4:"type";s:8:"textarea";s:8:"required";s:2:"no";s:5:"title";s:25:"Special notes or comments";s:11:"placeholder";s:21:"Type your notes here.";s:13:"default_value";s:0:"";s:5:"class";s:0:"";s:5:"style";s:0:"";s:16:"required_message";s:28:"Field "%title%" is required!";s:22:"input_restrictions_min";s:0:"";s:22:"input_restrictions_max";s:0:"";s:23:"input_restrictions_step";s:0:"";s:28:"input_restrictions_maxlength";s:0:"";s:26:"input_restrictions_pattern";s:0:"";s:17:"type_checkbox_yes";s:3:"Yes";s:16:"type_checkbox_no";s:2:"No";s:16:"type_file_accept";s:15:".jpg,.jpeg,.png";s:24:"type_file_wrong_type_msg";s:16:"Wrong file type!";s:18:"type_file_max_size";s:1:"0";s:22:"type_file_max_size_msg";s:16:"File is too big!";s:22:"type_datepicker_format";s:0:"";s:23:"type_datepicker_mindate";s:4:"-365";s:23:"type_datepicker_maxdate";s:3:"365";s:23:"type_datepicker_addyear";s:2:"no";s:25:"type_datepicker_yearrange";s:9:"c-10:c+10";s:24:"type_datepicker_firstday";s:1:"0";s:22:"type_timepicker_format";s:7:"hh:mm p";s:24:"type_timepicker_interval";s:2:"15";s:23:"type_color_allow_typing";s:0:"";s:19:"type_select_options";s:0:"";s:15:"_plugin_version";s:5:"1.2.6";s:9:"_field_nr";i:1;s:6:"_value";s:19:"Happy Birthday Oma!";}}The data from the customer’s input that I want to show in my product info is “Happy Birthday Oma!”
I had added some other data to my printout by using this code, but it did not work for this custom input field. Here is the code i tried in functions.php:
if( get_post_meta( $order->id, '_alg_wc_pif_global', true ) ) { $new_fields['_alg_wc_pif_global'] = array( 'label' => 'Special Customer Note', 'value' => get_post_meta( $order->id, '_alg_wc_pif_global', true ) ); }Please let me know the correct code to get the data from your input fields plugin.
-
This reply was modified 6 years ago by
eyeink. Reason: code styling
-
This reply was modified 6 years, 8 months ago by
The topic ‘Exporting Input Fields Individually’ is closed to new replies.