wordpress主题后台设置框架Options Framework使用教程

制作wordpress主题时想给主题配备一个可以在后台设置的功能,如SEO设置,但是不会编写相关的php代码怎么办?后台主题配置框架来帮助你,Options Framework是国外大神通过wordpress api编写的轻量级wordpress后台设置面板框架,提供了常用的主题设置选项,最重要的是集成容易,使用简单,目前非常多的wordpress主题都在使用这个框架。

wordpress主题后台设置框架Options Framework使用教程

主题集成Options Framework框架教程:

1、下载Options Framework框架:https://github.com/devinsays/options-framework-theme/archive/master.zip

2、解压后,把options.php文件和inc/文件夹复制到自己主题的根目录

3、在自己主题的functions.php文件第一行<?php下面添加以下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
define( 'OPTIONS_FRAMEWORK_DIRECTORY', get_template_directory_uri() . '/inc/' );
require_once dirname( __FILE__ ) . '/inc/options-framework.php';
$optionsfile = locate_template( 'options.php' );
load_template( $optionsfile );
function optionsframework_custom_scripts() { ?>
 
<script type="text/javascript">
jQuery(document).ready(function() {
 
	//自己的js代码
 
});
</script>
<?php 
}

提示:由于Options Framework框架的安全机制,会自动过滤掉js,object等代码,如果需要添加js代码(如统计代码),请添加到上述代码中的“//自己的js代码”位置。

添加完代码后,在后台——外观下面就会出现“Theme Options”主题配置选项,点击就可以进入主题设置页面。

添加主题设置选项

框架默认提供了所有的设置类型,包括文本输入框(text)、多行文本框(textarea)、图片上传(upload)、多选框(multicheck)、单选框(radio)、颜色选择、下拉选项(select)、编辑器(editor)等,各设置类型的代码可以在options.php文件查看,输出代码可以在index.php文件查看,下面博客吧简单介绍一下添加设置选项的方法。

代码结构

1
2
3
4
5
6
7
8
9
$options[] = array(
	"name" =>'', //设置选项的名称
	"desc" =>'', //设置选项的文字说明
	"id" =>'', //设置选项的id,唯一,必填
	"std" =>'', //设置选项的默认值
	"class" =>'', //该类型元素class,可选mini、tiny、small
	"type" =>'', //设置选项的类型,如text
	"settings"=>'' //仅当调用editor编辑器时使用
);

1、文本输入框(text)

1
2
3
4
5
6
7
8
$options[] = array(
	'name' => 'SEO标题',
	'desc' => '自定义首页title标题',
	'id' => 'seo_title',
	'std' => '',
	'class' => 'mini',
	'type' => 'text'
);

输入文本框架内容代码:

1
2
3
4
5
<?php 
	if(of_get_option('seo_title')) {
		echo of_get_option('seo_title');
	}
?>

或者:

1
<?php echo of_get_option('seo_title', '如果设置为空,则显示这里的内容'); ?>

2、多选框架(multicheck)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$options[] = array(
	'name' => '选择数字,
	'desc' => '选择要显示的数字',
	'id' => 'select_num',
	'std' => '1'
	'type' => 'multicheck',
	'options' => array(
		'one' => '1',
		'two' => '2',
		'three' => '3',
		'four' => '4',
		'five' => '5'
	);
);

输出设置:

1
2
3
4
5
6
7
<?php 
	if(of_get_option('seo_title')) {
		foreach(of_get_option('seo_title') as $num){
			echo $num;
		}
	}
?>

框架功能比较多,博客吧不一一介绍,有需要的用户可以自行研究压缩包里的options.phpindex.php两个文件。

发表留言