使用WP_User对象的简码

时间:2018-08-02 03:12:54

标签: php wordpress shortcode user-object

我正在尝试创建WP短代码,该代码将为Wordpress用户插入个人资料表单。

我想调用以下操作: <?php do_action( 'bbpnns_digest_show_profile_form', $user); ?> 其中$user是要显示的用户的WP_User对象。

这是我到目前为止的内容,但是没有用(我收到“ Bad 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缺少了一些东西。感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

感谢@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' );

答案 1 :(得分:0)

我已经测试了您的短代码及其正常工作。

请尝试传递用户ID,而不是用户登录名。由于用户登录有时会包含空格,特殊字符和功能参数可能无法接受。 因此,请尝试使用用户ID。

$ user = $ current_user-> ID;

如果您需要更多帮助,请告诉我。.

我很乐意为您服务。

谢谢