ashuwp_framework阿树框架配置文件

在加载完本框架之后,会由默认的配置文件显示出很多默认的自定义字段,然而这些默认数据仅仅是我们提供给网友在配置时做参考用的。

在框架的include文件夹中,有config.php和config-example.php两个文件,其中config.php是我们提供的默认配置文件,而config-example.php没有用处仅仅做一个配置文件的备份,以防止网友在编辑过程中忘记某一个类型表单的配置方法。

需要说明的是,并没有规定配置文件的文件名一定要是config.php,如果你愿意,你可以新建一个名为int.php、peizhi.php等等文件做配置文件,甚至你可以直接将配置代码放在主题的functins.php文件中。不过如果你修改了配置文件的文件名,在你加载本框架代码的时候,请将

require get_template_directory() . '/include/config.php';

中config.php文件的路径以及文件名修改为你自己的。

注意:

配置文件中,所有id请避免post\page\post_title等等,以免冲突。

其次,变量名$ashu_option为全局变量,已被占用,所以,变量名请避免$ashu_option,以免冲突。

文章自定义字段

范例:给post和page添加一个关键词和描述字段

    /*****SEO Box********/
    $seo_meta = array();
    //自定义字段面板配置
    $seoinfo = array(
      'title' => 'SEO',  //面板标题
      'id'=>'seobox', //id 面板的id
      'page'=>array('page','post'), //支持的文章类型
      'context'=>'normal', //面板的位置
      'priority'=>'low', //优先级
      'callback'=>''
    );
    //增加一个关键词字段
    $seo_meta[] = array(
      'name' => '关键词',
      'id'   => '_seo_keywords',
      'desc' => '多个关键词请用英文逗号分隔',
      'std'  => '',
      'type' => 'text'
    );
    //增加一个描述字段
    $seo_meta[] = array(
      'name' => '描述信息',
      'id'   => '_seo_description',
      'desc' => '',
      'std'  => '',
      'type' => 'textarea'
    );
    //创建面板
    $seo_box = new ashu_meta_box($seo_meta, $seoinfo);

详解:

1. 创建一个面板需要三个变量,如范例中 $seo_meta、$seoinfo、$seo_box,在配置多个面板的过程中,请确保变量名不要相同,以免混乱。敬告:所有变量中的id也不要相同,以避免混乱。

2. $seoinfo是创建自定义字段板块的基本信息,参数可参考add_meta_box函数。

3. $seoinfo中page参数的值是一个数组,可支持多个文章类型,比如如页面、文章、产品页面都需要出现这个SEO面板:page参数的值设置为 array('page','post','product')即可

4. $seoinfo中context参数的值为normal则面板出现在默认编辑器的下方,值为side时面板出现在默认编辑器的右侧栏。

5. $seoinfo中priority参数为面板的优先级,设置为high则该面板在会出现在所有面板的前面(仍然在编辑器下方)

6. $seo_meta参数是一个二维数组,用来配置字段。

7. $seo_box是最后实例化类,创建面板。

代码结构,使用本框架创建自定义面板和自定义字段的配置代码结构如下

    //首先一个自定义字段面板配置变量,配置自定义面板的基本信息
    $seoinfo = array(
      'title' => 'SEO',  //面板标题
      'id'=>'seobox', //id 面板的id
      'page'=>array('page','post'), //支持的文章类型
      'context'=>'normal', //面板的位置
      'priority'=>'low', //优先级
      'callback'=>''
    );
    //然后是N组配置字段的变量
    $seo_meta[] = array();
    /**省略n行配置代码**/
    //最后再实例化类,创建面板
    $seo_box = new ashu_meta_box($seo_meta, $seoinfo);

分类自定义字段

范例:给默认文章分类(category)和产品分类(products)添加一个关键词字段

    $taxonomy_meta = array();
    $taxonomy_info = array('category','products');
    $taxonomy_meta[] = array(
      'name' => '关键词',
      'desc' => '',
      'std'=>'',
      'edit_only'   => false,
      'id' => '_seo_keywords',
      'type' => 'text'
    );
    $taxonomy_feild = new ashu_taxonomy_feild($taxonomy_meta, $taxonomy_info);

详解:

1. 创建一个面板需要三个变量,如范例中 $taxonomy_meta、$taxonomy_info、 $taxonomy_feild,在配置多组数据的过程中,请确保变量名不要相同,以免混乱。敬告:所有变量中的id也不要相同,以避免混乱。

2. $taxonomy_info仅仅是一个数组,用来支持多个分类法。

3. $taxonomy_feild为实例化类,创建字段。

代码结构,使用本框架为分类添加自定义字段的配置代码结构如下

    //首先一个变量,说明下面的代码支持哪些分类法
    $taxonomy_info = array('category','products');
    //然后是N组配置字段的变量
    $taxonomy_meta[] = array();
    /**省略n行配置代码**/
    //最后再实例化类
    $taxonomy_feild = new ashu_taxonomy_feild($taxonomy_meta, $taxonomy_info);

设置页面

范例:增加两个设置页面:基本设置、SEO设置。

    //基本设置
    $general_pageinfo = array(
      'full_name' => '基本设置',
      'optionname'=>'general', //设置名称,获取设置选项用
      'child'=>false, //整个网站不管配置多少个设置页面,必须且只能有一个顶级页面,即child设置为false
      'filename' => 'generalpage' //设置页面的url
    );
    $general_option = array();
    $general_option[] = array('desc' => '', 'type' => 'open'); //需要有,与后面type="close"配合使用,用于设置页面table标签的闭合
    $general_option[] = array(
      'name'=>'首页标题',
      'id'=>'home_title',
      'std'=>'',
      'desc'=>'',
      'type'=>'text'
    );
    $general_option[] = array('desc' => '', 'type' => 'close');
    $general_page = new ashu_option_class($general_option, $general_pageinfo);
    //SEO设置
    $seo_pageinfo = array(
      'full_name' => 'SEO设置',
      'optionname'=>'seo',
      'child'=>true, //此设置页面非顶级页面,所以设置为true
      'parent_slug'=>'generalpage', //若child为true,请务必设置parent_slug选项
      'filename' => 'seopage'
    );
    $seo_option = array();
    $seo_option[] = array('desc' => '', 'type' => 'open');
    $seo_option[] = array(
      'name'=>'首页关键词',
      'id'=>'_seo_keywords',
      'std'=>'',
      'desc'=>'',
      'type'=>'text'
    );
    $seo_option[] = array('desc' => '', 'type' => 'close');
    $seo_page = new ashu_option_class($seo_option, $seo_pageinfo);

详解:

1. 创建一个设置页面需要1组2个变量,如范例中$general_pageinfo、$general_option、 $general_page,如果需要添加多个设置页面,请配置多组数据即可,在配置多组数据的过程中,请确保变量名不要相同,以免混乱。敬告:所有变量中的id也不要相同,以避免混乱。

2. $general_pageinfo为设置页面基本信息:

3. $general_pageinfo的thild参数设置为false,则添加顶级页面,为true则为子页面,不管添加多少个设置页面,child参数必须且至少有一个设置为false,即必须有顶级页面才可能出现子页面,且若页面为子页面,请设置parent_slug参数

4. $general_pageinfo的parent_slug参数用于设置当前页面的父页面,值设置为对应的顶级页面的filename的值即可。

5. 在添加设置选项的过程中,开头需要一个'type' => 'open'的设置选项,结尾需要一个'type' => 'close'的选项,用于闭合设置页面的table标签,在一个页面中,是允许出现多组'type' => 'open'和'type' => 'close'的。

代码结构,使用本框架添加设置页面的配置代码结构如下

    //首先一个页面配置变量$tab_info配置页面的标题,选项名称等基本参数。
    $general_pageinfo = array(
      'full_name' => '基本设置',
      'optionname'=>'general', //设置名称,获取设置选项用
      'child'=>false, //整个网站不管配置多少个设置页面,必须且只能有一个顶级页面,即child设置为false
      'filename' => 'generalpage' //设置页面的url
    );
    //接着是具体选项的配置变量$tab_option
    $general_option = array();
    //先以一个 'type'=>'open' 开始
    $general_option[] = array('desc' => '', 'type' => 'open'); //需要有,与后面type="close"配合使用,用于设置页面table标签的闭合
    //然后是N组设置选项的配置变量
    $general_option[] = array( );
    /**省略n行配置代码**/
    //以一个 'type'=>'close' 结束
    $general_option[] = array('desc' => '', 'type' => 'close');
    //最后再实例化类
    $general_page = new ashu_option_class($general_option, $general_pageinfo);

 

 

 

 

 

 

 

 

预见

发表评论

:?::razz::sad::evil::!::smile::oops::grin::eek::shock::???::cool::lol::mad::twisted::roll::wink::idea::arrow::neutral::cry::mrgreen: