Значит если я делаю в админке такой порядок как нужен мне в записи, как установить другой порядок при добавлении?

denmois
А если пользователь решит поменять имя? Вопрос?
Неужели не нашли в сети подходящей функции для решения задачи?
Конкретной функции не нашел. А распаковать и перебрать массив мне не по зубам с моими познаниями.
Зайдите в панель управления.
Типы контента — Ваштипконтента — Поля. И перетягивайте поля мышью вниз или ввер, как надо.
Таким образом можно изменить порядок полей при выводе.
Но системные поля, типа заголовка и даты, остаются на своих местах вне зависимости от этих настроек.
Андрей, рад что вы зашли в тему! Но вы не внимательно прочитали первый пост.
В форме добавления записи нужен другой порядок полей
Спасибо за советы
Поднимаем:
if($field['name'] == 'photos2') { photos2 } elseif($field['name'] == 'photos1') { photos1 } else { остальные
Я так понимаю эти операторы должны быть внутри foreach ($fieldset['fields'] as $field), а тогда смысл? Порядок останется прежним.
Пока сделал вот так:
<?php if (!empty($item['photo'])) { echo $fields['photo']['handler']->parse( $item['photo'] ); }?>
для каждого поля в нужном порядке, что конечно не очень красиво. Полей много.
Была идея задать array(photos2',photos1','photos3') и в соответствии сделать выборку в новый массив в нужном порядке. Но пока не найду реализацию.
И либо в руке изменить порядок
Это где?)
В шаблоне вроде нашел где выводятся поля https://github.com/instantsoft/icms2/blob/master/templates/default/content/default_item.tpl.php#L35
только как это реализовать? (не силён в ПХП). Как массив $fieldset['fields'] пересортировать по полю $field['name'] с такими-то значениями?
Добрый вечер!
Подскажите, есть возможность вывода полей в записи в определённой последовательности?
Например по системному имени в таком порядке: photos2, photos1, photos3.. В форме добавления записи нужен другой порядок полей
Это поле Расширяемый список не подойдёт?
Спасибо! Вы правы, так будет толковей
Добрый день
Нужно вывести 2 поля в одну строку в форме добавления.
Как я понял параметры обтекания действуют только при просмотре записи… В каком файле ковырять? Думаю сделать условие если имя поля == "" ..
Есть типы контента, которые создаются в группе (сообществе). По умолчанию записи этих типов могут создавать все участники группы. А мне нужно чтобы их могли добавлять только администраторы и владелец этой группы.По сути вопроса, ничего не понял.
Опция в настройках группы Управление правами добавления контента не подходит. Потому что там права добавления определяет владелец группы. А нужно задать безальтернативно: администраторы и владелец
но там оно не работает, насколько я понял там только выводится форма добавления
Я уже на самом деле куда только его не пихал

Вопрос вроде плёвый для понимающих код. Нужно жёстко задать чтобы тип контента, который создаются только в группе могли добавлять только администраторы и владелец группы
Выражение вроде такое
$group['content_policy']['posts'] = self::CTYPE_POLICY_STAFF;
\system\controllers\groups\actions\add.php ругается что класса такого не знает
после
<?php class actionGroupsAdd extends cmsAction { public function run(){ if (!cmsUser::isAllowed('groups', 'add')) { cmsCore::error404(); } $form = $this->getGroupForm(); $fields = $this->getGroupsFields(); $is_submitted = $this->request->has('submit'); $group = $form->parse($this->request, $is_submitted); $group['ctype_name'] = $this->name; // Заполняем поля значениями по умолчанию, взятыми из профиля пользователя // (для тех полей, в которых это включено) foreach($fields as $field){ $group[$field['name']] = $this->cms_user->{$field['options']['profile_value']}; } } $is_premoderation = cmsUser::isAllowed('groups', 'add', 'premod') && !$this->cms_user->is_admin; if ($is_submitted){ $errors = $form->validate($this, $group); if (!$errors){ $group['owner_id'] = $this->cms_user->id;
Кто сможет подсказать, как сделать так, чтобы при добавлении группы создавались пару предустановленных ролей?