There are no entries in the error log that would correlate with the issue, nothing is captured after saving. I see a few of these:
May 10, 2017 10:09 pm | spaErrError | 1 | security
Nonce Security Alert
profile: failed nonce check
But this doesn't show up when I save a profile.
All other fields work just fine and update fine, also in combination with URL. And like I said, the URL updates in the WP profile when it's updated in S:P.
From my perspective it looks like S:P, at least my install, writes the URL into its own field in addition to updating user_url. And that field isn't updating resp. written to. Not sure what field it would write to though.
Did some more digging. Here's what seems to be the problem:
There is a _usermeta meta_key "user_url" in our database, which for my profile shows "http://poetryofthemoment.com". It seems that's what S:P is pulling for some reason, maybe perhaps due to a plugin we used a while ago that offered additional profile fields and that S:P was pointed to - in addition to the standard _users "user_url". I just can't remember how and when and where. I looked at my previous topics and don't see anything that fits the bill. _users "user_url" does get updated properly if URL is updated in S:P, every single time. But that _usermeta meta_key "user_url" doesn't.
Confirmed that's the issue. I just went into the database and changed _usermeta > meta_key > user_url to "http://alternatewords.com" and that's what shows in the S:P profile now.
So, long story short: Profile > Edit Profile > Website displays _usermeta > meta_key > user_url but it updates _users > user_url. How do I get it to display _users > user_url, again? I have no clue where that's defined, looked through the S:P child template I am using and my WP theme and see nothing there.
sorry, you have lost me a bit...
simple press uses (and has always used) the wp_users > user_url field in the database for storing that profile field... which is also what wp gets the data from...
so if your site is pulling it from user_meta, that means you have either a plugin or a theme doing that... which perhaps is what you are saying (though I have been reading it the other way)...
its a pluggable function... you could search plugins or your wp theme for:
which is the function wp uses... it can be replaced by any plugin or theme..
Let me try again:
Our site uses wp_users > users_url, on all instances, there's no plugin or theme that changes that.
Here's a sequence of events:
- Profile > Edit Profile > Website does NOT point to wp_users > user_url but to wp_usermeta > meta_key > user_url
- Updating Profile > Edit Profile > Website DOES update wp_users > user_url
- Reloading Profile > Edit Profile > Website hence keeps showing whatever value is in wp_usermeta > meta_key > user_url, which is not being updated
So somewhere must be something that changes Simple Press's behavior to display wp_usermeta > meta_key > user_url instead of wp_users > user_url. It's ONLY Simple Press, nothing else.
Here's a thread of mine that seems to pertain to this: https://simple-press.com/suppo.....p-profile/.
However, none of the changes mentioned in that thread exist anymore, they had all been undone sometime ago.
To be sure I went ahead and deactivated ALL plugins on our site, switched to the standard WP theme and tried again - same outcome. So it's not a WP plugin and it's not our theme.
I also turned off all SP plugins, switched to SP Default theme (not the child theme I created) - same outcome.
I am at wits end at this point.
Could there be something in the database that would change SP's behavior?
so, think I have sorted this out... but it still comes down to something that has happened on your site...
unequivocally, when we save the profile, its stored in the users table, column user_url...
when we build the user profile data, we also grab all the user data from users table... then we grab all the user data from the usermeta table...
wp does not have usermeta entry of user_url... so the usermeta data is added to the user data.. in your case, since something defined a usermeta of user_url, rather than adding it to the user data, it overwrites the data from the users table...
what to do? depends on your situation....
if you still need this non standard usermeta entry for user_url, then you will need to hook into the sp profile generation at the end and put the profile user_url back to what it should be...
if you do not need this usermeta entry of user_url, then remove it... a simple query in phpmyadmin will do the trick... something like:
delete from wp_usermeta where meta_key = 'user_url';
that would clean them all up... just to be safe, I would make a db backup before doing that just in case 🙂