Помогите подредактировать profile_view.tpl.php

InstantCMS 2.X
#1 29 июля 2021 в 11:24

Добрый день, подскажите пару моментов, в  шаблоне файле профиля profile_view.tpl.php

есть такая конструкция

<?php $user = cmsUser::getInstance(); ?> <?php if (cmsCore::getInstance()->uri_action == $user->id){ ?>

<div class=«avatar-update»>

<a href="<?php echo href_to('users', $profile['id'], 'edit'); ?>">Редактировать профиль</a>

</div>

Есть проблема когда присваиваю URL профилю вместо id, то перестаёт отображаться

 

И ещё немаловажный момент, как дописать сюда cmsCore::getInstance()->uri_action == $user->id условие чтобы например пользователи из группы новички (ид 3) не видели  эту строку редактировать профиль

#2 5 августа 2021 в 12:37

Я так понял у вас проблема в том, что все видят появляющийся блок на аватарке «Редактировать профиль» даже если они зашли на чужой профиль. Сам столкнулся с таким косяком и вот решение. в файле \templates\«ваш шаблон»\controllers\users\profile_view.tpl.php

Ваш код 

  1. <?php $user = cmsUser::getInstance(); ?> <?php if (cmsCore::getInstance()->uri_action == $user->id){ ?>
  2.  
  3. <div class=&laquo;avatar-update&raquo;>
  4.  
  5. <a href="<?php echo href_to('users', $profile['id'], 'edit'); ?>">Редактировать профиль</a>
  6.  
  7. </div>

 Меняем на этот

  1. <?php if ($profile['id'] == $user->id) { ?>
  2. <div class="avatar-update">
  3. <a href="<?php echo href_to('users' , $profile['id'] , 'edit'); ?>">Редактировать профиль</a>
  4. </div>
  5. <?php } ?>

 

И все, теперь этот блок будет видеть человек  только  при просмотре своего профиля.

Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.