API Seblod - извлечение значений в пользовательских шаблонах

Посохов Юрий
02.08.2012
9391

Здесь постараюсь собрать список наиболее часто используемых API команд SEBLOD, с помощью которых можно оперировать значениями, полями, формами и т.д. в пользовательских шаблонах.

Описание Код API Альтернативный код API
Вывести эскиз изображения Thumb1 из первого поля изображения fieldx.
Нумерация полей в массиве начинается с 0!
$cck->getValue('fieldname,0'); $cck->get( 'fieldname')->value[0]->thumb1;
Вывести поле (с учетом настроек Typo и линком, если он был установлен в форме) $cck->renderField( 'fieldname' );  
Вывести чистое значение поля (без учета Typo и линков) $cck->getValue( 'fieldname' ); $cck->get('fieldname')->value;
Вывести значение поля "field_inside_groupx", входящего в первую группу полей, созданных с помощью поля GroupX $cck->get( 'groupx_field' )->value[0]['field_inside_groupx']->value;  $cck->getValue('groupx_field',0, 'field_inside_groupx' ); ?>
Вывести ссылку, заданную для поля link-плагинами $cck->getLink('fieldname'); $cck->get('fieldname')->link;
Вывести значение поля 'имя_поля' входящего в поле group 'имя_group' $cck->getValue('имя_group',0, 'имя_поля' );  
Вывести эскиз изображения thumb1 $cck->getThumb1('fieldname'); $cck->get('fieldname')->thumb1;
Вывести лейбл поля $cck->getLabel('fieldname'); $cck->get('fieldname')->label;
Вывысти поле (для формы) $cck->renderForm('fieldname');  
Вывести Typo настройки поля $cck->getTypo('fieldname'); $cck->get('fieldname')->typo;
Вывести опцию поля (например checkbox) $cck->getText('checkbox_field'); $cck->get('fieldname')->text;
Вывести поле с минимально необходимым кодом HTML (например для поля изображения это будет уже не путь к изображению, как с помощью команды getValue, а код в виде <img src="/путь к изображению" /> $cck->getHtml('image_field'); $cck->get('fieldname')->html;
Вывести все поля из позиции mainbody $cck->forcePosition('mainbody');  

Обратите внимание, вы всегда можете посмотреть с помощью echo var_dump($cck) все возможные элементы, к которым можете обратиться в шаблоне.

Просмотрите код шаблонов seblod - seb_one, seb_blod, seb_table - там применены многие команды API, отличный наглядный пример использования.

Комментарии  

# athree Также работает:

$cck->get('fieldname')->form;
# add Кажется, тут ошибка:

Вывести значение поля 'имя_поля' входящего в поле group 'имя_group' : $cck->getValue('имя_group',0, 'имя_поля' );

При чем здесь "0"?
# Григорий А есть ли полный список API с описанием?
# Yuri Posohov Полного списка нет, но как вариант в нужном месте (форме, выводе) своего шаблона/оверрай да сделайте echo var_dump($cck); и сразу станет ясно, к каким переменным можно обратиться
# Саня Вот это умная мысль, огромное спасибо ,думаю надо всем поддерживать эту идею, что б все было легче жить) :-)

У Вас недостаточно прав для добавления комментариев. Для того, чтобы оставить свой комментарий необходимо зарегистрироваться на сайте.