Модератор форума: dotbot |
Сообщество uCoz Архивариус Корзина Условные операторы: скрытие информации (как сделать, чтобы видели только зарегистрированные) |
Условные операторы: скрытие информации |
Quote (Макс6588) Насколько реально сделать так что если в посте на форуме есть тег hide то оно полностью не видно гостям(без) Имеется в виду, именно с помощью условных операторов? Сделать можно, но при простой реализации работать это будет ненадежно, поскольку оператор STRPOS, анализирующий текст, просматривает только первые 1000 символов. Так что если сообщение длинное, и hide стоит где-то ближе к концу, то оператор его "не заметит". Проще это сделать при помощи джаваскрипта, но тогда в исходном коде страницы сообщение будет присутствовать полностью, и при желании его можно будет оттуда извлечь. Потеряшка - поиск потерянных и помощь бездомным животным в Питере
Сообщение отредактировал YuriT - Вторник, 18 Янв 2011, 15:23:29
|
Quote (Макс6588) а как это сделать при помощи STRPOS? Заключить весь шаблон "вид материалов" в условный оператор вида <?if($USER_LOGGED_IN$ || strpos($MESSAGE$,'<!--BBhide-->')<0)?>
Quote (Макс6588) и возможно ли сделать что то типа хайта по постам только без js? Это не понял. Потеряшка - поиск потерянных и помощь бездомным животным в Питере
|
YuriT, Ну наверно видел в нете скрипт hide по постам пишешь в посте [hide=50]скрытый текст[/hide] 50 это количество постов чтоб увидеть сообщение. Можно что то подобное сделать с условными операторами, только не так что все сообщения скроются если у тебя нет 5 постов например.
|
Quote (Макс6588) Можно что то подобное сделать с условными операторами, только не так что все сообщения скроются если у тебя нет 5 постов например Условными операторами - нельзя, хотя бы потому, что переменной для числа постов просматривающего форум в шаблонах нету. Джаваскриптом - в принципе, можно. Хотя это и не совсем тривиально, плюс нужно еще все-таки четко сформулировать, чего же именно хочется. Потеряшка - поиск потерянных и помощь бездомным животным в Питере
|
Quote (YuriT) плюс нужно еще все-таки четко сформулировать, чего же именно хочется. Да куда же еще точнее. Скритп делает возможным писать hide=N где N количество постов необходимых для просмотра. Если постов недостаточно, скрипт скрывает всё сообщение и пишет сколько необходимо постов для просмотра. Но у джавы всегда один минус в исходном коде всегда все видно, или еще проще отключить джаву в браузере. http://allcity.net.ru/viewtopic.php?f=3&t=2243 Все равно спасибо за помощь |
Splin3971,
Quote (Splin3971) Существует ли условие для проверки наличия файла загруженного через файловый менеджер или FTP? - Нет. ... Всё написанное выше - моё личное мнение и на абсолютную правоту не претендует.
Есть вопросы лично ко мне - пиши сюда: http://likbezz.ru/forum/8 |
Quote (fflesh) - Нет. Я сделал на страницах сайта ссылки на файлы XML(прайсы) для индексации поисковиками, которые также обрабатываются скриптом и выводятся на страницу. Но если скрипт не находит файл он просто не срабатывает и не выводит ничего, то поисковик увидит битую ссылку, а они этого не любят. Не подскажете как быть? P.S. Как ссылки так и скрипт подставляются в шаблонах. Для соответствия файла странице имя файла состоит из $URI_ID$+".xml" P.P.S. Может есть возможность использовать гибридные условия типа Code <?if(fileExist($URI_ID$+".xml"))?><a href='/$URI_ID$+".xml"'>ссылка на файл</a><?endif?> Если ты упал... поднимись, если все не так... изменись, если ставишь цель... достигай, нет предела в твоих силах так и знай...
Сообщение отредактировал Splin3971 - Пятница, 18 Фев 2011, 11:04:17
|
Splin3971,
Quote Но если скрипт не находит файл он просто не срабатывает и не выводит ничего, то поисковик увидит битую ссылку, для внесения полной ясности проделайте эксперимент. прямо на этой странице нажмите сочетание клавиш ctrl+u откроется окно с исходником. вот так видят ваш сайт поисковики. вот так как в открывшемся окне. выстраивайте свою стратегию общения с поисковиками именно из этого, то есть ориентируйтесь на исходник для разнообразия если есть аккаунт в вебмастере гугла, то воспользуйтесь функцией Просмотреть как Googlebot вбейте туда страницу где стоит ваша конструкция и отправьте запрос. это будет максимально наглядно |
Splin3971, нет таких проверок. И кроме того:
1. надо писать <a href='/$URI_ID$.xml'> , иначе все Ваши ссылки окажутся битыми независимо от присутствия файла Потеряшка - поиск потерянных и помощь бездомным животным в Питере
Сообщение отредактировал YuriT - Пятница, 18 Фев 2011, 15:15:04
|
Quote (webanet) Quote (Splin3971) Но если скрипт не находит файл он просто не срабатывает и не выводит ничего, то поисковик увидит битую ссылку я вам кажется уже пыталась объяснить один раз, что поисковики не исполняют скрипты и им глубоко наплевать что скрипт нашёл и что вывел в итоге. для внесения полной ясности проделайте эксперимент. прямо на этой странице нажмите сочетание клавиш ctrl+u откроется окно с исходником. вот так видят ваш сайт поисковики. вот так как в открывшемся окне. выстраивайте свою стратегию общения с поисковиками именно из этого, то есть ориентируйтесь на исходник для разнообразия если есть аккаунт в вебмастере гугла, то воспользуйтесь функцией Просмотреть как Googlebot вбейте туда страницу где стоит ваша конструкция и отправьте запрос. это будет максимально наглядно Это все видел, проделывал(не 1 раз) и знаю, потому и интересуюсь именно возможностью манипулировать серверными скриптами, которые выдадут или НЕ выдадут любому(как пользователю, так и роботу) обсуждаемую ссылку. Ведь условие <?if()?> выполняется еще на сервере и при false тело условия уже никуда не выдается. Только как этот if заставить проверить наличие файла? На сколько я понимаю эти серверные переменные не могут принимать пользовательские данные такие как имя и адрес файла в целях безопасности? А для моих целей похоже именно это и нужно(
Quote (YuriT) 1. надо писать <a href='/$URI_ID$.xml'> , иначе все Ваши ссылки окажутся битыми независимо от присутствия файла Это я тут запарился, на сайте написано как в вашем образце и все проверенно и работает.
Quote (YuriT) 2. как-то сомнительно, чтобы от доступности этих самых XML-файлов для поисковиков была какая-то польза. Яндекс, к примеру, XML-файлы, на которые идут ссылки со страниц, вообще не обрабатывает (а вместо этого выдает в диагностике ошибку "не поддерживаемый тип данных"). Если хотите, чтобы Ваши данные действительно стали доступны поисковикам - то почитайте в их хэлпах, какие форматы структурированных данных они поддерживают (это микроформат и еще несколько строго определенных форматов данных). На счет яндекса я видел список поддерживаемых форматов, но не было сказано что список полный... теперь яснее. Гугл обрабатывает такие файлы. Формат файла по сути не слишком важен - переделаю под любой который может использоваться как база данных(правда не разбирался что такое микроформаты, но тут гугл в помощь). За познавательную инфу спасибо, но суть остается той же - какой бы формат не был, нужна проверка сервером наличия файла и выдача или нет ссылки на него. Пока других вариантов не вижу. Если ты упал... поднимись, если все не так... изменись, если ставишь цель... достигай, нет предела в твоих силах так и знай...
|
Каким образом с помощью условных операторов можно запретить пользователям читать блоги друг друга?
БлагоДарю! Мы не сможем без искажений воспринимать другого человека до тех пор, пока наш ум не будет чист (свободен от грехов).
(Веды) Сообщение отредактировал svdressmaker - Воскресенье, 20 Фев 2011, 05:05:35
|
Quote (svdressmaker) Каким образом с помощью условных операторов можно запретить пользователям читать блоги друг друга? Как ваиант: 1. В шаблоне "Вид материалов" убираем строку Code <?if($MESSAGE$)?><div class="eMessage" style="text-align:left;clear:both;padding-top:2px;padding-bottom:2px;">$MESSAGE$</div><?endif?> 2. В шаблоне "Страница материалов и комментариев к нему" заменяем Code $MESSAGE$ на Code <?if($USER$==$USERNAME$)?>$MESSAGE$<?else?>Вы не автор<?endif?> Таким образом все смогут видеть заголовки блогов, но только авторы смогут видеть текст блога. Лучшего варианта я не вижу, потому как в Архиве материалов и на Главной странице блогов нет переменной которая выдавала бы имя текущего пользователя. Может координаторы что по существеннее подскажут. Если ты упал... поднимись, если все не так... изменись, если ставишь цель... достигай, нет предела в твоих силах так и знай...
|
| |||