Я получаю связанную Catchable фатальную ошибку: объект класса WP_User не может быть преобразован в строку в /wp-includes/formatting.php в строке 766. Я нашел поток, который относится к https://wordpress.org/support/topic / catchable-фатальные ошибки объектны-класс из-wp_error-мог-не-быть преобразованы в строку-11
Я использую php, который, как я думаю, должен работать:
add_filter('gform_field_value_pm_first', 'populate_pm_first'); function populate_pm_first($value){ return $user_info = get_userdata(get_current_user_id()); $first_name = $user_info->first_name; echo "$first_name"; }
Ошибка, которую я получаю, касается formatting.php:
/ **
* Checks for invalid UTF8 in a string. * * @since 2.8.0 * * @param string $string The text which is to be checked. * @param boolean $strip Optional. Whether to attempt to strip out invalid UTF8. Default is false. * @return string The checked text. */ function wp_check_invalid_utf8( $string, $strip = false ) { $string = (string) $string; if ( 0 === strlen( $string ) ) { return ''; }
Я думаю, что синтаксис:
$first_name = $user_info->user_firstname;
Возможно, стоит попробовать. Надеюсь это поможет 🙂
Вам нужно вернуть имя пользователя как строку вместо целого object
пользователя.
add_filter('gform_field_value_pm_first', 'populate_pm_first'); function populate_pm_first($value) { $user_info = get_userdata(get_current_user_id()); $first_name = $user_info->first_name; return $first_name; // return user name string //echo "$first_name"; }