Forums / National / Russian / Тех. поддержка / Теги PHP

Вопрос по коду

Kailo
#1 2016-11-05 17:48

В теме Немезис в части main главной страницы в правой колонке реализован блок ссылок администратора - при его входе:

<!-- IF {PHP.usr.isadmin} -->
            <div class="block">
                <h2 class="admin">{PHP.L.Admin}</h2>
                <ul class="bullets">
                    <li><a href="{PHP|cot_url('admin')}">{PHP.L.Adminpanel}</a></li>
                    <li><a href="{PHP|cot_url('users')}">{PHP.L.Users}</a></li>
                    <li><a href="{PHP|cot_url('users','m=profile')}">{PHP.L.Profile}</a></li>
                    <!-- IF {PHP.cot_modules.pfs} -->
                    <li><a href="{PHP|cot_url('pfs')}">{PHP.L.PFS}</a></li>
                    <!-- ENDIF -->                    
                </ul>
            </div>
            <!-- ENDIF -->

Если пользователь не админ, этого блока он не видит.

Есть желание сделать такой же блок ссылок на этом месте не только для администратора - для него уже вставил туда ссылки на ЛС, контактные сообщения, выход, чтобы не лезть вниз страницы. Какой тег нужно использовать для юзера? Попробовал как в футере - начало гость, конец гость, начало юзер, конец юзер, так в хидере работает, а в майне нет. Вообще никакого вывода.

 

Macik
#2 2016-11-05 22:33

Конкретные блоки `<!-- BEGIN: XXXX -->` имеют строгую принадлежность к конкретному шаблону, и как правило, обрабатываются только внутри них. 

Для подобных условных блоков лучше использовать соотв. условный оператор.

Проще всего проверить ID пользователя → для гостя он будет равен 0, для залогиненого пользователя он будет > 0.

<!-- IF {PHP.usr.id} > 0 -->
   тут блок для авторизованных пользователей
<!-- ELSE -->
   тут блок для гостей
<!-- ENDIF -->

 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Kailo
#3 2016-11-06 03:18

Так для админа два блока, получается, выведет - для него самого и для юзверя...А админ у меня и 1 есть, и 5, может, еще будет. Оформление и ссылки тоже для админа и юзера разные. Может, ид группы как-то обозначить? Для гостей вообще ничего не надо, им пользователей, ЛС и профиль не нужно смотреть.

Добавлено 22 минуты спустя:

А вот так будет работать?

<!-- IF {PHP.usr.isadmin} -->
Блок админа
<!-- ELSE -->
    блок для юзера
<!-- ENDIF -->

То есть юзер не гость, и выйдет один блок - или админа, или юзера.

This post was edited by Kailo (2016-11-06 03:43, 7 years ago)
agir
#4 2016-11-06 11:25
<!-- IF {PHP.usr.id} > 0 --> 
<!-- IF {PHP.usr.isadmin} -->
Блок админа
<!-- ELSE -->
    блок для юзера
<!-- ENDIF -->   
<!-- ELSE -->
   тут блок для гостей
<!-- ENDIF -->

 

Denisbox
#5 2016-11-06 20:40

<!-- IF {PHP.usr.isadmin} OR {PHP.usr.maingrp} == 4 -->
Информация только для админа и зарегистрированных пользователей
<!-- ELSE -->
Для остальных
<!-- ENDIF -->

contact: fonts (at) otlab . ru
Kailo
#6 2016-11-08 23:47

Работает только так:

<!-- IF {PHP.usr.id} > 0 -->
общие ссылки админа и юзера
<!-- IF {PHP.usr.isadmin} --> 
ссылки только админа
<!-- ENDIF --> 
<!-- ENDIF -->                    

Спасибо за помощь.