• wordpress CMS主题:ssmay主题wordpress CMS主题:ssmay主题
  • 首页 > wordpress CMS主题制作 > 用类来添加wordpressCMS主题设置页面(1):思路简明

    用类来添加wordpressCMS主题设置页面(1):思路简明

    作者: 分类:wordpress CMS主题制作 点击: 2,104 次
    wordpress CMS主题:ssmay主题

      在前面的章节中,我们详细介绍了如何为wordpressCMS主题添加主题设置页面,这样会为你的主题添加更多的功能。但是,如果要添加新的表单选项,我们要手动添加或修改好几个地方的代码,对于wordpress主题设计者来说,有点麻烦非常不方便。这时,我们就想到了类的好处,我们把wordpress主题设置页面框架封装在一个类文件中,然后,设置选项的配置在类的外面配置,想添加什么选项,只需要选择类型、id、默认值即可,这样不仅节省了大量的代码,也方便了设计者的灵活使用。

      总体恩路如下:

      1、设计类文件。类的结构如下:

      class Wanlimm_Class{
      var $options;
      //...类的属性

      //通过参数实例化类 ,是类的构造函数
      function __construct($options,$pageinfo){
      //通过page_info参数信息执行创建设置页面的函数
      //执行加载js和css的函数
      }
      function add_themeset_menu(){ //创建设置页面函数 即创建后台菜单
      //通过optinos执行页面输出函数
      }
      function Add_JS(){
      //加载js css函数
      }
      function display(){ //页面输出函数
      //分析options,执行不同表单输出代码
      }
      function save_option(){
      //保存更新数据函数
      }

      //各种类型表单输出函数
      function text(){}
      function textarea(){}
      function upload(){}
      //......等等

      }

      2、添加选项设置文件。也就是实例化类的文件。

      首先,添加配置设置页面信息的代码。

      $pageinfo = array('full_name' => '网站主题设置', 'optionname'=>'ashu', 'child'=>true, 'filename' => basename(__FILE__));

      然后,以数组形式配置表单选项代码,如下:

      $options[] = array(
      "name"=>"选项一", //选项标题
      "id"=>"option1", //选项id
      "size"=>"60",
      "desc"=>"描述文字",
      "type"=>"text" //表单类型
      );

      $options[] = array(
      "name"=>"选项二",
      "id"=>"option2",
      "desc"=>"描述文字",
      "type"=>"textarea"
      );

       

      然后,实例化类文件,

      $options_page = new Wanlimm_Class($options, $pageinfo);

      通过类来创建wordpress主题设置页面就是这样的一个思路,这样就大大提高了代码的重复使用,减轻了wordpress主题设计者的工作量,同时还提高了代码的使用效率。



      QQ二维码

    文章作者:高时银博客
    本文地址:http://wanlimm.com/77201506244517.html
    版权所有 © 转载时必须以链接形式注明作者和原始出处!

    上一篇:
    下一篇:
    wordpress CMS主题:ssmay主题

    或许你会感兴趣的文章:

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    This site uses Akismet to reduce spam. Learn how your comment data is processed.