当前位置: 首页>>代码示例>>PHP>>正文


PHP BaseElementModel::getFieldLayout方法代码示例

本文整理汇总了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;
 }
开发者ID:codeforamerica,项目名称:oakland-beta,代码行数:23,代码来源:BaseElementType.php

示例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);
 }
开发者ID:kant312,项目名称:sop,代码行数:35,代码来源:ContentService.php


注:本文中的BaseElementModel::getFieldLayout方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。