Здравствуйте друзья, давно здесь не был ) . В общем в чем заключается проблема, я опишу начав из описания задачи.
На сайте установлен плагин JoomSport плагин не плохо справляется со своими задачами и в общем всем устраивает. Но игроки (которые создаются при помощи плагина JoomSport) фактически не являются пользователями WordPress, а являются как бы простым типом записей. Дак вот, мне необходимо реализовать регистрацию игроков, что как бы не совсем вяжется (ну не чего нового в специфике нашей деятельности - в большинстве случаев приходится связывать не связуемое 🙂 ). Для решения данной задачи я написал (ну написал как бы инет я названия переменных поменял) данную функцию:
// Добавляем игрока на основе введенных данных регистрирующимся пользователем
// https://wp-kama.ru/hook/user_register
add_action( 'user_register', 'add_new_players_to_joomsport_plagun', 10, 1 );
// Захватываем ID зарегистрировавшегося пользователя
// $firstname = get_user_meta($user_id,'first_name',true);
//Here you can update user information after they registered
function add_new_players_to_joomsport_plagun( $user_id ) {
if ( isset( $_POST['first_name'] ) ) {
update_user_meta($user_id, 'first_name', $_POST['first_name']);
update_user_meta($user_id, 'last_name', $_POST['last_name']);
};
$user_info = get_userdata($user_id);
$user_meta_info = get_user_meta($user_id);
$username = $user_info->user_login;
$first_name = $user_info->first_name;
$last_name = $user_info->last_name;
$my_post = array(
'post_title' => $username,
'post_content' => $last_name.' '. $first_name .' '.$Otchestvo_name,
'post_status' => 'publish',
'post_author' => 1, //If to assign post to the currently registered user otherwise put 1
'post_type' => 'post'
);
// Insert the post into the database
$_post_id = wp_insert_post($my_post);
if ($_post_id) {
return 'post inserted';
}
};
Что делает данная функция? Она создает запись (ну это для тестинга, в будущем она будет создавать кастом тайп "Player") в произвольные поля которой будут вставлены данные регистрирующегося пользователя.
Теперь самое интересное, как бы я не пробовал у меня не получается захватить мета данные которые введены в meta поля зарегистрировавшего пользователя (meta key проверен все верно). Прошу помощи так как порчено много времени, но результата пока не добился. У меня возникает ощущение что функция пытается захватить мета поля которых как бы еще нет. Всем ответившим огромное спасибо.
Fatal error: Uncaught Error: Call to undefined function ads_get_box() in /var/www/www-root/data/www/codeseller.ru/wp-content/themes/codeseller/includes/adv.php:15 Stack trace: #0 /var/www/www-root/data/www/codeseller.ru/wp-includes/class-wp-hook.php(310): add_adv_content_after_first_forum_post('pfm-single-post...', '/var/www/www-ro...') #1 /var/www/www-root/data/www/codeseller.ru/wp-includes/class-wp-hook.php(334): WP_Hook->apply_filters('', Array) #2 /var/www/www-root/data/www/codeseller.ru/wp-includes/plugin.php(517): WP_Hook->do_action(Array) #3 /var/www/www-root/data/www/codeseller.ru/wp-content/plugins/wp-recall/functions/files.php(57): do_action('rcl_include_tem...', 'pfm-single-post...', '/var/www/www-ro...') #4 /var/www/www-root/data/www/codeseller.ru/wp-content/plugins/wp-recall/add-on/prime-forum/functions-templates.php(117): rcl_include_template('pfm-single-post...', '/var/www/www-ro...') #5 /var/www/www-root/data/www/codeseller.ru/wp-content/plugins/wp-recall/add-on/prime-forum/themes/prime-first/templates/pfm in /var/www/www-root/data/www/codeseller.ru/wp-content/themes/codeseller/includes/adv.php on line 15