我在哪里实现这种用户元数据的显示,以及如何将其放入表中?

时间:2019-03-04 作者:Ali Mosallaei

因此,我有下面的代码,可以提取当前登录用户的用户元数据。

<?php
$current_user = wp_get_current_user();
echo \'Username: \' . $current_user->user_login . \'<br />\';
echo \'User email: \' . $current_user->user_email . \'<br />\';
echo \'User first name: \' . $current_user->user_firstname . \'<br />\';
echo \'User last name: \' . $current_user->user_lastname . \'<br />\';
echo \'User display name: \' . $current_user->display_name . \'<br />\';
echo \'User ID: \' . $current_user->ID . \'<br />\';
?> 
现在的问题是,我不知道把这个代码放在哪里(我知道,很尴尬)。我不能把它放在页面上,因为这样PHP代码就会显示出来,而不会变成显示任何东西。我想把它放进去functions.php, 但是,没有与此相关的短代码。。。

我的第二个问题是如何将其实现到表中?假设USERNAME是一行,它旁边应该显示当前用户的用户名。我知道如何在Wordpress中编写一个表,但我不知道如何在其中实现我的代码。

任何帮助都将不胜感激!

谢谢

1 个回复
最合适的回答,由SO网友:Qaisar Feroz 整理而成

如果我正确理解了您的问题,您希望在前端的页面上显示此数据。在这种情况下,您可以在主题文件夹中创建页面模板,也可以在函数中创建短代码。php。下面是一个可能会有所帮助的快捷代码。

add_shortcode(\'currentuser\', \'shortcode_current_user\');

function shortcode_current_user($atts){
   ob_start();
   $current_user = wp_get_current_user();
   echo \'<table>\';
       echo \'<tr><td>Username: </td>\' . \'<td>\'.$current_user->user_login . \'</td></tr>\';
       echo \'<tr><td>User email: \' .\'<td>\'. $current_user->user_email . \'</td></tr>\';
       echo \'<tr><td>User first name: \' . \'<td>\'.$current_user->user_firstname . \'</td></tr>\';
       echo \'<tr><td>User last name: \' .\'<td>\'. $current_user->user_lastname . \'</td></tr>\';
       echo \'<tr><td>User display name: \' .\'<td>\'. $current_user->display_name . \'</td></tr>\';
       echo \'<tr><td>User ID: \' .\'<td>\'. $current_user->ID . \'</td></tr>\';
   echo \'</table>\';

   return ob_get_clean();
}
现在,它可以在任何页面/帖子/小部件上使用,通过放置[currentuser]

相关推荐

Config.php issue in WordPress

最近在我的网站上遇到了一个问题。不知道这是什么时候发生的,怎么发生的。我在这个特定网站上的所有网页顶部都显示了以下消息。“注意:常量FS\\u CHMOD\\u DIR已在/home/mc4ebqy52sd6/public\\u html/khwajagharibnawaz中定义。组织/工作包配置。php在线101“网站名为khwajagharibnawaz。组织机构我是WordPress上的一个电枢,不过我看了一下配置。php文件和l01行只是一个文本行,说明以下内容:100*有关可用于调试的其他常数的