У меня две разные роли пользователя на моем веб-сайте: работодатель и кандидат. У каждого был свой профиль, но профиль кандидата должен видеть только работодателей и никого другого.
Итак, я хочу ограничение в Wordpress, например:
Работодатель МОЖЕТ видеть кандидата Кандидат НЕ МОЖЕТ видеть другой кандидат-кандидат МОЖЕТ видеть собственный профиль
Это контролируется плагином, но, похоже, он не работает ПОТОМУ ЧТО:
Работодатель МОЖЕТ видеть кандидата Кандидат МОЖЕТ видеть другого кандидата Кандидат МОЖЕТ 'Я вижу собственный профиль
В файле. php из профиля кандидата есть этот код:
<?php
if (!$show_candidate_public_profile) {
if ($candidate->get_public_account() || get_current_user_id() == $candidate->get_author_id()) {
$check = 1;
} else {
$check = 2;
}
} else {
if (is_user_logged_in()) {
if ($show_candidate_public_profile == 2 && get_current_user_id() == $candidate->get_author_id()) {
if ($user->is_employer() && $candidate->get_public_account()) {
$check = 3;
} else {
$check = 4;
}
} else {
if ($candidate->get_public_account() || get_current_user_id() == $candidate->get_author_id()) {
$check = 1;
} else {
$check = 2;
}
}
} else {
$check = 0;
}
}
и код результатов сразу после кода сверху:
if (!$check) {
?>
<div class="iwj-alert-box">
<div class="container">
<span>
<?php echo sprintf(__('You must be logged in to view this page. <a href="%s">Login here</a>', 'iwjob'), add_query_arg('redirect_to', $candidate->permalink(), $login_page_id)); ?>
</span>
</div>
</div>
<?php
} else {
if ($check == 2) {
?>
<div class="iwj-alert-box">
<div class="container">
<span>
<?php echo esc_html__('This profile is not public now.', 'iwjob'); ?>
</span>
</div>
</div>
<?php } elseif ($check == 4) {
?>
<div class="iwj-alert-box">
<div class="container">
<span>
<?php echo esc_html__('This profile is not public or only employers can see.', 'iwjob'); ?>
</span>
</div>
</div>
<?php } else {
?>
<div class="iw-parallax" data-iw-paraspeed="0.1" style="background-image: url('<?php echo esc_url($cover_image_url); ?>');"></div>
<div class="iw-parallax-overlay"></div>
<div class="content-top">
<div class="container">
<div class="info-top">
<div class="candidate-logo">
Проверка 3 - единственная проверка, показывающая профиль.
Я попытался изменить «&&» «||» "==", но я не могу понять, как работает этот logi c.
Так много php для меня слишком много. Я спросил создателя плагина, но я всегда жду 5 дней, чтобы ответить, и он мне нужен сейчас.
Я был бы очень рад, если бы кто-нибудь помог мне с этим.
Большое спасибо !
Мартин