Исправлена обработка сохранения в персональные блоги — при сохранении в черновик пользователь изменялся, а ссылка на персональный блог — нет. В результате в персональном блоге одного пользователя оказывался топик другого автора.
В конфиг добавлена опция $config['only_publish'] — изменять пользователя только при публикации (по умолчанию false).
$config['manual_topic_url']=true; // Использовать или нет возможность ручного указания URL для топика
$config['manual_topic_url_only_admin']=true; // Возможность ручного указания URL только для админа
Главная проблема в этих плагинах — для их работы нужен сторонний сервис, который и будет хранить единый профиль.
В моем плагине единого профиля просто не создается. :)
Видимо было бы интереснее эти привилегии запрашивать не при первом комментировании, а например при третьем и т.п.
Для того, чтобы идентифицировать пользователя (чтобы знать его идентификатор соцсети) необходимо, чтобы он авторизировался на сайте через соцсеть. Но если он уже авторизировался, то уже с определенными привилегиями, которые в процессе работы не сменить. Можно попытаться извратиться с помощью сообщения в стиле «Хотите получить расширенный доступ на сайт» и, при согласии, разлогинить пользователя, чтобы и запустить авторизацию с новыми привилегиями. Но мороки много.
Для того, чтобы задействовать функционал плагина, необходимо создать «приложения» в соответствующей социальной сети. Этому приложению можно выставить определенный набор привилегий, которые должен подтвердить пользователь, чтобы добавить комментарий. Так вот там есть всякие интересные возможности вроде рассылки сообщений друзьям пользователя, размещению сообщений на стене, смене статусов и т.п. Конкретный набор у каждой соцсети свой. Но чем больше привилегий просит приложение, тем больше вероятность, что пользователь откажется.
Но это опять же мало относится к данному плагину.
К тому же, что делать с пользователем, который вчера зашел через вконтакт, сегодня через фейсбук, а завтра через мейлру? Три логина? Естественно нет, нужен какой-то один общий. Вот так плавно и незаметно мы подобрались к принципу работы OpenID, Loginza и иже с ними. :)
С точки зрения системы на данный момент все гостевые комментарии оставлены одним пользователем с ID=0. В принципе ничего сложного в том, чтобы выцепить все предыдущие комментарии и привязать к новому логину, нет. Технически это реализуемо.
т.е. для движка он так и остается гостем, но с возможностью написания комментов без регистрации.
Да.
А как ведут себя в этом случае различные условия в шаблонах — воспринимают как Гостя и выводят всю инфу как для гостя?
Стандартные шаблоны вопринимают как пользователь «guest» (кстати, при отключении шаблона именно так комментарии и будут выглядеть), а измененные шаблоны в плагине — выводят более корректную информацию.
В конфиг добавлена опция $config['only_publish'] — изменять пользователя только при публикации (по умолчанию false).
И изменить так:
Не поедет ли остальной дизайн — долго не проверял…
В моем плагине единого профиля просто не создается. :)
Но это опять же мало относится к данному плагину.
Отключен:
Да, все вернется на круги своя.
Стандартные шаблоны вопринимают как пользователь «guest» (кстати, при отключении шаблона именно так комментарии и будут выглядеть), а измененные шаблоны в плагине — выводят более корректную информацию.