Removing user fields

时间:2012-08-29 作者:Mike Cole

Possible Duplicate:
How To Add Custom Form Fields To The User Profile Page?

我正在删除函数中包含以下代码的一些用户字段。php文件:

function adjust_contact_methods( $contactmethods ) {
  unset($contactmethods[\'aim\']);
  unset($contactmethods[\'jabber\']);
  unset($contactmethods[\'yim\']);
  unset($contactmethods[\'twitter\']);
  return $contactmethods;
}
add_filter(\'user_contactmethods\',\'adjust_contact_methods\',10,1);
我想另外删除网站和Google+字段,但我找不到正确的关键字。有什么建议吗?

2 个回复
最合适的回答,由SO网友:Mike Cole 整理而成

unset($contactmethods[\'googleplus\']);
是我需要添加到上述代码中的内容。

SO网友:Upeksha

以下函数来自WordPress 3.4.1默认安装源文件“user”。php\'从第1481行开始。

/**
 * Set up the default contact methods
 *
 * @access private
 * @since
 *
 * @param object $user User data object (optional)
 * @return array $user_contactmethods Array of contact methods and their labels.
 */
function _wp_get_user_contactmethods( $user = null ) {
    $user_contactmethods = array(
        \'aim\' => __(\'AIM\'),
        \'yim\' => __(\'Yahoo IM\'),
        \'jabber\' => __(\'Jabber / Google Talk\')
    );
    return apply_filters( \'user_contactmethods\', $user_contactmethods, $user );
}
其他字段可能已设置为vi addfilter挂钩。

add_filter(\'user_contactmethods\', \'my_user_contactmethods\');  

function my_user_contactmethods($user_contactmethods){  

  $user_contactmethods[\'twitter\'] = \'Twitter Username\';  
  $user_contactmethods[\'facebook\'] = \'Facebook Username\';  

  return $user_contactmethods;  
}
$user_contactmethods 是一个数组。

请尝试以下代码在其中一个页面中输出数组。

echo "<pre>";
print_r($user_contactmethods);
echo "</pre>";
您将看到一个数组。找出与Google Plus相关的密钥并将其取消设置。

unset($contactmethods[\'YOUR_GOOGLE_PLUS_KEY\']);

结束