复选框checkbox

复选框checkbox即<input type="checkbox">标签。

文章自定义字段

自定义面板的添加请参考配置文件。配置代码范例:

  1. //注意,本范例配置变量并非$seo_meta
  2. $ashu_meta[] = array(
  3.   'name'    => '选择喜欢的水果',
  4.   'id'      => '_id_checkbox',
  5.   'desc'    => 'Which fruits do you like?',
  6.   'std'     => array('apple','orange'),
  7.   'subtype' => array(
  8.     'apple'  => '苹果',
  9.     'orange' => '橘子',
  10.     'banana' => '香蕉',
  11.     'lemon'  => '柠檬'
  12.   ),
  13.   'type'    => 'checkbox'
  14. );

详解:

name - 自定义字段标题

id - 自定义字段名称,获取数据时用。敬告:请确配置文件中所有id都不相同,同时避免post\page\title等词。

desc - 自定义字段描述信息

std - 数组,默认选中,由于复选框可以选择多个,所以该参数使用数组(数组中的值请设置为buttons中存在的)

subtype - 数组或字符串,即选项。注意真正保存的数据为数组的键名,即范例中的英文male\female,键名请避免中文,该参数设置为page、category(或自定义分类法名称)、nav_menu、sidebar时会自动调用相关内容。

type - 值为checkbox时,本条字段类型为复选框

获取与输出范例(注意:复选框获取的数据为数组,输出请注意):

  1. //获取文章自定义字段的值,请参考get_post_meta函数
  2. //获取
  3. $post_id = $post->ID; //首选需要获取文章id
  4. $like = get_post_meta($post_id,'_id_checkbox',true); //_id_radio即配置数据中的id值
  5. //注意,复选框获取的数据$like为数组,输出时请注意
  6. //以下输出仅作参考
  7. $all_fruit = array(
  8.   'apple'  => '苹果',
  9.   'orange' => '橘子',
  10.   'banana' => '香蕉',
  11.   'lemon'  => '柠檬'
  12. );
  13. if($like){
  14.   $output = '本文作者喜欢的水果有:';
  15.   foreach($all_fruit as $key => $value){
  16.     if(in_array($key,$like)){
  17.       $output .= $value.'、';
  18.     }
  19.   }
  20.   echo rtrim($output,'、');
  21. }

分类自定义字段

分类页面自定义字段的添加请参考配置文件。配置代码范例:

  1. $taxonomy_meta[] = array(
  2.   'name'    => '选择喜欢的水果',
  3.   'id'      => '_id_checkbox',
  4.   'desc'    => 'Which fruits do you like?',
  5.   'std'     => array('apple','orange'),
  6.   'subtype' => array(
  7.     'apple'  => '苹果',
  8.     'orange' => '橘子',
  9.     'banana' => '香蕉',
  10.     'lemon'  => '柠檬'
  11.   ),
  12.   'type'    => 'checkbox'
  13. );

详解:

name - 自定义字段标题

id - 自定义字段名称,获取数据时用。敬告:请确配置文件中所有id都不相同,同时避免post\page\title等词。

desc - 自定义字段描述信息

std - 数组,默认选中,由于复选框可以选择多个,所以该参数使用数组(数组中的值请设置为buttons中存在的)

subtype - 数组或字符串,即选项。注意真正保存的数据为数组的键名,即范例中的英文male\female,键名请避免中文,该参数设置为page、category(或自定义分类法名称)、nav_menu、sidebar时会自动调用相关内容。

type - 值为checkbox时,本条字段类型为复选框

应用范例:

暂无

设置页面

设置页面的添加请参考配置文件。配置代码范例:

  1. $general_pageinfo = array(
  2.   'full_name' => '基本设置',
  3.   'optionname'=>'general', //设置名称,获取设置选项用
  4.   'child'=>false,
  5.   'filename' => 'generalpage'
  6. );
  7. $general_option = array();
  8. $general_option[] = array('desc' => '', 'type' => 'open');
  9. //复选框范例
  10. $general_option[] = array(
  11.   'name'    => '站长爱好',
  12.   'id'      => 'blogger_like',
  13.   'desc'    => 'Please select your gender',
  14.   'std'     => array('apple','lemon'),
  15.   'subtype' => array(
  16.     'apple'  => '苹果',
  17.     'orange' => '橘子',
  18.     'banana' => '香蕉',
  19.     'lemon'  => '柠檬'
  20.   ),
  21.   'type'    => 'radio'
  22. );
  23. $general_option[] = array('desc' => '', 'type' => 'close');
  24. $general_page = new ashu_option_class($general_option$general_pageinfo);

详解:

name - 自定义字段标题

id - 自定义字段名称,获取数据时用。敬告:请确配置文件中所有id都不相同,同时避免post\page\title等词。

desc - 自定义字段描述信息

std - 数组,默认选中,由于复选框可以选择多个,所以该参数使用数组(数组中的值请设置为buttons中存在的)

subtype - 数组或字符串,即选项。注意真正保存的数据为数组的键名,即范例中的英文male\female,键名请避免中文,该参数设置为page、category(或自定义分类法名称)、nav_menu、sidebar时会自动调用相关内容。

type - 值为checkbox时,本条字段类型为复选框

获取与输出范例(注意:复选框获取的数据为数组,输出请注意):

  1. //方法一
  2. global $ashu_option//直接使用全局变量,一个文件中使用一次即可
  3. //获取
  4. //general即添加设置页面时设置选项名称optionname的值\blogger_like即配置数据中的id值
  5. $blogger_like = '';
  6. if(isset($ashu_option['general']['blogger_like']) && $ashu_option['general']['blogger_like']!=''){
  7.   $blogger_like = $ashu_option['general']['blogger_like'];
  8. }
  9. $all_fruit = array(
  10.   'apple'  => '苹果',
  11.   'orange' => '橘子',
  12.   'banana' => '香蕉',
  13.   'lemon'  => '柠檬'
  14. );
  15. if($blogger_like){
  16.   $output = '站长的水果有:';
  17.   foreach($all_fruit as $key => $value){
  18.     if(in_array($key,$blogger_like)){
  19.       $output .= $value.'、';
  20.     }
  21.   }
  22.   echo rtrim($output,'、');
  23. }
  24. //方法二
  25. $general_option = get_option('ashu_general'); //获取设置选项组,为了使选项名称不冲突,在general前面加上前缀ashu_
  26. //获取
  27. $blogger_like = '';
  28. if(isset($ashu_option['general']['blogger_like']) && $ashu_option['general']['blogger_like']!=''){
  29.   $blogger_like = $general_option['blogger_like'];
  30. }
  31. $all_fruit = array(
  32.   'apple'  => '苹果',
  33.   'orange' => '橘子',
  34.   'banana' => '香蕉',
  35.   'lemon'  => '柠檬'
  36. );
  37. if($blogger_like){
  38.   $output = '站长喜欢的水果有:';
  39.   foreach($all_fruit as $key => $value){
  40.     if(in_array($key,$blogger_like)){
  41.       $output .= $value.'、';
  42.     }
  43.   }
  44.   echo rtrim($output,'、');
  45. }

自定义分类法的支持

以产品分类products为例:将配置选项中的subtype的值设置为products即可。