kalikimaka, потому что в $item данные напрямую из базы. Без учёта опций полей.
Данные после обработки полями надо искать в $item['fields']
kalikimaka, потому что в $item данные напрямую из базы. Без учёта опций полей.
Данные после обработки полями надо искать в $item['fields']
denmois, ошибку получил
Но проблема проявилась только после сохранения настроек типа контента (для новостей поменял чек на «создание в группах»)
и именно так :)
Очень интересно. Поразбираюсь дальше чуть позже
С какими-то опциями не связано. На чистой 2.17.1 достаточно просто открыть любой тк и сохранить его настройки.
В общем, проблема не с ob_start(); надо зайти в настройки типа контента и почистить поле
тогда все будет работать корректно.
Указывать тут позицию нужно только тогда, когда вы ее создали в своем шаблоне где-то в специальном месте. Т.е. если она у вас НЕ «before_body», то указываем. А если «before_body» то не указываем.
Александр, в настройках SEO для записей.
Но там не будет доступа к родительской категории, как в хлебных крошках. Только к текущей и имени типа контента.
Ostrova, создайте новую группу «Новые». Проставьте ей все права доступа в настройках. Выберите эту новую группу в компоненте Авторизация и регистрация. Проблемы быть не должно. А вот с правкой id в базе могут быть нюансы.
При удалении группы из админки, надеюсь вы не сносили ее вручную в базе, удаляются и права доступа github.com/instantsoft/icms2/blob/eedac9240673e095791ffa98af802bb1a6f60991/system/controllers/users/model.php#L825
Поэтому просто вернуть группу через подставку старого id мало
Значит вашему сайту наборы не нужны, удалите их и не используйте
именно так. Не используйте наборы, если не хотите их уникализировать. Посмотрите на маркетплейсы, они под каждый чих делают набор. Набивают текст.
Если не хотите этим заниматься, а хотите сохранить просто удобство для пользователя, сокройте наборы от индексации. Ибо да, наборы без настройки это просто дубли, плохие дубли.
Я ленивый, у меня в роботсе так
Disallow: /blogs-monthly Disallow: /blogs-weekly Disallow: /board-expensive Disallow: /board-cheap Disallow: /poster-new
F_a_R_i_D, в теме instantcms.ru/forum/konstruktor-form-ne-otpravljaet-v-modalnom-okne.html именно так и делали.
Только не выводите форму в модальном окне. В нем форма не будет знать об авторе записи.
Нужны картинки. Ничего не понятно.
Порядок полей сохраняется и применяется ко всем записям.
WadimKow, когда у Fuze будет больше свободного времени. Много времени ушло на прошлый релиз. Если вы посмотрите на объем правок в последней версии, увидите, что он большой.
Я бы не делал ставку на ожидание нового релиза, а работал с тем, что есть.
Крон выполняет другие действия
тут явно не крон. В запросе к базе нет групп у пользователя. Такого быть не может, если настройки заполнены.
На чистой 2.17.1 повторить проблему не удается. Ни с выбором, ни без. Ни с почтой, ни без подтверждения.
В настройках компонента Авторизация и регистрация не выбраны группы пользователей, в которые он должен быть помещен по умолчанию.
Поэтому
WHERE (i.group_id IN ())
пустое
Очень интересный вопрос. Правильным решением будет отдельный компонент, в котором для данной опции можно будет выбрать пресет редактора. И уже потом в данной опции использовать id выбранного пресета. Вот почему.
Поле html при выводе своей формы использует редактор, указанный в настройках github.com/instantsoft/icms2/blob/b239faeba9df55b6e05ba3a67c239ac8bcc116b7/system/fields/html.php#L282
Посмотрим, что делает метод getEditorParams github.com/instantsoft/icms2/blob/b239faeba9df55b6e05ba3a67c239ac8bcc116b7/system/controllers/wysiwygs/frontend.php#L16
А он, если передан id пресета, получает его настройки, а если название, то использует переданное имя редактора и ищет, есть ли рядом с editor еще указанное editor_options. Если нет, то использует редактор с опциями по умолчанию.
Вот и получается, если хотите вывести там что-то четко настроенное, у вас два варианта:
1. Где-то дать юзеру выбрать, каким редактором пользоваться в вашем виджете. И это где-то использовать в настройках виджета
2. Передать название редактора и список опций, например так
'options' => [ 'editor' => 'tinymce', 'editor_options' => [ 'toolbar' => 'bold italic underline' ] ],
и тогда юзер увидит тини с тремя кнопками
Подсмотреть все варианты опций можно у настроенного пресета в базе в таблице wysiwygs_presets.
Есть еще третий вариант. При установке виджета самому добавить настроенный пресет в список пресетов сайта пользователя. А затем в форме виджета получать его id по имени созданного пресета, и использовать в поле.
ivan, какая-то проблема с полем «Набор изображений Slider». Обратитесь к автору этого поля.
No Name, есть таблица rating_log
Проголосуйте за какую-нибудь запись и станет сразу понятно, что искать в ней
А чтобы получить к логам еще и пользователей, надо использовать joinUser github.com/instantsoft/icms2/blob/b239faeba9df55b6e05ba3a67c239ac8bcc116b7/system/core/model.php#L1644
И лучше делать не по одному запросу для каждой записи, а сперва выбрать все логи через filterIn() по списку показываемых на данной странице id записей, а уже потом «раскидать» логи по записям.
причину этой задержки, но как и где их смотреть
со страницы добавления записи идет редирект в запись, посмотреть отладку добавления записи не получится.
Но вы можете в файл github.com/instantsoft/icms2/blob/master/system/controllers/content/actions/item_add.php начиная снизу вверх, пока не доберетесь до github.com/instantsoft/icms2/blob/8a4f07a01e1b6b4fe634b8d9b6c1eeb12affb1b9/system/controllers/content/actions/item_add.php#L59C9-L59C20 писать в строчках что-то типа
dump($item);
Это будет прерывать код. И смотрите, на какой строке пропадет эта большая пауза. Значит «тупит» тот код, что ниже добавленного dump();
Можно по файлу раскидать дампы таймстампов в файл. И смотреть, между какими из них самая большая пауза.
Например так. Добавить в этот файл новый метод типа
$file = $_SERVER['DOCUMENT_ROOT'] . '/upload/lagi.txt'; }
этот метод будет класть добавленный текст и метку time в файл upload/lagi.txt
И потом по коду накидайте таких логов, типа
и потом добавляете запись. И смотрите, между какими логами самое большое время проходит.
Скорее всего, проблема с каким-то из хуков… Их список тоже можно посмотреть в коде этого файла.
Терпения и вы выясните проблему.