自定義字段的相關函數一般放在/extensions/custom.php文件中,因為是自定義的,此文件不影響升級,大家都懂
一、函數介紹
1、字段類別函數:_formtype(),格式array('字段英文名字'=>'字段提示名稱')
2、字段配置函數:form_字段英文名字($setting=null)
3、表單輸出函數:content_字段英文名字($name, $content=null, $field=null)
二、舉例說明
1、建立一個文本框字段(名稱為test)
①、字段類別函數
function _formtype() {
return array(
'test' => '測試', //前者test表示字段的英文名稱,后者表示字段的描述名稱
);
}
②、字段配置函數
function form_test($setting=null) {
$size = isset($setting['size']) ? $setting['size'] : 150; //如果不填寫長度,默認為150
$default = isset($setting['default']) ? $setting['default'] : ''; //默認值,都能看懂
return '
<table width="98%" cellspacing="1" cellpadding="2">
<tbody>
<tr>
<td width="100">文本框長度 :</td>
<td><input type="text" class="input-text" size="10" value="' . $size . '" name="setting[size]"><font color="gray">px</font></td>
</tr>
<tr>
<td>默認值 :</td>
<td><input type="text" class="input-text" size="30" value="' . $default . '" name="setting[default]"></td>
</tr>
</tbody>
</table>';
}
③、表單輸出函數
function content_test($name, $content=null, $field=null) {
$setting = isset($field['setting']) ? string2array($field['setting']) : $field; //配置
$required = isset($field['not_null']) && $field['not_null'] ? ' required' : ''; //必填字段
//$errortips = isset($field['errortips']) && $field['errortips'] ? ' placeholder="' . $field['errortips'] . '"' : ''; //錯誤提示
$pattern = isset($field['pattern']) && $field['pattern'] ? ' pattern="' . $field['pattern'] . '"' : ''; //正則判斷
$content = is_null($content[0]) ? get_content_value($setting['default']) : $content[0]; //字段內容,固定值
return '<input type="text" value="' . $content . '" class="input-text" name="data[' . $name . ']" width=' . $setting['size']. '>'; //表單Name值格式為data[字段名稱]
}
2、建立一個讀取會員組表中的數據(名字為membergroup)
①、字段類別函數
function _formtype() {
return array(
'test' => '測試', //前者test表示字段的英文名稱,后者表示字段的描述名稱
'membergroup' => '會員組', //前者membergroup表示字段的英文名稱,后者表示字段的描述名稱
);
}
②、字段配置函數
function form_membergroup($setting=null) {
$default = isset($setting['default']) ? $setting['default'] : ''; //默認值,都能看懂
//調用會員組表中的數據
$model = Controller::model('member_group');//實例化會員組模型
$data = $model->getAll(1);//獲取會員組表中的全部數據,用于設置默認值
$select = '<select name="setting[default]"><option> -- </option>';
foreach ($data as $t) {
$selected = $default == $t['id'] ? 'selected' : '';
$select .= '<option value="' . $t['id'] . '" ' . $selected . '> ' . $t['name'] . ' </option>';
}
$select .= '</select>';
return '
<table width="98%" cellspacing="1" cellpadding="2">
<tbody>
<tr>
<td width="100">默認會員組 :</td>
<td>' . $select . '</td>
</tr>
</tbody>
</table>';
}
③、表單輸出函數
function content_membergroup($name, $content=null, $field=null) {
$setting = isset($field['setting']) ? string2array($field['setting']) : $field; //配置
$required = isset($field['not_null']) && $field['not_null'] ? ' required' : ''; //必填字段
//$errortips = isset($field['errortips']) && $field['errortips'] ? ' placeholder="' . $field['errortips'] . '"' : ''; //錯誤提示
$pattern = isset($field['pattern']) && $field['pattern'] ? ' pattern="' . $field['pattern'] . '"' : ''; //正則判斷
$content = is_null($content[0]) ? get_content_value($setting['default']) : $content[0]; //字段內容,固定值
//調用會員組表中的數據
$model = Controller::model('member_group');//實例化會員組模型
$data = $model->getAll(1);//獲取會員組表中的全部數據,用于設置默認值
$select = '<select name="data[' . $name . ']"><option> -- </option>';//表單Name值格式為data[字段名稱]
foreach ($data as $t) {
$selected = $content == $t['id'] ? 'selected' : '';
$select .= '<option value="' . $t['id'] . '" ' . $selected . '> ' . $t['name'] . ' </option>';
}
$select .= '</select>';
return $select;
}
④、效果預覽
添加字段時:
發布內容時:
就像示例2,自定義字段類別支持表數據顯示,當然也能自動將數據插入表單,完全支持自定義,只要你想要FineCMS就能幫你實現
- 安裝程序
- 環境需求
- 系統安裝
- 版權修改
- 后臺操作
- 系統設置
- 網站管理
- 欄目管理
- 內容管理
- 生成靜態
- 內容模型
- 表單模型
- 自定義資料
- 推送區域
- 功能教程
- 字段類別說明
- [靜態/偽靜態]自定義URL地址詳細教程
- 表單使用教程
- 網站多語言配置
- 后臺管理目錄
- 自定義模型
- 會員投稿流程
- 網站多語言配置方法
- 后臺管理目錄(admin)更改方法介紹
- 部分表的數據結構
- 自定義Tag標簽的URL
- 站內搜索參數說明及表單設計
- 多站點及分站配置
- 提交表單郵件通知
- 自定義字段表單調用
- 個性化URL結構
- 模型回調函數開發
- 重置管理員密碼
- 模板標簽
- 聯動菜單(linkage)
- FineCMS 模板設計指南
- 萬能標簽list
- 標簽語法說明
- 系統變量介紹
- 系統函數介紹
- 欄目{$cats}調用說明
- SQL語句查詢
- 推薦位調用
- Tag標簽調用
- 模型選項名稱和選項值
- 自定義字段類別