本文整理匯總了PHP中BaseElementModel::getFieldLayout方法的典型用法代碼示例。如果您正苦於以下問題:PHP BaseElementModel::getFieldLayout方法的具體用法?PHP BaseElementModel::getFieldLayout怎麽用?PHP BaseElementModel::getFieldLayout使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類BaseElementModel
的用法示例。
在下文中一共展示了BaseElementModel::getFieldLayout方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: getEditorHtml
/**
* @inheritDoc IElementType::getEditorHtml()
*
* @param BaseElementModel $element
*
* @return string
*/
public function getEditorHtml(BaseElementModel $element)
{
$html = '';
$fieldLayout = $element->getFieldLayout();
if ($fieldLayout) {
$originalNamespace = craft()->templates->getNamespace();
$namespace = craft()->templates->namespaceInputName('fields', $originalNamespace);
craft()->templates->setNamespace($namespace);
foreach ($fieldLayout->getFields() as $fieldLayoutField) {
$fieldHtml = craft()->templates->render('_includes/field', array('element' => $element, 'field' => $fieldLayoutField->getField(), 'required' => $fieldLayoutField->required));
$html .= craft()->templates->namespaceInputs($fieldHtml, 'fields');
}
craft()->templates->setNamespace($originalNamespace);
}
return $html;
}
示例2: validateContent
/**
* Validates some content with a given field layout.
*
* @param BaseElementModel $element The element whose content should be validated.
*
* @return bool Whether the element's content validates.
*/
public function validateContent(BaseElementModel $element)
{
$elementType = craft()->elements->getElementType($element->getElementType());
$fieldLayout = $element->getFieldLayout();
$content = $element->getContent();
// Set the required fields from the layout
$attributesToValidate = array('id', 'elementId', 'locale');
$requiredFields = array();
if ($elementType->hasTitles()) {
$requiredFields[] = 'title';
$attributesToValidate[] = 'title';
}
if ($fieldLayout) {
foreach ($fieldLayout->getFields() as $fieldLayoutField) {
$field = $fieldLayoutField->getField();
if ($field) {
$attributesToValidate[] = $field->handle;
if ($fieldLayoutField->required) {
$requiredFields[] = $field->id;
}
}
}
}
if ($requiredFields) {
$content->setRequiredFields($requiredFields);
}
return $content->validate($attributesToValidate);
}