首页 > php教程 > php手册 > Add and Remove Profile Fields to WordPress User?Fo

Add and Remove Profile Fields to WordPress User?Fo

WBOY
发布: 2016-06-06 20:08:57
原创
1067 人浏览过

The WordPress user profile screen allows you to set values for social services but some default services are irrelevant, namely AIM and Yahoo! IM; ?add to that the fact that Twitter and Facebook fields are missing. ?You quickly realize tha

The WordPress user profile screen allows you to set values for social services but some default services are irrelevant, namely AIM and Yahoo! IM; ?add to that the fact that Twitter and Facebook fields are missing. ?You quickly realize that the default form…needs work. ?WordPress provides a method for adding and removing profile fields. ?Let me show you how it works!

Filter Setup

The first step is creating a function in your functions.php file which will accept an array of profile keys and values:

function modify_contact_methods($profile_fields) {
	// Field addition and removal will be done here
}
add_filter('user_contactmethods', 'modify_contact_methods');
登录后复制

This function provides access to that important protected array. ?The returned value becomes the list of user profile fields.

Adding a Profile Field

Adding a new field, Twitter handle for example, includes adding a key to the passed in array, with a value which will act as the field label:

function modify_contact_methods($profile_fields) {
	// Add new fields
	$profile_fields['twitter'] = 'Twitter Username';
	$profile_fields['facebook'] = 'Facebook URL';
	$profile_fields['gplus'] = 'Google+ URL';
	return $profile_fields;
}
add_filter('user_contactmethods', 'modify_contact_methods');
登录后复制

Simply adding that key/value to the array adds a new field to the form.

Removing a Profile Field

Conversely, removing a key from said array removes a field from the user profile form:

function modify_contact_methods($profile_fields) {
	// Add new fields
	$profile_fields['twitter'] = 'Twitter Username';
	$profile_fields['facebook'] = 'Facebook URL';
	$profile_fields['gplus'] = 'Google+ URL';
	// Remove old fields
	unset($profile_fields['aim']);
	return $profile_fields;
}
add_filter('user_contactmethods', 'modify_contact_methods');
登录后复制

The code above removes the AIM field from the edit profile form.

Retrieving Custom Field Values

To retrieve custom field values, use the?get_the_author_meta method:

// Retrieve a custom field value
$twitterHandle = get_the_author_meta('twitter');
登录后复制

The ability to easily add profile form fields is awesome; ?super easy to do, no plugin required!

Read the full article at: Add and Remove Profile Fields to WordPress User Form

Treehouse

Sencha Conference

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板