博客建立已经一年有余了,建立之初只为给闲暇的自己找点儿事情做,督促怠惰的自己不断学习。站内分享的各类资源或多或少都有一些,其中因为博主初入站长圈,对建站之事所知甚少,因此站内分享的主题修改相关文章偏多一些,而在这一年多的时间里,有不少同样喜好折腾的朋友们对于主题修改提出了不少疑问,疑问大多是由于不同主题之间的差异造成的。而对于不同主题我们不可能要求主题作者们将其之间的差异统一起来。
本博目前使用的 DUX 主题后台设置选项是在 OptionFramework 框架上建立起来的,分享的主题修改相关内容,凡涉及后台自定义选项的也多半依此框架。然而即使同样使用该框架做后台的主题也多有自己的自定义 Options Framework 输出方式,所以为了避免大家在主题修改时不清楚框架的输出方式而导致修改代码错误,网站崩溃,功能无法实现。这里我统一另设一输出方式,大家只需将以下代码丢到主题 functions.php 文件中,然后继续修改主题应当是不会再出现什么错误 了。
<?php /** * Helper function to return the theme option value. * If no value has been saved, it returns $default. * Needed because options are saved as serialized strings. * * Not in a class to support backwards compatibility in themes. */ if ( ! function_exists( 'QGG_options' ) ) : function QGG_options( $name, $default = false ) { $option_name = 'dux'; // Gets option name as defined in the theme if ( function_exists( 'optionsframework_option_name' ) ) { $option_name = optionsframework_option_name(); } // Fallback option name if ( '' == $option_name ) { $option_name = get_option( 'stylesheet' ); $option_name = preg_replace( "/\W/", "_", strtolower( $option_name ) ); } // Get option settings from database $options = get_option( $option_name ); // Return specific option if ( isset( $options[$name] ) ) { return $options[$name]; } return $default; } endif; ?>
另外,为了避免大家在添加完后台设置选项后找不到选项位置,日后所有放于 options.php 文件中的代码请放于以下代码之后,没有的话请复制以下代码至主题 options.php 文件中去:
<?php /** * 蝈蝈自定义后台设置 * URL:https://www.blog.quietguoguo.com */ $options[] = array( 'name' => __('蝈蝈功能', 'QGG'), 'type' => 'heading'); ?>
以上。
评论 (9)
学到了不少东西!我的博客,欢迎回访
重复评论
大神牛逼
function加上这段代码,媒体库打不开,也上传不了文件
额,代码跟媒体库没关系。。。
就是我按照 博主的代码 要实现底部三栏的效果 还有一个首页公告的效果 各个页面代码都添加进去了 效果也出来了 可是 登陆网站后台 设置参数的时候 不管设置哪个页面 只要点击保存设置 就会跳转到 otions.php的页面 而且是空白的
这个不太清楚,没有遇到过。看看是不是代码哪里配置有问题了。
设置后 后台设置 保存后 就会跳转到 optinos.php 页面 而且是空白也 请问博主该如何调整呢 就是添加了网页公告和底部三栏 的效果
不太明白你的意思。