WordPress后台主题设置选项添加教程
课程目标:学习WPD主题设置面板的使用
课后作业,跟着视频,把WPD面板融合到自己的主题中。
目录:
第一课、主题集成WPD设置模板 1
第二课、添加修改设置模块 2
第三课、主题设置前台调用 3
第四课、企业主题集成演示 4
第一课、主题集成WPD设置模板
第1节:WPD模板的介绍
- WPD由来和文件介绍;
- WPD原理:add_meta_boxes;
第2节:集成WPD到WP主题
2-1、制作一个最简单的wordpress主题:
/*
Theme Name: 学建站网主题设置主题
Theme URI: https://www.xuewangzhan.net/
Description: 这是一个主题设置的演示模板
Author:学建站网
Author URI: https://www.xuewangzhan.net/
Version: 2.0
Tags: white, 主题设置
*/
2-2、在主题文件中放置WPD必备文件admin;
2-3、在函数文件functions.php文件中放置以下代码:
// 加载WPD主题设置框架
require_once( TEMPLATEPATH . '/admin/panel.php');
require_once( TEMPLATEPATH . '/admin/theme-form.php');
require_once( TEMPLATEPATH . '/admin/theme-options.php' );
第二课、添加修改设置模块
第1节:了解theme-options.php主题设置模块参数
type: input 字段的类型 – select text 或者 textarea;
name: input 字段的名称;
title: 模块的标题;
options: 用来给 select 类型的 input 声明一个选项的数组
desc: 添加内容的说明;
value: 默认值;
第2节:修改theme-options.php添加设置模块
2-1、设置面板标题;
2-2、添加主题设置选项.
第三课、主题设置前台调用
- 一般输出调用语句:
<?php echo get_option(' name'); ?>
- 判断输出语句①:
<?php if ( get_option(' name ') ) { ?>
<?php echo stripslashes(get_option(' name ')); ?>
<?php } else { ?>
//自定义内容
<?php } ?>
- 判断输出语句②:
<?php if(get_option(' name ')) {echo "11111111111111";} else{echo "22222222";}?>
- 反向判断语句:
<?php if (get_option(' name ')!==' ') { ?>
<?php echo get_option(' name) ?>
<?php } ?>
5、自定义字段语句:
<?php if (get_option('name')) { $url_id= get_option('name'); ?>
//调用字段 $url_id
<?php } ?>
注意:字段放置到引号之外
- 增加栏目
'wpd-general-upload-settings' => array(
array(
'type' => 'upload',
'name' => 'wpd_logo_upload',
'title' => __('LOGO地址', 'wpd'),
'desc' => __( '这里输入LOGO图片的url,LOGO尺寸:620*93', 'wpd'),
'value' => ''
) ,
array(
'type' => 'upload',
'name' => 'wpd_syflash_upload',
'title' => __('首页幻灯图片', 'wpd'),
'desc' => __( '这里输入首页幻灯图片的url,LOGO尺寸:1080*325', 'wpd'),
'value' => ''
)
)
- 将后台值存入循环中
<?php if (have_posts()) : ?>
<?php $anli=get_option('wpd_wxxm'); ?>
<?php query_posts('cat='.$anli . $mcatID. '&caller_get_posts=1&showposts=6'); ?>
<?php while (have_posts()) : the_post(); ?>
<?php endwhile;?>
<?php endif; wp_reset_query(); ?>
如果是同时调用多个分类的代码,可以定义多个变量
<?php $dibu1=get_option('wpd_yflb1') ?>
<?php $dibu2=get_option('wpd_yflb2') ?>
<?php $display_categories = array($dibu1,$dibu2); foreach ($display_categories as $category) { ?>
<?php query_posts("showposts=20&cat=$category")?>
第四课、企业主题集成演示
第1节:主题集成WPD面板
1-1、在主题文件中放置WPD必备文件admin;
1-2、在函数文件functions.php文件中放置以下代码:
// 加载WPD主题设置框架
require_once( TEMPLATEPATH . '/admin/panel.php');
require_once( TEMPLATEPATH . '/admin/theme-form.php');
require_once( TEMPLATEPATH . '/admin/theme-options.php' );
第2节:logo和幻灯片的设置添加
2-1、logo设置代码添加:
反向判断语句
<!---判断开始--->
<?php if (get_option(' name ')!==' ') { ?>
<?php echo get_option(' name') ?>
<?php } ?>
<!---判断结束--->
2-2、幻灯片图片后台设置;
一般输出调用语句
<?php echo get_option(' name ') ?>
第3节:更多地址和分类ID后台设置
3-1、更多地址URL设置;
一般输出调用语句
<?php echo get_option(' name ') ?>
3-2、分类调用ID后台设置;
自定义字段语句:
<?php if (get_option('name')) { $url_id= get_option('name'); ?>
//调用字段 $url_id
<?php } ?>
第4节:背景颜色和背景图片的设置
4-1、背景颜色设置;
一般输出调用语句
<?php echo get_option(' name ') ?>
4-2、使用下拉菜单设置网站背景风格
下拉菜单输出
<link rel="stylesheet" type="text/css" href="<?php bloginfo('template_directory'); ?>/style/<?php echo get_option('wpd_color_select'); ?>.css" media="all">