Я пытаюсь создать шорткод WP, который вставит форму профиля для пользователя WordPress.
Я хочу вызвать следующее действие:
<?php do_action( 'bbpnns_digest_show_profile_form', $user); ?>
куда $user
является объектом WP_User для отображаемого пользователя.
Вот что у меня есть, но это не работает (я получаю сообщение «Плохой пользователь»):
function custom_shortcode_sc() {
$current_user = wp_get_current_user ();
$user=$current_user->user_login;
do_action( 'bbpnns_digest_show_profile_form', $user);
}
add_shortcode( 'custom_shortcode', 'custom_shortcode_sc' );
Я думаю, что я близок, но что-то упустил при правильном вызове $ user. Спасибо за вашу помощь!
Спасибо @yogesh за простое решение, благодаря которому мой код заработал. Вот окончательный код для справки:
function custom_shortcode_sc() {
$current_user = wp_get_current_user ();
$user = $current_user->ID;
do_action( 'bbpnns_digest_show_profile_form', $user);
}
add_shortcode( 'custom_shortcode', 'custom_shortcode_sc' );
Я проверил ваш шорт-код и он нормально работает на моем конце ..
Пожалуйста, попробуйте передать идентификатор пользователя, а не логин пользователя. Поскольку некоторое время пользовательский логин содержит пробел и специальный символ и параметр функции могут не принять это ..
так что попробуйте идентификатор пользователя ..
$ user = $ current_user-> ID;
Если вам нужна дополнительная помощь, пожалуйста, дайте мне знать ..
Я буду рад помочь вам..
Благодарю вас