Модератор форума: Yuri_G |
Сообщество uCoz » Мастерская uCoz » Дизайн: управление шаблонами » Условные операторы и системные коды (Особенности использования и интересные решения) |
Условные операторы и системные коды |
Условные операторы от новичка до профи
Если вы совершенно не понимаете, как работают условные операторы, и информации в панели управления для вас мало, то я попробую вам объяснить. Самое главное, чтобы вы настроились на то, что это очень просто. Так оно и есть! И так, начну с понятий. Условные операторы - это специальные коды-символы, которые могут выполнять какие-то сценарии. Вы можете создать совершенно новую опцию на своём сайте, которая собственно не предусмотрена панелью. Для начала нужно понять и привыкнуть к составляющим частям самого кода сценария, а это: Код <?if($код$)?> - это какое-то условие (код), которое говорит оператору с кем мы имеем дело и с чем работать. Заменяем мысленно фразой «Если есть»; Код <?else?>- это оператор которое выполнит то, что вы скажете, когда условие не соответствует названным. Мысленно заменяем фразой «Если нет»; Код <?endif?> - это конец условного оператора, мысленно заменяем «Конец»; Теперь разберем простой пример, который приводится в панели управления: (Из редактора страниц) Код <?if($USER_LOGGED_IN$)?>Hello, $USERNAME$<?else?>You are GUEST. Please register.<?endif?> Что это на нашем языке написано: «Если есть авторизированный пользователь, то «Привет его логину!», а если нет, «Привет Гостю!» и конец.» Почему? Откуда? Подробней! Что в данном коде использовалось: Мы оператору Код <?if($код$)?> Код $USER_LOGGED_IN$ Код <?if($USER_LOGGED_IN$)?> Получаем Код <?if($USER_LOGGED_IN$)?> Привет, $USERNAME$ <?else?> Привет Гость! Осталось закрыть всё это дело концовкой. Код <?if($USER_LOGGED_IN$)?> Привет, $USERNAME$<?else?>Привет Гость! <?endif?> Мы так же можем исключить Гостей совершенно и вывести информацию только зарегистрированным. Для этого просто не используем «Если нет». Получаем следующее: Код <?if($USER_LOGGED_IN$)?> Как хорошо, что вы зарегистрировались! <?endif?> То есть в данном случае фразу «Как хорошо, что вы зарегистрировались!» видят только те, кто вошёл под логином. Условием для работы операторов может быть любой код, который указан как работающий в каком-то модуле. В нашем случае (редактор страниц) могут примеры: Выход и вход: Код <?if($USER_LOGGED_IN$)?> <a href="$LOGOUT_LINK$">ВЫХОД</a> <?else?> <a href="$LOGIN_LINK$">ВХОД</a> <?endif?> Дни после регистрации: Код <?if($USER_LOGGED_IN$)?>Вы с нами уже$USER_REG_DAYS$ дней!<?else?>Пожалуйста, зарегистрируйтесь. <?endif?> И так далее. Условия для сценария можно изменить с помощью дополнительных возможностей, которые поддерживают операторы. Это знаки «=», «>», «<». При необходимости, приравненные разделяются вертикальной чертой. После знака, вы сообщаете оператору на кого направлен весь сценарий. Код <?if($код$='условие')?> Я это вижу <?else?> А вот я вижу это<?endif?> Или Код <?if($код$='условие')?> Самое главное, что я это вижу <?endif?> Пример: Код <?if($USER$='Дима')?> Дима, не забудь каждый день читать почту. <?endif?> То есть, на словах «Если есть логины вошедших и среди них есть Дима (='Дима'), то ему показать это…» То же самое касается групп, имён, пола, даты и всего что работает из кодов. Ещё примеры: Код <?if($USER$='Mike' or $USER$='Lola')?> Дима и Света, вот тайная ссылочка …. <?endif?> Группы: Код <?if($GROUP_ID$=3 or $GROUP_ID$=4)?>Модеры и Админы, все кликаем на рекламу тут… <?endif?> И т.д. Однако операторы могут работать друг в друге. Пример: Код <?if($USER_LOGGED_IN$)?> Привет $USER$! <?if($GROUP_ID$=3 || $GROUP_ID$=4)?> Не забываем кликать на рекламу!<?endif?><?else?>Пожалуйста, зарегистрируйтесь.<?endif?> Сценарий такой: «Если есть вошедшие, то Привет им, а если среди них есть Админы и Модеры, то добавить Кликаем на рекламу, если есть то кто не вошел, то просим зарегистрироваться и конец.» Самое главное хорошо подумать, как написать сценарий, какие для этого использовать коды и кому они будут направляться. Можно написать что угодно, что придет на ум. uCoz настолько гибкий, что мне иногда кажется, что он живой и создатели сами точно не знают сколько и чего будет работать. Ну всё есть! Самое главное подумайте. Теперь напоследок мини-инфо: Код * Сколько <?if($код$)?> столько и <?endif?> * <?else?> нужно, когда выводим инфу для тех, кто не соответствует условиям, в других случаях оно не нужно * Поддерживаются альтернативные условия or и and (||и [&&) * Поддерживается вложенность операторов * Поддерживается сравнение переменных друг с другом: <?if($VAR1$=$VAR2$)?> * При сравнении текст обязательно должен быть в кавычках: <?if($USER$='Mike') ?> Вопрос - ответ Цитата При создании новых страниц, закачанных через FTР, коды Код $SITE_NAME$, $LOGIN_LINK$, $LOGOUT_LINK$ Цитата Как сделать альтернативные условия, например для кода Код $GROUP_ID$ Код <?if($GROUP_ID$=5 or ($GROUP_ID$=4 and $USER$='Alex'))?>...<?endif?> Цитата Есть ли операторы, позволяющие пользователю видеть в списке категорий только те, в которые он имеет доступ? Цитата Код $GROUP_ID$ Цитата Есть код Код $USER_LOGGED_IN$ Код <?if(!$USER_LOGGED_IN$)?> |
Привет
НЕ ЗНАЮ В КАКУЮ ТЕМУ ПИСАТЬ Помогите сделать информер или скрипт честно не знаю что нужно использую каталог файлов фильтры все заняты нужно сделать колонку категорий со скролом ( можно без него)( типа примера операционные системы, язык интерфейса в модуле каталога файлов ) и прописать там категории 1, категория 2 и.т.д , чтоб можно было выбирать и выводились на страницу с материалом |
<?if($MESSAGE$)?><div align="center"><img src="$IMG_URL1$" title="Класс $TITLE$" /></div><br>$MESSAGE$ <?else?><div align="center"><b>$USER_FULL_NAME$</b></div><br> <div>Полный гайд класса <b>$ENTRY_TITLE$</b></div><br /> <div align="center"><h3>Временно отсутствует гайд по классу <b>$ENTRY_TITLE$</b>, если есть что <a href="$ADD_ENTRY_LINK$">добавить</a> - пишите, буду признателен.</h3></div> <?endif?> gugwap, вы не читаете ответы вам. Я уже писала, что принципиальный алгоритм вашего условия работает. Он проверен на тестовом сайте. А код <?IMAGE2?> это что за изобретение? В шаблонах работают коды $IMG_URL1..10$ или $IMG_SMALL_URL1..10$ и размеры их регулируются в настройках модуля. Так же в настройках модуля поле "полное описание материала" должно быть не обязательным и полностью пустым при добавлении материала, чтобы сработало условие. |
Здравствуйте,
Подскажите, пожалуйста, как можно при помощи условных операторов сделать 2 переменные картинки в шапке страницы сайта так, чтобы сами картинки загружались при создании страниц вместе с контентом центральной части страницы (хочется иметь на каждой странице свой вид шапки). Мой сайт-полигон http://neopraktik.ucoz.ru делаю шаблон для перевода на динамическую основу сайта http://altaj-inaki.com html код для header <body> <div id="wrapper"> <!-- <header> --> <div class="header"> <div class="top"> <div class="logo"> <div class="indent"> <div class="ikonka">$IMG_1$</div> <div class="date"> $WDAY$, $DAY$.$MONTH$.$YEAR$ </div> </div> </div> <div class="slogan"> <div class="indent"> <div class="s_name"> <span class="image">$IMG_2$</span> <box id="f3" > <h1 id="blink" class="prima">ПАСЕКА</h1> <h2 id="blink" class="secunda">"Приветливый Улей"</h2> </box></div> <div id="slogan"> <div class="userbox"><?if($USERS_ON$)?><?if($USER_LOGGED_IN$)?>You logged in as <a href="$PERSONAL_PAGE_LINK$" title="Profile page"><b>$USERNAME$</b></a> • Group "<u>$USER_GROUP$</u>"<?else?>Hello <b>$USERNAME$</b><?endif?><?endif?><?if($USERS_ON$)?><?if($USER_LOGGED_IN$)?> • <a href="$PERSONAL_PAGE_LINK$">Profile page</a><?else?> • <a href="$REGISTER_LINK$">Register now</a><?endif?><?endif?><?if($USERS_ON$)?><?if($USER_LOGGED_IN$)?> • <a href="$LOGOUT_LINK$">Log out</a><?else?> • <a href="$LOGIN_LINK$">Log in</a><?endif?><?endif?></div></div></div> </div> </div> <div class="clr"></div> <div id="Menu1"> <ul id="menu"> <li><a href="http://altaj-inaki.com">Главная</a></li> <li><a href="karta.html">Карта сайта</a></li> <li><a href="paseka.html">Пасека</a></li> <li><a href="lezheboki.html">Лежебоки</a></li> <li><a href="inaki.html">Инаки</a></li> <li><a href="http://inaki.ucoz.ru/publ/pasechnaja_lavochka/2">Для Вас</a></li> <li><a href="druzja.html">Друзья</a></li> <li><a href="http://inaki.ucoz.ru/gb/">Роевня</a></li> </ul> </div> </div> <div id="clear1"></div> <!-- </header> --> У меня при включенном конструкторе редактируется только контент центральной части. Можно ли как-то так составить условие оператора, чтобы картинки увязывались с url странички и загружались при вводе контента? Сообщение отредактировал Metafor - Среда, 09 Июл 2014, 09:22:14
|
Доброго времени суток, форумчане.
Возник вопрос: как должен выглядеть код выводящий следующее - Код <?if($USER_ONLINE$='ADMIN')?>1<?else?>2<?endif?> Есть ли такой код? или можно его собрать из других |
Вансан, это логин.
Везде должен выводится код. Может будет проще если я объясню: Цитата У меня есть интернет магазин и физический магазин. Во на сайте хочу сделать такую вещь, сделать пользователя и назвать его MAGAZIN, и залогинится на компе в физическом магазине, когда буду приходить на работу буду включать комп а соответственно и сайт, где и залогинен. Поставить условие если юзер MAGAZIN онлайн то выводить картинку "Магазин открыт", а если не в сети то "Закрыто". PS режим работы есть, но бывает задерживаемся на работе, а так люди глянули на сайте что открыто и зашли к нам. И делать скрипт которой по времени или в ручную включает ту или иную картинку тоже нет смысла, так как забуду про нее, а человек увидит что магаз открыт, приедет, а он закрыт. |
Здравствуйте народ, может мне кто либо помочь!!! Я очень слабо понимаю этот язык.... вставил в первый контейнер новостной блок, (новости в таком виде как они у меня на сайте сейчас., меня очень даже
устраивают) думал этот блок будет отображаться на всех страницах, у меня так отбражается переводчик, статистика. и т.п, я эти блоки также вставил в первый контейнер! Так вот почему то новостей не видно в гостевой книге, и в фотоальбоме отбражается ни так, как на главной и остальных??? Пробовал в гостевую и фотоальбом помещать этого оператора... скорей всего не так делал как надо, или вообще нужно что то другое, <?if($CONTENT$)?><?endif?>Вообщем запутался окончательно, прошу подсказки!!! Вот мой сайт: http://byhta-troiza.ru/ и если можно простым языком, всем заранее большое спасибо... |
Привет!!
Подскажите, как вывести результат математического вычисления двух переменных $ORDER_DISCOUNT$+$ORDER_AMOUNT_RAW$ - это переменные с магазина означающие сумму скидки и сумму с учетом скидки (т.е. нужно первоначальную получить) Т.е. при значениях 2 и 3, выводилось "5", а не "2+3" byhtatroiza, Вам, насколько я понимаю, нужно в настройке дизайна найти гостевую книгу, и туда в нужное место (перед $BODY$ видимо) воткнуть информер новостей $LAST_NEWS$. Сообщение отредактировал levinson - Вторник, 22 Июл 2014, 21:55:05
|
Имеется быдло код:
Код <?if $URI_ID$="ldCat307" || $URI_ID$="ldCat322" || $URI_ID$="ldCat323" || $URI_ID$="ldCat324" || $URI_ID$="ldCat325" || $URI_ID$="ldCat326" || $URI_ID$="ldCat327" || $URI_ID$="ldCat328" || $URI_ID$="ldCat329" || $URI_ID$="ldCat330" || $URI_ID$="ldCat331" || $URI_ID$="ldCat332" || $URI_ID$="ldCat333" || $URI_ID$="ldCat334" || $URI_ID$="ldCat335" || $URI_ID$="ldCat336" || $URI_ID$="ldCat337" || $URI_ID$="ldCat338" || $URI_ID$="ldCat339" || $URI_ID$="ldCat340" || $URI_ID$="ldCat341" || $URI_ID$="ldCat342" || $URI_ID$="ldCat343" || $URI_ID$="ldCat344" || $URI_ID$="ldCat345" || $URI_ID$="ldCat346" || $URI_ID$="ldCat347" || $URI_ID$="ldCat348" || $URI_ID$="ldCat349" || $URI_ID$="ldCat350" || $URI_ID$="ldCat351" || $URI_ID$="ldCat352" || $URI_ID$="ldCat353" || $URI_ID$="ldCat354" || $URI_ID$="ldCat355" || $URI_ID$="ldCat356" || $URI_ID$="ldCat357" || $URI_ID$="ldCat358" || $URI_ID$="ldCat359" || $URI_ID$="ldCat360" || $URI_ID$="ldCat361" || $URI_ID$="ldCat362" || $URI_ID$="ldCat363" || $URI_ID$="ldCat364" || $URI_ID$="ldCat365" || $URI_ID$="ldCat366" || $URI_ID$="ldCat367" || $URI_ID$="ldCat368" || $URI_ID$="ldCat369" || $URI_ID$="ldCat370" || $URI_ID$="ldCat371" || $URI_ID$="ldCat372" || $URI_ID$="ldCat373" || $URI_ID$="ldCat374" || $URI_ID$="ldCat375" || $URI_ID$="ldCat376" || $URI_ID$="ldCat377" || $URI_ID$="ldCat378" || $URI_ID$="ldCat379" || $URI_ID$="ldCat380" || $URI_ID$="ldCat381" || $URI_ID$="ldCat382" || $URI_ID$="ldCat383" || $URI_ID$="ldCat384" || $URI_ID$="ldCat385" || $URI_ID$="ldCat386" || $URI_ID$="ldCat387" || $URI_ID$="ldCat388" || $URI_ID$="ldCat389" || $URI_ID$="ldCat390" || $URI_ID$="ldCat391" || $URI_ID$="ldCat392" || $URI_ID$="ldCat393" || $URI_ID$="ldCat394" || $URI_ID$="ldCat395" || $URI_ID$="ldCat396" || $URI_ID$="ldCat397" || $URI_ID$="ldCat398"?> Можно, как-то его укорочено написать? |
deathbloody, вы лучше словами сформулируйте задачу, тогда будет легче поискать иной вариант. Это проще, чем ковыряться в тонне чужого кода.
Отправляя сообщение о помощи, приводите ссылку на свой сайт. Это не считается рекламой, зато снимает массу вопросов.
|
Selena, суть в том, что если находимся в какой-то категории, появляется информер
Добавлено (23 Июл 2014, 13:32:02) |
| |||