
WebMan
В данный период я не оказываю услуг и не занимаюсь сторонними разработками
+434
Репутация
6108
Рейтинг
Тема про логины уже была на форуме и очень даже живо обсуждалась: Проблема идентичности пользователей в icms. Пока конкретного решения никто не предложил.
А по поводу прикрепления списков. Мне очень нравится вариант со сквозной многоуровневой и многоплановой категоризацией у Друпала — таксономией. Через неё можно сделать всё, что угодно: от блогов любого типа с постами до любого типа каталогов, от категорий материалов (как по типам контента, так и сквозных для всего сайта) до многомерных фильтров. Причём делается всё это очень легко и наглядно. Но имеет и обратную сторону — уменьшение скорости работы движка.
Да, Loadырь, демку смотрел. И на Вашем скрине увидел ограничение по количеству вложенного материала, чтобы его можно было разложить по вкладкам. Поэтому и предложил пойти от обратного.
Как вариант действительно один ко многим без ограничений по количеству — не в основном материале указывать ограниченное количество прикрепляемого, а в любом дополнительном материале указывать к какому основному он прикреплён. А может быть в дополнительном указывать прикрепление и к нескольким основным — тогда можно получить связь многие со многими.
Понимаю, что эта возможность нужна не для всех. И понимаю, что выводить дополнительные материалы красивенько вкладками, как у Вас, уже не получится, так как количество прикреплённого материала может быть любым. Но можно выводить, например, списком, в том числе и разбивая список по типам контента и раздвигая его явой как гармошку.
Как вариант действительно один ко многим без ограничений по количеству — не в основном материале указывать ограниченное количество прикрепляемого, а в любом дополнительном материале указывать к какому основному он прикреплён. А может быть в дополнительном указывать прикрепление и к нескольким основным — тогда можно получить связь многие со многими.
Понимаю, что эта возможность нужна не для всех. И понимаю, что выводить дополнительные материалы красивенько вкладками, как у Вас, уже не получится, так как количество прикреплённого материала может быть любым. Но можно выводить, например, списком, в том числе и разбивая список по типам контента и раздвигая его явой как гармошку.
Loadырь, а если сделать не поле "Привязка одного дополнительного материала к одному основному", а поле "К какому основному материалу привязать этот материал". Тогда можно привязывать любой контент к любому другому в отношении один ко многим. То есть, можно у многих дополнительных материалов поставить привязку к одному основному. Может сформулировал не лучшим образом, но надеюсь достаточно понятно.
С подчёркиванием можно попробовать так.
Скрипт разбора адреса страницы \system\controllers\content\routes.php, строка 91:
заменить на
Кроме того, в файле языковых функций \system\languages\ru\functions.php (и такой же для английского языка, если нужно), строка 47:
заменить на
В оригинальном коде пропущен знак подчёркивания. Возможно это не ошибка, а сделано разработчиками по какой-то причине, поэтому проверьте отрытие служебных ссылок (не страниц контента), содержащих подчёркивание в названии и ".html" в конце. Я таких сходу найти не смог, а обычные ссылки, естественно, открываются нормально. Отпишитесь когда проверите, пожалуйста.
Скрипт разбора адреса страницы \system\controllers\content\routes.php, строка 91:
'pattern' => '/^([a-z0-9\-_]+)\/([a-zA-Z0-9\-\/]+).html$/i',
'pattern' => '/^([a-z0-9\-_]+)\/([a-zA-Z0-9\-_\/]+).html$/i',
Сделать "Страницы в корне сайта" можно хаком от Val.
Решение для "хвостов" мне пока не известно.
Решение для "хвостов" мне пока не известно.
Спасибо за отличную работу, Loadырь!
механизм который R2 заложил по переименовыванию ссылок в файле ../system/config/remap.php
Читаем справку:
"InstantCMS позволяет переопределить URL любого компонента с помощью файла конфигурации /system/config/remap.php.… Эта функция должна возвращать массив значений, в виде (Название компонента ⇒ Название в URL)."
То есть, функция remap_controllers() переопределяет не ссылку вообще, а только её часть с именем контроллера. Так что ссылки с типами контента (а не именем контроллера) изменить не получится и переместить контент в корень сайта с помощью этого ремапа невозможно.
Можно ещё выводить связку неуникального ника (Вася Пупкин) с уникальным логином (vasyapup) так:
"Вася Пупкин ака vasyapup"
Но это опять же усложняет пользователям общение. Так что вариант с только одним уникальным логином (или ником) подходит больше всего.
"Вася Пупкин ака vasyapup"
Но это опять же усложняет пользователям общение. Так что вариант с только одним уникальным логином (или ником) подходит больше всего.
PIN, достаточно создать в настройках пользователей ещё одно поле — признак уникальности. И после каждого изменения ника или логина пересчитівать этот признак по хуку (если таковой найдётся; или встроить нужный хук). Дополнительные таблицы не требуются. Всё же лучше использовать отдельное поле в БД, чем каждый раз парсить ник/логин.пользователя.
Спасибо, PIN, интересная мысль. И выделение ников уникальных пользователей — тоже может быть удобно. Только не префиксом, а действительно цветом или каким-нибудь значком.в группу ПОЛЬЗОВАТЕЛИ переходят только при наличии индивидуального ника
Только вот как сделать это без хаков я пока не представляю. Хуками это скорее всего не получится. Нужно искать и пробовать.
Да, на форуме этот вопрос уже поднимался Проблема идентичности пользователей в icms. Решения там не нашли.
PIN, есть ещё варианты, например:
1. Везде рядом с именем пользователя показывать его id, типа такого: Вася Пупкин (id0000001). Это обсуждалось на форуме без каких либо конкретных решений.
2. Сделать хак и заставлять пользователей придумывать уникальные логины, которые потом и выводить вместо имени пользователя, а также подставлять в адресах вместо id. В идеале — сделать эту возможность опциональной с управлением через админку.
3. Очень сильно попросить r2 учесть пожелания по данной теме и сделать что-то подобное п.2. Он говорил, что подумает над этим вопросом, но у него сейчас другие приоритеты (и это понятно), поэтому если он и сделает что-то подобное, то очень нескоро. Тем более, что по его мнению, как я его понял, уникальные имена не нужны практически ни на каких сайтах, а там где нужны, пользователи должны сами заботиться о своей уникальности. Или админы там смогут сделать хак авторизации (хотя такие хаки противоречат концепции InstantCMS2 о возможности обновления ядра через админку).
В-общем, я пока вижу только два варианта: хакать под свои требования или ждать новые возможности в официальных сборках.
PIN, есть ещё варианты, например:
1. Везде рядом с именем пользователя показывать его id, типа такого: Вася Пупкин (id0000001). Это обсуждалось на форуме без каких либо конкретных решений.
2. Сделать хак и заставлять пользователей придумывать уникальные логины, которые потом и выводить вместо имени пользователя, а также подставлять в адресах вместо id. В идеале — сделать эту возможность опциональной с управлением через админку.
3. Очень сильно попросить r2 учесть пожелания по данной теме и сделать что-то подобное п.2. Он говорил, что подумает над этим вопросом, но у него сейчас другие приоритеты (и это понятно), поэтому если он и сделает что-то подобное, то очень нескоро. Тем более, что по его мнению, как я его понял, уникальные имена не нужны практически ни на каких сайтах, а там где нужны, пользователи должны сами заботиться о своей уникальности. Или админы там смогут сделать хак авторизации (хотя такие хаки противоречат концепции InstantCMS2 о возможности обновления ядра через админку).
В-общем, я пока вижу только два варианта: хакать под свои требования или ждать новые возможности в официальных сборках.
Для lezginka.ru. Страницы в корне сайта v2.0 пока можно делать только хаком от Val, описанным им в этой теме в #8. Способ без хака пока не нашли.
Этот хак все страницы в корне сайта считает страницами с типом контента 'pages'. То есть, site.ru/about.html в корне — это на самом деле страница site.ru/pages/about.html. Таким образом можно сделать сколько угодно страниц с типом 'pages' и потом поделать ссылки на них из корня, без папки с категорией.
Этот хак все страницы в корне сайта считает страницами с типом контента 'pages'. То есть, site.ru/about.html в корне — это на самом деле страница site.ru/pages/about.html. Таким образом можно сделать сколько угодно страниц с типом 'pages' и потом поделать ссылки на них из корня, без папки с категорией.
Если SMTP хостера разрешает отправку писем от имени чужих ящиков, то можно сразу подставлять ящик пользователя в поле "From" письма. А в теме письма можно делать префикс типа "Обратная связь: " и далее тема сообщения, заданная пользователем при обращении в обратную связь. Тогда можно будет легко выдлить письма с сайта в своём ящике и ответить пользователю прямо на его почту.
Иногда SMTP рарешают отправлять почту только с ящиков своих доменов. Тогда нужно в настройках иметь возможность указать с какого ящика отправлять или брать соответствующий ящик для отправки из настроек сайта.
Иногда SMTP рарешают отправлять почту только с ящиков своих доменов. Тогда нужно в настройках иметь возможность указать с какого ящика отправлять или брать соответствующий ящик для отправки из настроек сайта.
Evanescence, Вы могли бы портировать компонент "Конструктор форм" целиком из первой ветки во вторую? Или может кто-то другой возьмётся за столь нужное всем дело? Я готов поучаствовать финансово в оплате этой работы.
Судя по всему, разработчики в ближайшее время будут заняты другими вопросами и поэтому есть смысл сделать "Конструктор форм" своими силами. А разработчики потом просто добавят этот уже готовый компонент в следующий релиз.
Судя по всему, разработчики в ближайшее время будут заняты другими вопросами и поэтому есть смысл сделать "Конструктор форм" своими силами. А разработчики потом просто добавят этот уже готовый компонент в следующий релиз.