如何在WordPress页面显示当前用户信息?代码显示异常修复
修复WordPress用户邮箱显示异常问题
你的代码本身语法没问题,但出现Email: user_email; ?>这样的输出,说明PHP代码没有被服务器解析,直接作为纯文本输出了,以下是具体修复方案:
核心原因
服务器仅会解析扩展名是.php的文件中的PHP代码,如果你的文件扩展名是.html,或者没有在WordPress的模板体系中使用PHP代码,就会出现这种情况。
修复步骤
1. 确保文件使用PHP扩展名
把你的页面文件扩展名改成.php(比如profile.php),而不是.html。服务器默认只会处理.php文件里的PHP逻辑,.html文件会直接把所有内容当成静态文本输出。
2. 在WordPress主题模板中正确嵌入代码
如果是在WordPress的用户个人资料页面显示,推荐用主题模板的方式实现:
- 找到当前主题的
functions.php,或者创建一个自定义页面模板(比如page-user-profile.php) - 在模板文件中添加以下代码(确保在WordPress的上下文环境中):
<?php // 先判断用户是否登录 if ( is_user_logged_in() ) { $current_user = wp_get_current_user(); ?> <p>Email: <?php echo esc_html( $current_user->user_email ); ?></p> <?php } else { echo '<p>请先登录查看个人信息</p>'; } ?>
这里添加
esc_html()是为了避免XSS安全风险,规范输出用户数据;同时增加登录判断,避免未登录状态下出现异常。
3. 检查服务器PHP解析配置(可选)
如果以上步骤都完成后仍未解决,可能是服务器未开启PHP文件解析功能,联系主机服务商确认PHP环境正常,且.php文件能被正确解析。
内容的提问来源于stack exchange,提问作者Ben Derks
相关产品推荐
相关产品推荐

