CCK: Добавление нового поля (шаг 2)

Изображение пользователя andyceo.

Далее вы перейдёте на экран, где сможете определить больше параметров, чтобы задать как это поле должно работать. Он будет выглядеть примерно так:

New Field Form

Widget settings

These settings apply only to the My Text field as it appears in the Story content type.


Select a group, in which the field will be displayed on the editing form.

Instructions to present to the user below this field on the editing form.


Data settings

These settings apply to the My Text field in every content type in which it appears.


The maximum length of the field in characters. Leave blank for an unlimited size.

The possible values this field can contain. Enter one value per line, in the format key|label. The key is the value that will be stored in the database and it must match the field storage type, text. The label is optional and the key will be used as the label if no label is specified.


Вы заметите, что список возможных виджетов появляется вновь на данном экране. Это потому, что у вас есть возможность изменить используемый вашим полем виджет. Давайте сейчас пропустим этот раздел.

Некоторые из элементов, которые вы можете определить, следующие:

Заголовок (Label)

Создайте заголовок здесь. Это возможность создать такой заголовок, в котором есть различные компоненты, не только машинное название поля. Он может содержать пробелы или символы non-ASCII, и он может быть изменён позднее. Машинное имя не может быть изменено.

Строки (Rows)

Эту настройку вы увидите только для поля "Текст". Если Вы оставите её значение по умолчанию "1", появится очередное текстовое поле в вашей форме, которое будет хранится в виде поля varchar (MySQL) в базе данных. Если вы выберете число больше, чем "1", вы получите большое текстовое поле в вашей форме, для которого установлено введённое здесь количество строк, это поле будет хранятся в текстовом поле в базе данных.

Значение по умолчанию (Default value)

Вы увидите свёрнутую область, где можно ввести значение по умолчанию для этого поля. Вы можете использовать эту настройку или оставить её пустой.

Группы (Group)

Если вы включили модуль Fieldgroup, вы сможете выбрать группу, в которой разместится ваше поле. Если вы еще не создали ни одной группы, значение в этом поле ни на что не повлияет.

Справочный текст (Help text)

Всё, что Вы напечатаете в "Справочном тексте", появится для конечных пользователей в качестве описания этого элемента формы.

Обязательно (Required)

Если Вы выберете эту опцию, вы сделаете так, что это поле станет обязательным для заполнения, и пользователь должен будет заполнить его, иначе он не сможет сохранить новый документ.

Множественные значения (Multiple values)

Возможность задания множественных значений является одной из наиболее мощных и запутанных частей CCK. Если опция выбрана, пользователи смогут выбрать или создать более чем одно значение из перечисленных. Один из наиболее распространенных видов использования этого - создать текстовое или числовое поле, которое использует виджет списка или флажки, где вы разрешаете пользователям выбрать более одного пункта.

Обработка текста (Text processing)

Это еще одна опция, которая применяется только к текстовым полям. Здесь вы можете определить, имеет ли пользователь возможность выбрать фильтр для обработки текстов. Возможность использования фильтра будет иметь смысл только в том случае, если создаётся текстовое поле с более чем одной строкой.

Максимальная длина (Maximum length)

Выберите максимальную длину поля или оставьте её пустой для неограниченной длины. Если это текстовое поле, эта величина будет использоваться для сокращения поля до выбранного размера.

Список разрешённых значений (Allowed values list)

Этот параметр будет редко иметь какой-либо смысл или быть полезным, если только вы не решите использовать виджет в виде выпадающего списка или флажка. Если вы используете такие виджеты, то здесь вы можете определить перечень вариантов, из которых пользователи будут выбрать.

Сохранить поле (Save the field)

Выберите или заполните вышеперечисленные значения, а затем сохраните поле. Вы будете направлены обратно на экран "Управление полями" ('Manage Fields').

Пример php-кода для разрешенных значений для поля cck (из комментариев пользователей, автор - davidhunt)

Это глупый кусок кода, который я написал, когда экспериментировал со способами дать определённому типу контента доступ к терминам таксономии для cck-полей без использования таксономии. Идея, вероятно, бесполезна, но код работает. Я привёл его здесь потому, что было бы действительно неплохо иметь один или два примера в документации для данного раздела. It would have saved me a bunch of experimentation. Это бы спасло мне кучу времени, потраченного на эксперименты.

<?php
$terms
= taxonomy_get_tree(1); //$terms will be an array of objects representing taxonomy terms

foreach($terms as $term) {
$term_names[] = $term->name; //$term_names will be an array consisting of the name of each taxonomy term
}

return
$term_names;
?>

Источник: Adding a New Field (step 2)

Добавьте страницу в закладки. Перейти к верху страницы
Синдикация материалов