Не, я PHP программист и в этом направлении хочу развиваться. Так что тут без вариантов. А от Yii я начинаю просто фанатеть — уже перекидал базовый функционал старого сайта, даже не написав ни одного запроса. А возможности настройки разных отображений разных типов страниц это просто сказка.
В общем быть может я никогда вглубь не понимал тот же CodeIgniter, но если брать чистый PHP, то я чётко понимаю, что мне пришлось бы уже написать дикое количество рутины, не имеющей отношения к бизнес-логике создаваемого сайта, которую тут за меня делает Yii.
Ещё конечно документация классная — по тому же примеру блог-системы понимаешь основы работы фреймворка на ура. А потом уже по гайду уточняешь интересующие тебя моменты — те же ЧПУ.
Начал разбираться с Yii - пока всё кажется очень красивым и логичным.
Всех читателей топика с новым, 2013 годом!
Дело обстоит так. Написан движок был пару лет назад умельцами на коленке. Далее, по ходу работы проекта, он обрастал всё новыми возможностями, большинство из которых было сделано "костылями".
Сейчас пришло время серьёзно добавить функционала, но в наращивать текущий г@вн@к@д смысла не вижу - рано или поздно развалится. Так что буду переписывать всё с нуля, используя полученные наработки.
По отзывам понял, что выбирать нужно Yii. Да и по вакансиям посмотрел - будет востребованный навык на рынке труда))
Я, собственно, и выбираю. Сейчас написано всё на CI, но я не могу сказать, что знаю его + он устарел + при переходе на новую версию придётся почти всё переделывать так и так.
По сути всё запросы, что уже созданы + структура БД + логика работа с данными никуда не пропадут. Просто я переложу их на более современное и более удобное для текущих задач решение.
Спасибо за подсказки - погуглю и постараюсь использовать по максимуму.
Очень резонный аргумент. Но тут всё опять просто:
1) Если пользователь самостоятельно перешёл по ссылке "Регистрация", то мы выдаём ему классическую форму, где ему будет предложено ввести e-mail и пароль. Если в дальнейшем он найдёт авторизацию по почте удобной — пусть пользуется на здоровье. Единственное важное отличие — перейдя по ссылке активации, пользователь сразу авторизуется.
2) Если пользователь хочет оставить комментарий, то мы просто одним из полей указываем адрес электронной почты. Затем, переходя по ссылке в пришедшем пользователю письме, он одновременно подтверждает комментарий, активирует аккаунт и авторизуется.
Т.е. ничего нового с точки зрения user-experience тут нет. Всё как раньше, только в тысячу раз удобнее, т.к. в каждом случае пользователь сначала делает то, что хотел сделать сам, а уже затем делает то, что мы бы хотели чтобы он сделал.
Есть тут один момент — неопытные пользователи очень большие параноики. И у них возникает резонный вопрос — нажимая на всякие кнопки, а не спалят ли они свой аккаунт в том или ином сервисе?
Но ваши аргументы кажутся мне обоснованными и интересными. А главное: "Теоретизировать можно сколько угодно.. а удобен он или нет - проще всего узнать у пользователей"
Надо пробовать!
Ну не знает пользователь, что такое OAuth и логинза. И разбираться не будет. И аккаунта соответствующего у 99% нет.
Формы комментирования от соц. сетей есть, но они не пользуются успехом. К тому же, я хочу контент на свой сайт, а не для соц. сетей.
Спасибо всем, кто поддержал идею и высказал свои соображению по теме. Продолжу пиарить.
99% сайтов требуют активации аккаунта и используют "длинную сессию". Т.е. ждать письма и переходить по ссылке всё-равно придётся. А повторно авторизоваться понадобится может и через год. Спрашивается, зачем нам тогда требовать с пользователя пароль на том этапе, когда он ещё не знает, будет ли он пользоваться сайтом вовсе?
Дальше. Если пользователь захочет авторизоваться через год, то будет ли он к этому времени помнить пароль, особенно если запрещены простые варианты (только цифры или только буквы)? Возможно, но не факт. Если пользователь пароль забыл, то ему потребуется перейти аж по двум ссылкам, получить никому не нужный временный пароль (всё равно не запомнит и будет опять восстанавливать). Короче морока опять.
И самое главное. Собственно то, ради чего всё затевается. 99% пользователей, заходя на сайт, не имеют цели на нём зарегистрироваться. У них есть другая цель, к примеру, оставить комментарий к понравившейся статье.
В классическом варианте это выглядит так:
1) Чтобы оставить комментарий, вам нужно зарегистрироваться.
2) Переходим на страницу регистрации, теряя страницу со статьей.
3) Регистрируемся, придумывая дурацкий пароль.
4) Ждём письма со ссылкой на активацию. Активируем аккаунт.
5) Заходим на сайт, используя авторизационные данные.
6) Ищем повторно статью, к которой хотим оставить комментарий.
7) Оставляем комментарий.
Т.е. семь шагов, чтобы чиркнуть пару предложений. Да гори оно всё синим пламенем.
Теперь в моём случае:
1) Оставляем комментарий, указывая e-mail как одно из обязательных полей.
2) Ждём письма со ссылкой, переходя по которой одновременно: активируем аккаунт, авторизуемся, подтверждаем комментарий.
Всё быстро и просто. А главное человек первым делом делает то, что хотел — оставляет комментарий. Есть конечно проблема — неправильно указанный e-mail. Но, как мне кажется, таких неправильных будет меньше, чем тех, кто послал куда подальше регистрацию.
Будет ли всё так удобно и просто на самом деле — вопрос сложный. Но идее быть, я уже точно убедился.
Пользователи сайта в компьютерах полные нули (честно в этом признаются). Но что такое почта они знают. И что такое "перейти по ссылке" тоже разберутся. А вот что такое OpenID и как им пользоваться — точно нет((
Иногда просто показываю человеку, как регистрироваться на форуме каком-нибудь. Он спрашивает — что такое логин? Начинаешь объяснять ему, он вводит — "Вася Пупкин". Начинаешь объяснять, что русскими нельзя, пробел нельзя и т.д. В результате придумывание затягивается минут на 10.
Потом с паролем начинаются мучения. Цифры нельзя, то нельзя, сё нельзя. Этот, начинаешь объяснять, небезопасный и т.д. Потом нужно разъяснить человеку, что это авторизационные данные и их нужно записать куда-нибудь. И не на бумажку 5x5, а туда, где они не потеряются.
А зачем вся эта жесть, спрашивается? Чтобы человеку ОДНО сообщение оставить!?
Моя технология проще:
- ввёл e-mail — ничего не надо придумывать
- ввёл имя/ник — разрешается дублирование в пределах сайта
ВСЁ! Просто и понятно, быстро, никуда ничего записывать не нужно. Ну не кайф, а?