如何在 pyrocms 中使用流 API 为流字段的输入定义占位符?
How to define a placeholder for an input of a stream field using stream API in pyrocms?
我正在使用 Pyrocms 的社区版,所以无法真正使用专业版中的流模块的好处。我正在尝试使用 Stream API.
我定义了一个流字段的元数据如下:
$field = [
'name' => 'First Name',
'slug' => 'first_name',
'namespace' => 'users',
'type' => 'text',
'extra' => array(
'max_length' => 50,
'placeholder'=> 'Enter your first name' //NOT WORKING
),
'assign' => 'profiles',
'required' => true
]
$this->streams->fields->add_fields($fields);
在上面的代码中,我在 extra
中声明了一个键 placeholder
并写入了它的值。但是当我稍后通过回显 as
在表单中使用这个流域时
<?php echo $field['input']; ?>
输入字段按预期呈现,验证也有效,但未显示占位符文本。当我在为字段定义元数据时尝试添加额外的 class 属性时也是如此。我仔细查看了 pyrocms 文档。它说有一种方法可以为呈现的输入定义属性,但没有说明如何去做。我尝试将它添加到 extra
中,也尝试在 extra
之外定义,但我仍然无法显示输入字段的额外属性。另外,当类型设置为选择时,我应该把下拉菜单或复选框的默认值放在哪里?
字段类型 'text' 没有参数 'placeholder',只有 'max_length' 和 'default_value'。
因此您可以复制文本字段类型,重命名文件夹和 class,将其放入 addons/default/field_types 并将此参数添加到字段类型 - 基本上是编写您自己的字段类型。这真的很简单,我为你做了一个要点:https://gist.github.com/marcogrueter/02b5e70f02402d999059
我正在使用 Pyrocms 的社区版,所以无法真正使用专业版中的流模块的好处。我正在尝试使用 Stream API.
我定义了一个流字段的元数据如下:
$field = [
'name' => 'First Name',
'slug' => 'first_name',
'namespace' => 'users',
'type' => 'text',
'extra' => array(
'max_length' => 50,
'placeholder'=> 'Enter your first name' //NOT WORKING
),
'assign' => 'profiles',
'required' => true
]
$this->streams->fields->add_fields($fields);
在上面的代码中,我在 extra
中声明了一个键 placeholder
并写入了它的值。但是当我稍后通过回显 as
<?php echo $field['input']; ?>
输入字段按预期呈现,验证也有效,但未显示占位符文本。当我在为字段定义元数据时尝试添加额外的 class 属性时也是如此。我仔细查看了 pyrocms 文档。它说有一种方法可以为呈现的输入定义属性,但没有说明如何去做。我尝试将它添加到 extra
中,也尝试在 extra
之外定义,但我仍然无法显示输入字段的额外属性。另外,当类型设置为选择时,我应该把下拉菜单或复选框的默认值放在哪里?
字段类型 'text' 没有参数 'placeholder',只有 'max_length' 和 'default_value'。
因此您可以复制文本字段类型,重命名文件夹和 class,将其放入 addons/default/field_types 并将此参数添加到字段类型 - 基本上是编写您自己的字段类型。这真的很简单,我为你做了一个要点:https://gist.github.com/marcogrueter/02b5e70f02402d999059