Jump to content

Featured Replies

Posted
comment_185150

Мафиозники,парни!Напомните,пожалуйста. Как составить правильно условие if для вывода определенной инфы только на главной странице.

  • Author
comment_185152
2 минуты назад, Zero108 сказал:
<?php if($isHome): ?>
<div class="container-fluid">
<p>Слава Матрице!</p>
</div>
<?php endif; ?>

 

Благодарю,конечно,за подсказку,но такой метод я знаю,который кстати в таком виде не фурычит...

Хотелось бы с помощью ipsовского кода типа {{if .....}} инфа {{else}} другая инфа {{endif}}

  • Author
comment_185158

Тему можно закрыть,решена.

Решил так:

в файле core/front/global/globalTemplate.html строку

{template="breadcrumb" app="core" group="global" params="'top'"}

привел к такому виду

{{if \count( \IPS\Output::i()->breadcrumb )}}
{template="breadcrumb" app="core" group="global" params="'top'"}
{{endif}}

Теперь "хлебные крошки" (breadcrumb) отображаются везде кроме главной страницы.

Главная страница

1631893645_2022-08-1522-31-02.thumb.png.27ebe27033b3dee865c28efa70b4d0a5.png

 

Другие страницы

1452434200_2022-08-1522-30-23.thumb.png.fcbd64144bd8aeec51a6216f5d88a3b7.png

 

2020865689_2022-08-1522-30-47.thumb.png.8cc9c4f808da9ead9a74138777ee8a7b.png

Ну вот как-то так.

comment_185159
<div class="ipsHide">ваш контент</div>

Не будет показываться нигде

а в css прописываем

body[data-pageapp="cms"] .1 {
    display: block;
}

Вариант 2 - еще лучше/ Через переменную $location , которая в GlobalTemplate есть.

{{if $location['app'] == 'cms'}}
    <div class="1"></div>
{{endif}}


Скрыть на страницах, а показать в полной новости например

Здесь сложнее, т.к. и $location['app']  и $location['module']  будут одинаковыми. Но есть  выход, называется bodyClasses .

В шаблоне  forums->front->index->forumRow добавляем bodyClasses, например вот так 

{{\IPS\Output::i()->bodyClasses[] = 'MainForum';}}


И тогда у нас body уже имеет доп. класс fullNews / Соответственно или через css  body.fullNews или чекрез проверку существования класса

{{if !in_array('MainForum', \IPS\Output::i()->bodyClasses )}}

твой код

{{endif}}

Ну я думаю поймешь как сделать проверку боди на главной форума.

  • Author
comment_185160
17 минут назад, andros0789 сказал:
<div class="ipsHide">ваш контент</div>

Не будет показываться нигде

а в css прописываем

body[data-pageapp="cms"] .1 {
    display: block;
}

Вариант 2 - еще лучше/ Через переменную $location , которая в GlobalTemplate есть.

{{if $location['app'] == 'cms'}}
    <div class="1"></div>
{{endif}}


Скрыть на страницах, а показать в полной новости например

Здесь сложнее, т.к. и $location['app']  и $location['module']  будут одинаковыми. Но есть  выход, называется bodyClasses .

В шаблоне  forums->front->index->forumRow добавляем bodyClasses, например вот так 

{{\IPS\Output::i()->bodyClasses[] = 'MainForum';}}


И тогда у нас body уже имеет доп. класс fullNews / Соответственно или через css  body.fullNews или чекрез проверку существования класса

{{if !in_array('MainForum', \IPS\Output::i()->bodyClasses )}}

твой код

{{endif}}

Ну я думаю поймешь как сделать проверку боди на главной форума.

Ахренеть решение! Мой способ кажется попроще все-таки,к тому же работает абсолютно по всему сайту и во всех приложениях(Страницы,Форумы и т.д) без каких-либо проверок и т.д.

Ну это лично мое мнение.

comment_185180
4 часа назад, AHristich сказал:

Ахренеть решение! Мой способ кажется попроще все-таки,к тому же работает абсолютно по всему сайту и во всех приложениях(Страницы,Форумы и т.д) без каких-либо проверок и т.д.

Ну это лично мое мнение.

3 строчки это ахренеть какое сложное решение?😆 Ну ну

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.