У меня сайт уже почти готов, уже собирался заливать на хостинг, как вдруг обнаружил следующее:
Если пользователь не зарегистрирован, то он не видит ни одной подсказки или призыва к регистрации, кроме ссылки "Регистрация".
Например, при просмотре статьи (если пользователь не зарегистрирован) внизу имеется надпись.
"Нет комментариев. Ваш будет первым!"
И все!!! Я конечно пойму что для того чтобы оставить комментарий, нужно зарегистрироваться. Но, не все такие. Бывают посетители в возрасте, которые кроме одноклассников ничего больше не освоили. Да и среди молодежи тупней хватает.
Почему нельзя было сделать так же как в первой ветке, т.е. ссылку Оставить комментарий при нажатии на которую появлялся бы текст "Оставлять комментарии могут только зарегистрированные пользователи. Зарегистрироваться?" ??? Я сегодня был буквально ошарашен этим косяком, по другому и не скажешь.
Конечно, можно разрешить оставлять комментарии незарегистрированным пользователям (в последней версии такая возможность имеется), но форма комментариев без капчи приведет к тоннам спама.
Кроме этого, изначально я добавил кнопку "добавить объявление" в заголовок виджета. Так сказать чтобы было повиднее, а то не до каждого доходит где эту кнопку искать. В дальнейшем планировал вообще сделать отдельную кнопку в шапке сайта (на самом видном месте).
Так вот, сделал кнопку, думая что как и в любой нормальной системе, если на такую кнопку нажмет незарегистрированный пользователь, то появится страница с предложением зарегистрироваться. Но, я офигел по второму кругу когда вместо такой страницы увидел страницу 404.
Что теперь делать, даже не знаю. Сайт уже почти готов, а я сижу и жалею что вообще решил делать сайт на двойке. лучше бы на вордпресс сделал.
Может быть кто-нибудь знает как исправить те недоработки, которые я указал? Буду премногоблагодарен
m0skit, вручную разве что только, если есть немного знаний php я думаю это не трудно будет сделать
Да я понимаю что не на автопилоте
Но, к сожалению, с PHP я не знаком на таком уровне. Я больше CSS специализируюсь
m0skit, вручную разве что только, если есть немного знаний php я думаю это не трудно будет сделать
Да я понимаю что не на автопилоте
Но, к сожалению, с PHP я не знаком на таком уровне. Я больше CSS специализируюсь
Для создания ссылки, которая будет вести в зависимости от того залогинен пользователь или нет на разные страницы можно такоое использовать (за то насколько это костыльно ничего не скажу):
<a href="<?php echo href_to_home(); ?> <?php if ($user->is_logged){ ?>/ctype/add<?php } else {?>/register<?php } ?>"> <?php echo LANG_TEXT; ?> </a>
ctype/add ссылка на добавление контента если пользователь залогинен;
/register ссылка на регистрацию во всех остальных случаях;
href_to_home() подставляет адрес сайта, можно и статикой заменить в принципе.
Если начнет ругаться на то, что не знает переменной $user то вначале файла шаблона с кнопкой воткнуть определение (за безопасность и безкостыльность такого решения опять же не скажу):
<?php $user = cmsUser::getInstance(); ?>
Для создания ссылки, которая будет вести в зависимости от того залогинен пользователь или нет на разные страницы можно такоое использовать (за то насколько это костыльно ничего не скажу):
Спасибо, буду пробовать.
Меня тут посетила мысль сделать появление надписи "Комментарии могут оставлять только зарегистрированные пользователи" после нажатия на ссылку "оставить комментарий" на основе какого-нибудь аккордеона на jQuery. Только вот как сделать, я не знаю Вернее, просто прикрутить аккордеон — не проблема, а нужно ведь чтобы он был виден только для гостей.
Поддержу направление верное но зачем так гневно высказываться. Здесь люди адекватные всегда стараются помочь.m0skit
Уверен, это необходимо многим, а не все это могут сделать сами. Поэтому делюсь.
В файле tamplates/ controllers/comment/list.tpl.php
После
<div class="buttons"> <?php echo html_button(LANG_PREVIEW, 'preview', 'icms.comments.preview()'); ?> <?php echo html_button(LANG_SEND, 'submit', 'icms.comments.submit()'); ?> </div> <div class="loading"> <?php echo LANG_LOADING; ?> </div> </form> <?php } else { ?> <?php } ?> </div>
<?php } else { ?> <div id="comments_add_link"> <?php echo LANG_COMMENT_ADD_ONLY; ?><a href="../auth/register" class="ajaxlinkcom"><?php echo LANG_COMMENT_ADD_REG; ?></a> </div>
добавляем языковые переменные
define('LANG_COMMENT_ADD_ONLY', 'Добавлять комментарии могут только зарегистрированные пользователи. ');
Вот и все (правда я еще для второго дива создал отдельный стиль).
Теперь, незарегистрированные пользователи будут видеть следующий текст:
"Добавлять комментарии могут только зарегистрированные пользователи. Зарегистрироваться?"
А зарегистрированные будут видеть ссылку "Написать комментарий"
Надеюсь, кому-то это поможет
Если честно, я вообще не знаю о чем думают люди, когда решают устраивать подобные истерики.Если честно, я вообще не знаю о чем думали разработчики когда решили полностью исключить группу гостей
Видимо мысль "невозможно сделать всё, всем и сразу" слишком сложна.
Конечно, это резко звучит, но ведь:
то есть не было, а потом появилось, правильно? улавливаете мысль?Конечно, можно разрешить оставлять комментарии незарегистрированным пользователям (в последней версии такая возможность имеется)
защита от спама это не обязательно картинка с цифрамиформа комментариев без капчи приведет к тоннам спама
Это по-видимому заразно на нашем форуме) Не обращай внимания, я уже почти научился это делать =)Видимо мысль "невозможно сделать всё, всем и сразу" слишком сложна.
то есть не было, а потом появилось, правильно? улавливаете мысль?
ходят слухи что и модерация гостевых комментариев скоро появится, а то понаоставляют комментов хрумером — устанешь чистить.
Если честно, я вообще не знаю о чем думают люди, когда решают устраивать подобные истерики.
Видимо мысль "невозможно сделать всё, всем и сразу" слишком сложна.
Уважаемый r2, я конечно понимаю что угодить всем и сразу не возможно в принципе, так как у каждого свои запросы, потребности и видение того, как должно быть то или это.
Но я говорю об элементарном. О том, что есть в каждой системе. О том, что является логичным.
Предложить незарегистрированному пользователю зарегистрироваться для того чтобы оставить комментарий — это не логично?
Или сделать настройки доступа гостей для того чтобы можно было разрешить и незарегистрированным добавлять контент (в моем случае — объявления) — тоже не логично? Не каждый захочет или сможет (есть и такие) зарегистрироваться для того чтобы добавить объявление. А это серьезный минус для сайта в плане посещаемости и популярности.
Или вот еще — почему нельзя разрешить пользователям добавлять фотографии в созданные не ими альбомы?
Таких элементарных и крайне нелогичных недоработок хватает и в первой и во второй версиях. Перечислять, думаю, их не стоит, достаточно почитать форум.
то есть не было, а потом появилось, правильно? улавливаете мысль?
Без защиты — это равносильно тому что такой возможности нет.
защита от спама это не обязательно картинка с цифрами
В отношении вашей системы, думаю, это как раз картинка с цифрами.
Это по-видимому заразно на нашем форуме) Не обращай внимания, я уже почти научился это делать =)
Извините, но не обращать внимания на замечания — это правильный подход?
P.S. И я не истерю. Скорее негодую
Купите DLE и требуйте доп. функционал на свой вкус в версию из коробки😊… разработчики ответят Вам примерно в том же русле..Так как заплатив деньги, я имею право что-то требовать
хотите платно — не когда не было проблем в том, чтобы найти исполнителя… Выбирайте на свой вкус как говориться любой каприз за Ваши деньги😊
Купите DLE и требуйте доп. функционал на свой вкус в версию из коробки smile… разработчики ответят Вам примерно в том же русле..
Покупал и не раз. Дополнительный функционал не требовал ни там ни тут. В DLE все это есть, так же как и в подавляющем большинстве систем.
Повторюсь, я говорю об элементарном и логичном. Я не требую прикрутить форум, засунуть интернет-магазин или еще что-то.
хотите платно — не когда не было проблем в том, чтобы найти исполнителя… Выбирайте на свой вкус как говориться любой каприз за Ваши деньги
Вы же понимаете, что купить готовую систему и вешать на нее платные модули, плагины, компоненты или допиливать ее что-то переделывая и доделывая — это совсем разные вещи. После "сторонних" изменений каждое обновление будет той еще малоприятной процедурой.
На замечания и предложения — неправильный. На истерики с претензиями — правильный.Извините, но не обращать внимания на замечания — это правильный подход?
Я уже объяснил что защита есть. Впрочем, вам виднее, у меня нет задачи кого-либо в чем-то убеждать.Без защиты — это равносильно тому что такой возможности нет.