471 comments found.
Thanks!
Google did the job.
Kind regards,
Sabine
Glad to hear that 
Hi Domenico, We were in touch over the New Year.. I was working on a staging site now moving onto the live site. When I enter the purchase key, I get the message ‘purchase code is invalid!’
If I deactivate the plugin on the staging site, will i be able to use the purchase code for ‘user extra field’ and ‘customer manager’ plugins?
Thank you,
Sabine
Hi Sabine,
deactivating plugin on other site won’t affect the production site.
From the message you are getting it seems that for some reasons the borwser is failing the validation process. Could you try using a fully HTML5 compliant browser (Chrome or FireFox) to validate the plugin? Try eventually purging the cache and disabling the other 3rd party plugins.
Have you activated the plugins already in two domains?
Thanks a lot,
it works great except for one issue: I am using MailChimp (for woocommerce) plugin to link my users to my MailChimp list.
The Mailchimp opt in field stopped showing on the checkout page upon activating the ‘user extra field’ plugin.
Current setting on Mailchimp is Advanced Checkbox Settings To change the location of the opt-in checkbox at checkout, input one of the available WooCommerce form actions. t Enter a WooCommerce form action
I tried displaying this field elsewhere (on cart page and checkout page but it doesn’t show at all). I need it to link to my Mailchimp list.
Any advice welcome!
Kind regards,
Sabine
Hi Sabine,
unfortunately, without any further clue, it is quite hard to determine the cause.
- you email address
- Full admin access to the wp-admin area
- a FTP access
- a detailed step by step guide on how to experience the issue
I’ll try performing further tests to see if it is possible to determine the cause and if eventually, I can implement a fix.
Just purchased the plugin. Trying to display fields names on front end by filtering meta.
You can see the field value is “1” which is pointless. I need the value to equal the field name. How can I do this? It would be best to add it to my theme functions.
Hi,
please do not send different messages regarding the same issue using different channels. Support is not real-time support and may require some time to process the request.
Make sure you have properly configured the field inserting the labels you want to display: https://www.dropbox.com/s/bsqlucey1dx7vlc/wpuef_conf.jpg?dl=0 Once done the plugin will display properly those labels: https://www.dropbox.com/s/dewu5k958s1blzi/wpuef_frontend.jpg?dl=0
In case you want to display the result of an already selected option, you can use the wpuef_get_field() function. You find more details about how it works in the Retrieve And Save Fields Data Programmatically paragraph in the plugin description page.to display the label of a selected value you can do in this way:
$field_metadata = wpuef_get_field($field_id, $user_id); $field_value = $field_metadata['value']; $field_selected_value_label = $field_metadata["field_options"][$field_value ]['label'];where the $field_id is the field id and the $user_id the user id for which you want to retrieve the value.
For what concerns the refund, no refund is granted due to 3rd party plugin issues or interference. In that case, it should be the 3rd party to grant any refund for its malfunctioning.
Hi, My custom field is an email. I need to send order mails to this new address; but I do not know how to insert the field in the mails of Woocommerce Booster. The booster request to a variable that I do not know how to write (please see the screenshot). https://paste.pics/37f6a4840dba92ba32040506379cb4c1
Can you help me? Thank you in advance
Actually, I don’t think that plugin allows you to do that. The extra field data is stored in the user profile metadata and that plugin should have some special feature to read that data and make available through special shortcodes.
You should, however, contact that plugin developer to have more info.
Hey, I am interested of this plugin but I need one specific but simple feature and I was wondering if you have it. I need to add 4 dropdown menus to registration which has the same data set imported as options and number field tied to it. For example Coffee (dropdown) + 3pcs(text field) and next could be Tea (dropdown) + 2pcs (text field). The issue i’m having that there are couple hundred items to select and I need to import them and collect data about the item and numeric associated to it.
Hi,
I’m sorry but unfortuantely the plugin hasn’t any feature for field creation through data import via CSV.
Hello, I have bought this item for my client and i’m playing around but i realized that when i add custom field woocommerce’s user profile page it adding end of page. I mean it not make sense special fields displaying after password area. It could be placed before password change are i think. Please help me to do this and reply this to ahmet@kubit.com.tr Thnx
Hello,
the plugin hasn’t any feature to inject fields among the native user fields. It adds extra fields that are shown after the default ones.
I do not want to inject native fields. I just want to display fields before default content ( name password etc) not end the page.
I mean it could be awesome if there is position option for users just ” before content or after content” at least we can choose of them
ah ok clear! Yes I can add an option for that!
I’ve just released the new 14.0 that has that option. In the Settings -> User Extra Fields you will find the option to set position of the extra field form: https://www.dropbox.com/s/x9lk194nrrylbpw/wpuef_settings.jpg?dl=0
I hope you enjoy! Let me know! 
Ah what a shame, i did not see that page
But i did not see same page which you displayed : https://pasteboard.co/HSJfzLm.png
No problem! 
If you enjoyed my support and/or my plugin please also consider leaving the 5 stars, I would really appreciate! 
(to leave a rating: go to your profile page, click on “Downloads” and from there you can rate to your purchases).
Have a great day! 
Hey vanquish could you please share an email? i want to touch some support question? ahmet@kubit.com.tr
Yes, send me a private message (click on my name then use the low-right box) reporting your email address and the questions. I’ll reply via email.
Hello, I am interested in getting this plugin, but I need to make sure it will do what I need. I want to add a Customer Key Tag number that is assigned by the company. It should be shown on the profile page, but only be editable by the admin or store admin. It should also be included in receipts emails, order emails, etc. Will this handle these requirements?
Hi,
yes it is possible. To do that just enable the options to make the field editable only by the Admin and to make it visible in any of the user profile pages: https://www.dropbox.com/home/public/support/screenshot-www.codecanyon.eu-2018.11.10-08-54-01.jpg
Once done, The admin will be able to edit that field through the admin user edit page: https://www.dropbox.com/s/cm8yb0egdufmhtq/wpuef_admin_conf.jpg?dl=0
And the user will be only capable to see the field (without editing it) in his profile page(s): https://www.dropbox.com/s/mzowkv3lejkx60c/wpuef_admin_edit.jpg?dl=0
I hope you enjoy 
Hi there,
As soon as I activate the plugin, I get an HTTP ERROR 500. Any thoughs?
Thanks Danny
Hi,
no unfortuntaly without any further clue it is quite impossible to determine the cause. The 500 error is a generic error that doesn’t provide any further info.
Try enabling the WordPress debug mode and the debug log ( https://codex.wordpress.org/Debugging_in_WordPress ) and see if any error is printed on screen and on the debug log (located in the wp-content/ folder).
Let me know!
Sure thing: Fatal error: Call to undefined function add_submenu_page() in D:\Inetpub\wwwroot_home\engine\wp-content\plugins\wp-user-extra-fields\classes\admin\WPUEF_ActivationPage.php on line 41
It is sounds very strange because the add_submenu_page is a native wordpress function: https://developer.wordpress.org/reference/functions/add_submenu_page/
So it should not be undefined. Have you altered the plugin initialization process or in general your wordpress installation? Could you try disabling the other 3rd party plugins to see if you still experience the issue? Try eventually to install the https://it.wordpress.org/plugins/plugin-organizer/ plugin and set the User Extra Fields as the last plugin to be activated.
Hello,
When I enable the plugin in PHP 7.2 I got this error.
Can this be fixed?
[12-Oct-2018 21:27:41 UTC] PHP Fatal error: Uncaught Error: Call to undefined function add_submenu_page() in /home/ritinha/public_html/wp-content/plugins/wp-user-extra-fields/classes/admin/WPUEF_ActivationPage.php:36 Stack trace: #0 /home/ritinha/public_html/wp-content/plugins/wp-user-extra-fields/classes/admin/WPUEF_ActivationPage.php(22): WPUEF_ActivationPage->add_page() #1 /home/ritinha/public_html/wp-content/plugins/wp-user-extra-fields/extra-fields.php(46): WPUEF_ActivationPage->__construct(‘wpuef-activator’, ‘User Extra Fiel…’, ‘wp-user-extra-f…’, 12949844, ‘https://www.rit...') #2 /home/ritinha/public_html/wp-content/plugins/wp-user-extra-fields/extra-fields.php(41): wpuef_init_act() #3 /home/ritinha/public_html/wp-includes/class-wp-hook.php(286): wpuef_init(’’) #4 /home/ritinha/public_html/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters(NULL, Array) #5 /home/ritinha/public_html/wp-includes/plugin.php(453): WP_Hook->do_action(Array) #6 /home/ritinha/public_html/wp-settings.php(450): do_action(‘init’) #7 /home/ritinha/public_html/w in /home/ritinha/public_html/wp-content/plugins/wp-user-extra-fields/classes/admin/WPUEF_ActivationPage.php on line 36
Thanks.
Hi,
It sounds very strange that the add_submenu_page function is undefined because that function is a native WordPress function (https://developer.wordpress.org/reference/functions/add_submenu_page/ ).
It seems that your wordpress installation is not properly able to initialize when switching to PHP 7.2 .
- you email address
- Full admin access to the wp-admin area
- a FTP access
- a detailed step by step guide on how to experience the issue
I’ll perform some further tests to see if it possible to determine the cause of the issue.
Hello, how are you ?
Before I buy this plugin (User Extra Fields) I need to ask you a couple of questions.
I am trying to add birthday dates to customer registration/my account. Im running a woocommerce store and I want to be able to send birthday coupons thru mailchimp.
I’m using the plugin: Mailchimp for WordPress (the most used mailchimp plugin) and there’s a “Registration Form integration” which adds a checkbox to sign up to a newsletter.
My concern is if these custom fields i generate using “User Extra Fields” will be imported to my Mailchimp lists.
So later I can use this data to automate e-mail marketing.
Hi!
unfortuantely both plugin have no support for the other. In this case you should inform if that plugin can be modified in order to customize the mailchimp list generation inserting the custom data generated by the Extra field plugin.
My plugin has API that allows to read and write customer extra data programatically.
I see, thanks for your support.
I’ve another question. How is the data stored in this plugin? Cause reading some of the Addons from Mailchimp for WP, they have one called: Mailchimp User Sync. It says
“Please note: the plugin can only use user meta, the default way for storing metadata in WordPress. If the plugin you’re using for adding user fields stores metadata in a different way then MailChimp User Sync does not support this.” (https://kb.mc4wp.com/syncing-custom-user-fields-mailchimp/)
So i’m wondering if that would work with your plugin.
Yes values are stored in user metadata. The metakey name has the following format: wpuef_cid_{field_id} where the field_id is the id of the extra field. Here an example for field c9 and c6: https://www.dropbox.com/s/zlw5ks6jv1iuogf/wpuef_metavalue.jpg?dl=0
To read programmaticaly a field value for a speicifc user use the following snippet:
$field_data = wpuef_get_field('c13', 16669);
$field_value = $field_data->value;
where c13 is the field id, 16669 is the user id for which you want to retrieve the value and the $field_value is the value of the field for the specified user.
Hi We bought your plugin 2 days ago. As we are working on it, we have this message: Fatal error: Call to undefined function add_submenu_page() in wp-content/plugins/wp-user-extra-fields/classes/admin/WPUEF_ActivationPage.php on line 36
We are working on a multisite network, latest WP version, theme Avada. Can you help us on this please?
It seems that you wordpress installation is not properly initializing. the add_submenu_page function is a wordpress core function (https://developer.wordpress.org/reference/functions/add_submenu_page/) and it should be always defined.
If you send me via private message (click on my name and then use the low-right box) the following data:- you email address
- Full admin access to the wp-admin area
- a FTP access
I can try to peform some further tests on your installation to try to understand if possible the cause of the issue and eventually implement a workaround.
just bought. custom fields are not displayed. ask for immediate help. take a look http://www.agentur-mitterlehner.at/test-2/
Hi,
without any further clue it is quite hard to determine the cause. It could be due to a misconfiguration or because the theme is not trigger the needed actions while rendering the register form.
- you email address
- Full admin access to the wp-admin area
- a FTP access
Thank you.
Hello! can you please tell how to fix the fact that the question appears UNDER the options as in my case: https://www.screencast.com/t/SSOIq7YArU
Also can you please tell how to edit the default message https://www.screencast.com/t/RcYfpBuS2y2Q as I need it to appera in a different language
Hello,
actually there nothing to fix. Those elements are meant to be rendered as list. If you want to customize their style, go inside the tempaltes folder inside the plugin, edit the template file you need (according the page where you are displaying the fields) and look for the checkboxes and radio fields removing the ”< br>” tag after the ”< input>” tag. For example, if you are displaying the fields in the woocommerce checkout form, edit the woocommerce_checkout_form.php file and you will find those elements at line 183 and 190.
For what concerns the “default message”, it is not part of the plugin, it is the registration privacy message showed by default by WooCommerce. It can be edited/translated by going in the WooCommerce -> Settings -> Account & Privicy menu.
Dear, I’m building a website www.singlesonthemove.be I want to create extra fields on the buddypress login page. But, after this, I want to display the extra fields in the worrdpress/woocommerce my-account page. would that be possible? Please have a look at my website and try to register. I’m happy to recieve your feedback on how to achieve this. thank you, thomas
Hi,
to display fields in the Buddy press and WooCommerce pages, use the special “BuddyPress options” and “WooCommerce options” while configuring the fields: https://www.dropbox.com/s/cj34r1ajvuw1g64/wpuef_options.png?dl=0
Those are the only options that Buddypress and WooCommerce expose to 3rd party plugins in order to inject extra data.
I think you can mark this topic as solved, but please do have a look first to check what I have done on my website.
Glad to hear you succeded 
For what concerns the dropbdown menu, I have no clue. Analyzing the html it seems that you create a simple text field, not a dropdown menu.
I’ve performed a test in the demo site to test if that field type works and it works as expected.
So in in your case the issue could be related to a misconfiguration, to a customization or to a 3rd party plugin interference. However without further clue it is hard to determine.
Have you customized or altered the plugin or that form rendering? What do you mean with Which option do I have to select when pasting the shortcode into the buddypress fields?
If you have not implemented any customization, If you send me via private message (click on my name and then use the low-right box) the following data:- you email address
- Full admin access to the wp-admin area
- a FTP access
I can try performing some tests to see if it possible to determine the cause.
Hi Again
It didn’t work. When creating an extra field with your plugin, it shows below the login page. I want it to be in the buddypress registration form. I know how to hide the field, but then my people fill in the buddypress birthday field, but that doesn’t shop in the woocommerce my-account page…
Do have to put the shortcodes inside the buddypress registration php file?
No unfortuantely buddypress doesn’t expose any special action to allow third party plugin to render fields inside the form. It just triggers the standard wordpress action to render additional fields after the form, so unfortunately there isn’t a way to do that.
the shortcode offered by the plugin allows to render a custom form or to show a single field value. It cannot be used to inject single fields into other plugin forms.
Dear, which solution would you offer? Shoul I build a completely new registration form that looks like the buddypress one? Can you recommend any free plugins or templates to do this? So I could rebuild the form, using only your fields..
Ok maybe I’ve found a solution to inject field in the form after the “profile details” fields. I’ve analyzed the latest register template and maybe I found a new action that may good for your purpose.
Please edit the WPUEF_UserProfileFormsAddon.php and replace line 29 with:
add_action('bp_custom_profile_edit_fields', array( &$this, 'render_register_form_with_extra_fields'));
Let me know if it works, in this way I’ll include it in the new plugin version!
P. S.
I’ve released the 13.4 version that already integrates that modification. Install and let me know if it does the job!
HI! that did the trick. Now the extra field is showing on the buddypress registration form. It doesn’t look exactly the same, but probably with some modifications in the custom css, that will change. I haven’t tested yet if this extra field is saved and displayed on the woocommerce my-account page.
Glad to hear that 
if you need to manipulate html elements style without altering the code, you can consider using this plugin of mine Custom JavaScript & CSS in Pages!. It allows you to define custom style for specific pages.
At last but not least…If you enjoyed my efforts to support you and/or my plugin please consider leaving the 5 stars, I would reeeeally appreciate!
(to leave a rating: go to your profile page, click on “Downloads” and from there you can rate to your purchases)
Hi Vanquish, of course I will leave a 5 star rating!! thank you! BUT, how can I reorder the fields on the register page. Now your plugin is injecting the extra fields into the buddypress registration form, but the come straight after the ‘last name’ field… If I ask for a Birthday with your extra field I get: LASTNAME BIRTHDAY SEX FIRST NAME
The bp_custom_profile_edit_fields action is triggered at the end of the Profile fields, so extra fields cannot be injected inside the main form in a custom way. You eventally can try modifing the buddy press register form and move that action triggering, but you won’t able anyway to render single fields each in a custom position.
I’m happy to add the code in my custom css, but I can’t seem to find the element to edit. I want the extra fields i’ve added with your plugin to look exactly the same as the buddypress fields in the register form.
To customize the field, just use the browser debug console to discover which style selector is associated to the elements. Once done redefine as you whish. The debug console can be accessed in Chrome by pressing the F12 button and in FireFox by pressing CTRL+SHIFT+K : https://www.dropbox.com/s/zlbom2vdzwgoiw2/wpuef_style.jpg?dl=0
that did the trick
I was wondering, when somebody registers on my website and chooses a username – fills in all the other required fields and than hits the confirm button – in case the username already exists, they choose another username – but all the fields are empty again – is there a trick to keep al the entered data in the fields and just clean the username field? If not, my customers always have to re-enter their data twice or more if they keep choosing an existing username…
As far as I know, Wordpress hasn’t any feature to automatic repopulate the register form.
I can suggest to write an ajax function that notifies the user that the username has already taken. Just add a javascript that checks the username input, on change sends the data to the backend where is performed the unique check and if it fails, the function notifies via a popup (or an html warning) that the username is already taken cleaing that input field.
At last but not least…If you enjoyed my efforts to support and/or my plugin please consider leaving the 5 stars, I would reeeeally appreciate!
(to leave a rating: go to your profile page, click on “Downloads” and from there you can rate to your purchases)
I’m not into writing Ajax functions. But I’ll try to find out on google. Thank you. No I have customised tha woocommerce my-account page with YITH plugin. I’ve created an extra tab in my-account. How can I create extra user field that only show in that area? I want people to tell more about themselves. Interests and stuff… so after sending them an email, they are redirected to the tab in their account to fill in some specific fields. Would that be possible?
You can display a form including only the fields you need with the following shortcode: [wpuef_extra_fields_custom_form field_ids=”“]. The ids parameter takes the ids of the field that can be showed and edited.
If you wanto to just show the value, you can use the followign shortcode: [wpuef_show_field_value field_id=”” user_id=”“]
this is really working!!!
I get the extra user fields in that area/endpoint. I suppose range selecting fields is not possible yet? I want to ask my customers how important some things in life a for them… so I need a range from -5 to 5
UPDATE: I’m creating extra userfields, but 2 fields get the same code ‘c18’. Please check this screenshot: http://www.singlesonthemove.be/wp-content/uploads/2018/08/Schermafbeelding-2018-08-25-om-10.52.03.png
Try then deleting saving and reloading the page. You should no longer experience that issue.
For what concerns the range, for now is not available this special field. However you can create a dropdown menu with values from -5 to 5 
Dear, the solution to inject the extra fields into the buddypress registration form has been deleted? this was your solution add_action(‘bp_custom_profile_edit_fields’, array( &$this, ‘render_register_form_with_extra_fields’)); Has something changed to the plugin?
please have a look at this page: https://www.singlesonthemove.be/registratie/
Hi,
note that updating the plugin will make you loose the customization you implemented.
The plugin officially uses the bp_signup_profile_fields to render th extra fields after the profile fields. The bp_custom_profile_edit_fields renders instead the extra fields adter the first field.
If you want to use your customization, just edit the WPUEF_UserProfileFormsAddon file commenting the line 32 and uncommenting line 31.
from the page you linked I’m not able to understand what you mean.
However the new plugin version uses a different action and template. the new template styles extra fields using same css elements used in the default form.
If you want to restore the old method, comment line 32, uncomment line 31 and replace line 31 with:
add_action('bp_custom_profile_edit_fields', array( &$this, 'render_register_form_with_extra_fields'));
or in alternative, just replace line 32 with the previous snippet.
Hi Vanquish, I’m not that good in making changes in php files, would you please make the changes in this comment?
<?php class WPUEF_UserProfileFormsAddon { var $buddy_press_do_not_render_edit_fields_table = false; var $register_form_rendered = 0; var $user_already_registered = false; public function __construct() { global $wpuef_option_model,$wpuef_woocommerce_is_active; $theme_version = wpuef_get_file_version( get_template_directory() . ’/woocommerce/myaccount/my-account.php’ ); try{ $wc_version = wpuef_get_woo_version_number(); }catch(Exception $e){} }?>
//Registration
add_action('init' , array( &$this, 'init')); //woocommerce
add_action('register_form',array( &$this, 'render_register_form_with_extra_fields'));
}
public function init()
{
global $wpuef_option_model, $wpuef_woocommerce_is_active;
//wpuef_var_dump($wpuef_option_model->get_woocommerce_register_page_positioning());
if(isset($wpuef_option_model) && isset($wpuef_woocommerce_is_active) && $wpuef_woocommerce_is_active) //WooCommerce
add_action($wpuef_option_model->get_woocommerce_register_page_positioning() , array( &$this, 'render_register_form_with_extra_fields'));
}
//WooCommerce
function woocommerce_reset_password()
{
global $wpuef_field_model;
if($wpuef_field_model->exists_password_override_field())
wp_dequeue_script('wc-password-strength-meter');
}
function woocommerce_validate_fields() //data validation
{
//DEBUG
/* if ( ! $_POST['my_field_name'] )/
wpuef_var_dump($_POST);
wc_add_notice( __( 'Please enter something into this new shiny field.' ), 'error' );
//add_action('register_post',array( &$this,'check_fields',10,3));
add_action('user_register', array( &$this,'register_extra_fields'));
add_action( 'delete_user', array( &$this,'delete_fields_on_user_delete') );
add_action ( 'show_user_profile', array( &$this,'render_edit_table_with_extra_fields'));
add_action ( 'edit_user_profile', array( &$this,'render_edit_table_with_extra_fields') );
add_action ( 'user_new_form', array( &$this,'render_add_table_with_extra_fields') ); //Admin add new user
add_action ( 'personal_options_update', array( &$this,'update_extra_fields')); //user is viewing it's own profile
add_action ( 'edit_user_profile_update', array( &$this,'update_extra_fields')); //user/admin is viewing other profile
//Buddy press
//add_action('bp_before_registration_submit_buttons', array( &$this, 'render_register_form_with_extra_fields')); //Buddypress register page
//bp_account_details_fields: to rendere fields after the "Account details area"
//add_action('bp_custom_profile_edit_fields', array( &$this, 'render_bp_register_form_with_extra_fields'), 1, 99); //Buddypress register page (After first field)
add_action('bp_signup_profile_fields', array( &$this, 'render_bp_register_form_with_extra_fields'), 1, 99); //Buddypress register page
add_action('bp_complete_signup', array( &$this, 'register_extra_fields'));
//add_action('bp_signup_validate', array( &$this, 'buddypress_check_validation'));
add_action('bp_profile_field_item', array( &$this, 'buddypress_show_profile_extra_fields'));
add_action('bp_after_profile_field_content', array( &$this, 'buddypress_edit_profile_extra_fields'),999); //Edit bp profile page
add_action('xprofile_updated_profile', array( &$this, 'buddypress_update_extra_fields'), 10, 5 );
//WooCommerce
add_action( 'woocommerce_created_customer', array( &$this,'register_extra_fields') );
add_action( 'woocommerce_edit_account_form', array( &$this,'woocommerce_edit_account_details') );
add_action( 'woocommerce_save_account_details', array( &$this,'update_extra_fields') );
add_action( 'woocommerce_customer_save_address', array( &$this,'update_extra_fields') );
//add_action( 'woocommerce_before_my_account', array( &$this,'woocommerce_edit_and_save_from_account_details_in_my_account_page') );
if(!isset($wc_version) || version_compare($wc_version , 2.6, '<') || version_compare($theme_version , 2.6, '<') )
add_action( 'woocommerce_after_my_account', array( &$this,'woocommerce_edit_and_save_from_account_details_in_my_account_page') );
add_action( 'woocommerce_after_edit_address_form_billing', array( &$this,'woocommerce_edit_billing_address_details') );
add_action( 'woocommerce_after_edit_address_form_shipping', array( &$this,'woocommerce_edit_shipping_address_details') );
//Wc 2.6: Noo more needed => woocommerce_edit_account_details is the only hook used
/ if(isset($wc_version) && version_compare($wc_version , 2.6, '>=') )
add_action( 'woocommerce_account_content', array( &$this,'woocommerce_edit_and_save_from_account_details_in_my_account_page'),99 ); /
//Checkout
if(isset($wpuef_option_model))
add_action( $wpuef_option_model->get_woocommerce_checkout_page_positioning()/ 'woocommerce_after_checkout_billing_form' /, array( &$this, 'woocommerce_add_checkout_extra_user_fields' ), 10, 1 );
//add_action('woocommerce_checkout_process', array( &$this, 'woocommerce_validate_fields' )); //validation
add_action('woocommerce_checkout_update_order_meta', array( &$this, 'woocommerce_save_checkout_extra_user_fields' )); //update user info
//Emails
add_action('woocommerce_email_customer_details', array( &$this, 'woocommerce_include_extra_fields_in_emails' ), 12, 3);
//add_action('register_new_user', array( &$this, 'wp_new_user_registration_notification_sent_to_admin' ), 30, 1); //New user registration: email sent to admin
//Reset password
add_action('woocommerce_resetpassword_form', array(&$this, 'woocommerce_reset_password'));
}
function woocommerce_save_checkout_extra_user_fields( $order_id )
{
$order = new WC_Order($order_id);
$user_id = WPUEF_Order::get_customer_id($order);
if(isset($user_id) && $user_id > 0)
$this->woocommerce_updata_extra_fields_checkout($user_id, $order_id);
}
function woocommerce_add_checkout_extra_user_fields($checkout)
{
global $wpuef_htmlHelper;
//wpuef_var_dump($checkout);
$user_id = get_current_user_id();
$wpuef_htmlHelper->woocommerce_render_checkout_form_extra_fields($user_id);
}
public function woocommerce_edit_billing_address_details()
{
$user_id = get_current_user_id();
global $wpuef_htmlHelper;
$wpuef_htmlHelper->woocommerce_render_edit_form_extra_fields($user_id,false,1);
}
public function woocommerce_edit_shipping_address_details()
{
$user_id = get_current_user_id();
global $wpuef_htmlHelper;
$wpuef_htmlHelper->woocommerce_render_edit_form_extra_fields($user_id,false,2);
}
public function woocommerce_edit_account_details()
{
$user_id = get_current_user_id();
/ $user = get_userdata( $user_id );
if ( !$user )
return; /
}
public function woocommerce_edit_and_save_from_account_details_in_my_account_page()
{
global $wpuef_htmlHelper, $wp;
$user_id = get_current_user_id();
if ( !$user_id )
return;
}
//save post
$this->update_extra_fields($user_id);
//form
if ( did_action( 'woocommerce_account_content' ) )
{
//wpuef_var_dump("2.6");
foreach ( $wp->query_vars as $key => $value )
{
if($key == 'edit-account')
$wpuef_htmlHelper->woocommerce_render_edit_form_extra_fields($user_id, true);
/ if ( has_action( 'woocommerce_account_' . $key . '_endpoint' ) )
{
wcmca_var_dump('woocommerce_account_' . $key . '_endpoint' );
} /
}
}
else if(did_action('woocommerce_after_my_account')) //WC < 2.6
{
//wpuef_var_dump("2.5");
$wpuef_htmlHelper->woocommerce_render_edit_form_extra_fields($user_id, true);
}
//End WooCommerce
//BuddyPress
public function buddypress_show_profile_extra_fields()
{
if($this->buddy_press_do_not_render_edit_fields_table)
return;
}
public function buddypress_edit_profile_extra_fields( )
{
if($this->buddy_press_do_not_render_edit_fields_table)
return;
}
public function buddypress_update_extra_fields($user_id, $posted_field_ids = null, $errors= null, $old_values= null, $new_values= null)
{
//wpuef_var_dump($_POST);
if ( !current_user_can( 'edit_user', $user_id ) )
return false;
global $wpuef_user_model;
if(isset($_POST['wpuef_options']))
$wpuef_user_model->save_fields($_POST['wpuef_options'], $user_id );
}
//End BuddyPress
$this->buddy_press_do_not_render_edit_fields_table = true;
global $wpuef_htmlHelper;
$user_id = bp_displayed_user_id();
if(isset($user_id) && $user_id > 0)
$wpuef_htmlHelper->render_bp_edit_table_with_extra_fields($user_id, true);
public function delete_fields_on_user_delete($user_id)
{
global $wpuef_file_model;
$wpuef_file_model->delete_all_user_files($user_id);
}
public function render_add_table_with_extra_fields( )
{
global $wpuef_htmlHelper;
$wpuef_htmlHelper->render_add_table_with_extra_fields();
}
public function render_edit_table_with_extra_fields( $user )
{
global $wpuef_htmlHelper;
$wpuef_htmlHelper->render_edit_table_with_extra_fields($user->ID);
}
public function render_bp_register_form_with_extra_fields()
{
global $wpuef_htmlHelper;
if(did_action( 'bp_before_register_page' )) //to avoid the form is rendered also in the edit bp profile page
{
if(++$this->register_form_rendered > 1) //Forma already rendered, usefull for woocommerce
return;
$wpuef_htmlHelper->render_bp_register_form_extra_fields();
}
}
public function render_register_form_with_extra_fields()
{
global $wpuef_htmlHelper;
//if(did_action('register_form') > 1) //Forma already rendered, usefull for woocommerce
if(++$this->register_form_rendered > 1) //Forma already rendered, usefull for woocommerce
return;
$wpuef_htmlHelper->render_register_form_extra_fields();
}
public function woocoommerce_render_register_form_with_extra_fields()
{
global $wpuef_htmlHelper;
$wpuef_htmlHelper->render_register_form_extra_fields();
}
public function check_fields ( $login, $email, $errors )
{
}
public function wp_new_user_registration_notification_sent_to_admin($user_id )
{
global $wpuef_htmlHelper;
//wpuef_var_dump($user_id);
if(isset($user_id) && $user_id > 0)
{
//ob_start();
$wpuef_htmlHelper->wp_new_user_registration_notification($user_id);
//$additional_data = ob_get_contents();
//ob_end_clean();
//return $msg.$additional_data;
}
}
//return $msg;
public function woocommerce_include_extra_fields_in_emails( $order, $sent_to_admin = false, $plain_text = false)
{
global $wpuef_htmlHelper;
$user_id = WPUEF_Order::get_customer_id($order);
if(isset($user_id) && $user_id > 0)
$wpuef_htmlHelper->woocommerce_render_fields_on_emails($user_id);
}
public function woocommerce_updata_extra_fields_checkout($user_id, $order_id)
{
if ( !current_user_can( 'edit_user', $user_id ) || !isset($_POST['wpuef_options']))
return false;
global $wpuef_user_model,$wpuef_option_model, $wpuef_order_model;
$posted_fields = $_POST['wpuef_options'];
$extra_fields = $wpuef_option_model->get_option('json_fields_string');
$customer_fields_to_save = array();
$order_fields_to_save = array();
//Customer fields
foreach($extra_fields->fields as $extra_field)
{
if( isset($extra_field->woocommerce_visible_on_checkout) && $extra_field->woocommerce_visible_on_checkout == true )
if(isset($posted_fields[$extra_field->cid]))
$customer_fields_to_save[$extra_field->cid] = $posted_fields[$extra_field->cid];
if( isset($extra_field->woocommerce_save_on_checkout_as_order_field) && $extra_field->woocommerce_save_on_checkout_as_order_field == true )
{
if(isset($posted_fields[$extra_field->cid]))
$order_fields_to_save[$extra_field->cid] = $posted_fields[$extra_field->cid];
elseif($extra_field->field_type == 'file')
{
//New uploaded file
if(isset($posted_fields'files'))
{
if(!isset($order_fields_to_save['files']))
$order_fields_to_save['files'] = array();
}
$order_fields_to_save'files' = $posted_fields'files';
}
//Copy already uploaded file data
else
{
$file_data = $wpuef_user_model->get_field( $extra_field->cid, $user_id );
if(isset($file_data) && isset($file_data['absolute_path']) && $file_data['absolute_path'] != "")
{
if(!isset($order_fields_to_save['files_to_copy']))
$order_fields_to_save['files_to_copy'] = array();
$order_fields_to_save'files_to_copy' = $file_data;
}
}
}
/ if(isset($_POST'wpuef_options'))
$posted_fields['files'] = $_POST'wpuef_options';
if(isset($_POST'wpuef_options'))
$posted_fields['files_to_delete'] = $_POST'wpuef_options';
/
}
//Save Customer extra fields
/ if(!empty($customer_fields_to_save))
$wpuef_user_model->save_fields($customer_fields_to_save, $user_id ); */
if(isset($posted_fields))
$wpuef_user_model->save_fields($posted_fields, $user_id );
//Order extra fields fields
if(!empty($order_fields_to_save))
$wpuef_order_model->save_fields($order_fields_to_save, $order_id );
}
public function update_extra_fields($user_id)
{
//wpuef_var_dump($_POST);
if ( !current_user_can( 'edit_user', $user_id ) )
return false;
global $wpuef_user_model;
if(isset($_POST['wpuef_options']))
$wpuef_user_model->save_fields($_POST['wpuef_options'], $user_id );
}
public function register_extra_fields ( $user_id )
{
if($this->user_already_registered )
return ;
}
$this->user_already_registered = true;
global $wpuef_user_model;
if(isset($_POST['wpuef_options']))
$wpuef_user_model->save_fields($_POST['wpuef_options'], $user_id );
Excuse me but is unreadable. What do you mean that you are not good in making php file change?
How then have you performed the customization you implemented until now? To restore them you just have to implement the same modification you implemented before updating the plugin.
Note that I cannot provide support on how customizing the plugin, customizing the software invalidates the support. The software has to be used as it is. Support is meant to report bug or issue, not to have a step by step guide on how customizing it. I can eventually give only suggestions or point the direction, then it is you (or your developer) to implement them.
I need a date format of ‘yyyy/mm/dd’ (Japanese format). Would you please consider add this option? Meanwhile, how can I modify one of available formats?
Hi,
thank you for suggestin! I’ve released the new 13.3 vesion that now has that format!
To update: You can manually download the new version via codecanyon or receive as automatic update by installing and configuring the Envato updater plugin: https://goo.gl/pkJS33 (here the guide that explains how to configure: https://envato.com/market-plugin/ ).
At last but not least…If you enjoyed my support and/or my plugin please consider leaving the 5 stars, I would really appreciate!
(to leave a rating: go to your profile page, click on “Downloads” and from there you can rate to your purchases)
I would like to use this plugin to delete / modify the ‘Membership register’ and ‘myaccount> Account details’ fields. Is it possible?
I’m sorry but unfortunately the plugin hasn’t such a feature 
Hello,
I’m looking for displaying a custom field in a PDF invoice. PDF invoices are generated with a plugin, where I can custom my bill with custom field with things like that (demo example) : <?php $this->custom_field(‘custo_field’, ‘Custom field:’); ?>
I tried with : <?php $this->custom_field(‘wpuef_options[c2]’, ‘Custom field:’); ?> <?php $this->custom_field(‘c2’, ‘Custom field:’); ?>
But it dœsn’t work, I am not sur of the field name. Maybe you could help me on this point ?
Thanks in advance for your help 
Hello,
unfortuantely I do not know to which functions you are referring.
Could you provide a more detailed description fo the custom_field() function? and why you are tring accessing it using the ‘wpuef_options[c2]’, ‘c2’, ‘Custom field:’ and ‘custo_field’ parameters?
Note that if you enabled the option to store extra field values into orders meta, they will be saved using the following name [wpuef] {field_label} where {field_label} is the label you assigned to the field.
If you did not enabled the “save to order metadata” option, field values are stored in the user profile meta. The metadata key has the following format wpuef_cid_{field_id} where {field_id} is the id of the field (example: c2, c15, ...).
Thank you for your reply.
I’m refering to this plugin :https://docs.wpovernight.com/woocommerce-pdf-invoices-packing-slips/displaying-a-custom-field/#in-a-custom-template So I would like to display the custom field of your plugin, from where I created 2 fields : - “TVA intracommunautaire”, which is id: c2 - “Inscription Newsletter”, which is id: c6
I am not sure of the value of your custom field to call ?
Hope I am clear enough, excuse my poor english 
yes ok. On how to retrieve a field value from an user profile you can refere to the retrieve and save fields data programmatically paragraph in the plugin page.
To retrieve you can use this code snippet:$field_data = wpuef_get_field($field_id, $user_id); $field_value = $field_data->value;
The $field_id is the field id and the $user_id is the id of the user profile for which you want to retrieve the value. Replace those values with the ones you need!
Thank you for your reply !
You’re welcome 
P.S.
If you enjoyed my support and/or my plugin please consider leaving the 5 stars, I would reeeeeally appreciate! 
(to leave a rating: go to your profile page, click on “Downloads” and from there you can rate to your purchases)
Hi There, We are using this plugin for more than a year and working great all the time. We have an issue this time we updated to latews version, after doing that, if you search for any customer in wordpress users, it says no users found. i uninstalled this plugin and checked, search works absolutely fine. Please look into this bug.
Hi,
thank you for reporting the issue. It was caused by the “search by user extra field” feature. It has been disabled in the latest 13.2 version that I’ve released. Please update, Thank you!
I would like to get reimbursed for this plugin as I was unable to use it. Everytime I installed it onto my website it would crashed the site with a 500 server error.
We tried removing other plugins to try and alleviate this issue but could not find what was causing the problem. In the end we ended up hard coding the site to get what we needed, therefore we do not need this plugin.
If you send me via private message (click on my name and then use the low-right box) the following data:
- you email address
- Full admin access to the wp-admin area
- a FTP access
- a detailed step by step guide on how to experience the issue
I’ll be glad to investigate further to see if it is possible to determine the cause of the issue. 500 server error is a generic error that can be cause by several causes. Those cause can be related also to a server misconfiguration or server issues (so not depending by the plugin code).
Unfortuantely a refund cannot be granted just for claiming an not verified issue and after the software has been downloaded.