
Владимир Переверзев
У меня данная ошибка "Load error! (error)" вылетала в браузере Chrome под Windows 10 при включенном плагине SetupVPN.
При отключении VPN-а или при залогинивании в другом браузере — всё работает отлично.
Надеюсь, данная информация кому-то также поможет.
У меня абсолютно аналогичная выскочила.
Причём на хостинге развёрнуто несколько вспомогательных копий движка — чистая исталляция, инсталляция с демо-данными, рабочая версия, отладочная версия сайта.
И ошибка сразу выскочила на всех сайтах.
Поведенчески ситуация возникла, когда попробовал опубликовать запись с относительно (1000+ знаков) большим html-тестом.
Остается нерешенным вопрос:
1. Понять причины, почему вылазят кракозяблы.
2. Устранить их (и причины, и кракозяблы).
Кто знает — подскажите, пожалуйста.
Есть вот такой общий каталог:
instantcms.ru/catalog/1004
Как отфильтровать в нем дополнения, совместимые с двойкой?
Да, можно прописать код, который для адресов
nazvanie-saita.domen/u/chpu-imja-pervogo-polzovatelya
nazvanie-saita.domen/g/chpu-imja-vtoroj-gruppy
будет корректно выдавать информацию.
Но ведь остальная часть движка по-прежнему будет генерировать старые урлы.
Например, компонент "Генератор карты сайта", ...., да просто навигация по сайту!!
Поэтому корректно все запрограммировать — не так-то просто.
Возможно, решение уже есть.
Буду благодарен за наводки.
Вторая часть задачи посложнее.
Нужно заменить в URL-адресах ID пользователя и ID группы на ЧПУ-строки (уникальные строки с использованием букв на английском, цифр, без пробелов и других специальных знаков, за исключением, возможно, "-" и "_").
— — — — — -
В моем случае поле "Nickname" будет содержать ФИО участника, допускается использовать кириллические символы.
Поэтому для ЧПУ-строки можно создать отдельное поле "Адрес Вашей странички" (системное имя — например, "chpu-url").
Для этого в админке идем в "Компоненты", выбираем "Профили пользователей", затем "Добавить поле".
Проставляем галочки "Поле должно быть заполнено" и "Только латинские буквы и цифры".
Остается прописать код, который будет для каждого пользователя при формировании URL получать значение поля "chpu-url" и подставлять его вместо ID.
Как это сделать — пока не знаю.
Буду благодарен за подсказки.
— — — — — -
Для пользовательских групп (групп, в которых группируются пользователи, контент, не путайте с группами уровня доступа) сложнее.
В админке управление настройками отдельных групп недоступно, а во фронт-части сайта есть возможность изменить название и описание группы, но нет возможности добавлять новые поля.
В моем случае количество пользовательских групп ограничено, создавать их могут только администраторы сайта.
Поэтому вполне допустимо не создавать специальное настраиваемое поле, а прописать напрямую в коде соответствие:
ID группы -> ЧПУ-адрес (это называется хеш-таблица, если не ошибаюсь).
— — — — — -
Нашел небольшой внешний мануальчик, как прописывать ЧПУ:
www.phpinfo.su/articles/practice/chpu_na_php.html
Доходчиво, возможно, пригодится.
— — — — — -
Бегло глянул в исходники сайта.
Пользователи и группы в движке реализованы как компоненты.
Не силен в PHP-программировании, но интуитивно догадываюсь, что можно подправить код в файлах "/system/controllers/users/action/profile.php" и "/system/controllers/groups/action/groups.php".
Данное решение будет корявым и негибким, поскольку при обновлении движка все прописанные изменения в коде сотрутся.
Более эффективным решением будет вынести, если это возможно, изменения в коде в отдельный компонент.
— — — — — -
Есть вот такой мануал:
docs.instantcms.ru/manual/settings/rewriting
Он позволяет решить часть задачи, заменить в URL-адресах "users" на "u", "groups" на "g".
Подскажите, пожалуйста, как решить следующую задачу на InstantCms 2.x.
Допустим, создаем сайт, на котором будут регистрироваться пользователи и есть пользовательские группы.
URL-адреса персональных страничек зарегистрированных пользователей сейчас выглядят так:
nazvanie-saita.domen/users/1
nazvanie-saita.domen/users/2
....
URL-адреса пользовательских групп выглядят так:
nazvanie-saita.domen/groups/1
nazvanie-saita.domen/groups/2
....
Нужно получить следующий вид.
URL-адреса персональных страничек зарегистрированных пользователей:
nazvanie-saita.domen/u/nickname-pervogo-polzovatelya
nazvanie-saita.domen/u/nickname-vtorogo-polzovatelya
или
nazvanie-saita.domen/u/chpu-imja-pervogo-polzovatelya
nazvanie-saita.domen/u/chpu-imja-vtorogo-polzovatelya
....
URL-адреса пользовательских групп:
nazvanie-saita.domen/g/nazvanie-pervoj-gruppy
nazvanie-saita.domen/g/nazvanie-vtoroj-gruppy
или
nazvanie-saita.domen/g/chpu-imja-pervoj-gruppy
nazvanie-saita.domen/g/chpu-imja-vtoroj-gruppy
....
Буду благодарен за советы и подсказки, как это можно реализовать.
Создал тип контента.
В настройках указал возможность создания материалов данного типа с привязкой к группам (но при этом не с обязательной привязкой).
Создаю материал, при создании привязываю (отношу) его к группе.
Все корректно работает.
Если я захочу изменить данную опцию — выбираю данный материал, нажимаю "Редактировать".
Но (баг!) опция изменения или отключения привязки к определенной группе не отображаются.
Чем это чревато:
Если пользователи моего сайта создают материалы и некорректно привязывают их к группе — это нельзя изменить.
Нельзя отключить. Нельзя привязать к другой группе.
Только удалять данный материал, создавать заново новый.
Подскажите как вообще отключить капчу на 2.х?
kaless, а смысл ее отключать?
Разве она создает проблемы при регистрации?
А вот защита от спама — вполне.
Например у меня, юзеры при регистрации должны заполнить анкету и загрузить фото. Если они все это не делают, то никакой регистрации не происходит. Подтверждения по e-mail у меня нет. Капча стоит стандартная из зборки.
Man, спасибо за ответ.
Вы бы не могли чуть подробнее рассказать?
Не очень понятно, как анкета и фотография защищают от спама.
Разве роботы тоже могут наклацать.
Нужно модерировать каждую регистрацию, верно?
Или у Вас какие-то допилы, автоматическая проверка используется?
Владимир Переверзев, кстати, пятый пункт очень важный момент.
Я уже обращал внимание на данное неудобство — если модер загулял, то его материалы найти не реально (не вламываясь к нему в профиль)
Хорошо что написали — лишний раз засветиться для r2)
Нужно как то дать возможность главному админу видеть все материалы требующие модерации и дать возможность как самому промодерировать, так и передать другому модеру… это так, навскидку.
5. Не совсем удобная и прозрачная логика модерации. Материалы, попадающие на модерацию — хрен найдешь.
Кому-то из тех, кто привязан к данному виду контента глубоко в админке как модератор, приходит уведомление, и материал виден у него в личном кабинете на специальной страничке.
В админке — не виден совсем, у других модераторов — не виден. Не очень удобно, во всяком случае для моего проекта.
Согласен! Инструмент модерации есть, но очень сырой.
Вижу такие варианты:
1. Раздел "Материалы на модерации" (или "Модерация") в личном кабинете модераторов, в котором есть две вкладки (набора) — "Мои" и "Все".
2. В разделе "Контент" админки в списке материалов отображать галочку "На модерации", а также фильтр по этому статусу.
3. В настройках компоненты "Модерация" в админке отображать все материалы, находящиеся на модерации, а также за кем из модераторов они закреплены.
4. В настройках компоненты "Модерация" в админке отображать страницу "Настройки", куда поместить варианты распределения и информирования модераторов о модерируемых материалах. Можно добавить следующие варианты распределения — "По очереди из закрепленных за видом контента" (сейчас так работает), "По очереди всем модераторам", "Все закрепленным", "Всем модераторам". И галочки "Информировать в личном кабинете" и "Информировать по e-mail".
5. Что-то аналогичное вышеуказанному на закладке "Модераторы" в настройках типа контента в админке (действует локально для данного вида контента).
6. При открытии для редактирования материала, который находится в статусе "На модерации", сверху, рядом с названием отображать плашку "На редактировании" и кнопку — "Опубликовать" и "Отклонить".
7. Там же нужно отображать, за кем из модераторов закреплен этот материал.
8. Нужно продумать, чтобы аналогично со статусом "На модерации" был статус "Отклонен", чтобы в админке можно было аналогичным описанным выше способам видеть и все отклоненные материалы, а также кто из модераторов их отклонил.
9. Нужно как-то информировать автора о том, что его материал прошел модерацию или отклонен.
10. Нужно как-то интегрировать в единый понятный смысл сущности модератора группы контента и группы "Модераторы". Пока это разные, не связанные вещи. Зачем нужны первые — не совсем понятно.
11. Как описал reload, нужно реализовать механизм перезакрепления ответственного модератора для материалов.
12. ....
Короче, работы здесь — начать и кончить.
По сути стоит задача реализовать небольшую баг-трекинговую систему.
Еще один инструмент — это настройка групп пользователей, уровней доступов для каждой из них и автоматических переходов между группами при соблюдении некоторых условий (которые сигнализируют, что это не бот/робот).
1. В разделе "Пользователи" в админке есть возможность создавать группу пользователей.
2. Также есть возможность настройки прав доступа для каждой группы.
3. В компоненте "Профили пользователей" есть закладка "Переводы", с помощью которой можно настроить автоматический перевод/добавление принадлежности к определенным группам, которые дают дополнительные права доступа.
При расширении прав доступа можно привязаться ко времени регистрации, рейтингу и репутации.
— — — — — -
Вопрос в том, как реализовать, чтобы на старте у пользователя были максимально ограниченные с позиции возможного спама права, но при этом у него были возможности выполнить условия перехода в другую группу.
Пока не знаю, что это может быть. Ну, сырая идея, например, условие публикации 3-х отзывов к профилям другим участников....
Буду благодарен за идеи и полезную информацию по данной теме.
— — — — — -
Капча при регистрации — немного спасает
Но есть технологии полуавтоматического обхода капч, когда какой-нибудь индус получает от автоматической тулзовины и набивает капчи, обеспечивая для спам-платформы регистрации, чтобы потом спамить.
— — — — — -
Верификация по e-mail после регистрации — тоже снижает, но не избавляет.
Автоматически генерируемые ящики для спам-аккаунтов, автоматические клики на письмо о подтверждении.
— — — — — -
Модерация публикаций и комментариев перед публикацией — аналогично, налетит спама, а потом модерируй, разгребай.
— — — — — -
…