wordpress - 比较WordPress中的用户名和自定义字段
问题描述
我正在尝试根据登录用户和自定义字段值显示一条消息。如果登录用户和自定义字段值相同,则应显示“此页面已分配给您”
否则,它应该显示“此页面不是为您分配的”
我的代码是为此:
global $wp_query;
$postid = $wp_query->post->ID;
$getClient = get_post_meta($postid, 'clientName', true);
echo 'Client is : '.$getClient;
$current_user = wp_get_current_user();
echo '<br/>Username: ' . $current_user->user_login . '<br />';
if ($getClient !== $current_user){
echo 'this page is NOT assigned for you';
}
else {
echo 'this page is assigned for you';
}
当我转到页面时,如果用户名和自定义字段值相同,则显示:
Client is : cd_riffaz
Username: cd_riffaz
this page is NOT assigned for you
实际上它应该显示“ this page is assigned for you
”对吗?因为值是相同的。
为什么它不能按预期工作?
解决方案
您正在将 object ( $current_user
) 与 string进行比较$getClient
。
你应该做if ($getClient !== $current_user->user_login)
PS你可以做global $current_user;
而不是$current_user = wp_get_current_user();
推荐阅读
- vue.js - 如何从 vutify 数据表页脚编辑元素?
- binding - 如何使用绑定解除此自定义模式?
- javascript - 如何在数组 JavaScript 中查找嵌套对象的道具?
- node.js - vs-code 在普通节点项目中提供打字稿帮助
- javascript - React Native 中正文上方的注释文本
- java - 如何为 Docker 应用程序的 Jaspersoft 报告设置自定义货币符号
- javascript - 使用 ngFor 解析二维数组时在表格单元格中添加复选框
- spring-boot - Transactional 是否可以扩展到其他操作而不是 Spring 中的 db?
- xamarin.forms - Xamarin.Forms ERR_FILE_NOT_FOUND (file:///android_asset/Content/https://stackoverflow.com) 使用 HybridWebViewSample
- python - “合并”两个嵌套数组