编写PHP脚本使WordPress的主题支持Widget侧边栏


Posted in PHP onDecember 14, 2015

帮网友小改了一下主题. 任务比较简单, 只是为一个三栏主题添加对 Widget 的支持而已,就先从这次简单的案例开始说吧.

编写PHP脚本使WordPress的主题支持Widget侧边栏

单侧边栏

functions.php

<?php
if( function_exists('register_sidebar') ) {
 register_sidebar(array(
 'before_widget' => '<li class="widget">', // widget 的开始标签
 'after_widget' => '</li>', // widget 的结束标签
 'before_title' => '<h3>', // 标题的开始标签
 'after_title' => '</h3>' // 标题的结束标签
 ));
}
?>

sidebar.php

<div id="sidebar">
 <ul class="widgets">
<?php // 如果没有使用 Widget 才显示以下内容, 否则会显示 Widget 定义的内容
if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) :
?>
 <!-- widget 1 -->
 <li class="widget">
 <h3>标题 1</h3>
 <ul>
  <li>条目 1.1</li>
  <li>条目 1.2</li>
  <li>条目 1.3</li>
 </ul>
 </li>
 <!-- widget 2 -->
 <li class="widget">
 <h3>标题 2</h3>
 <ul>
  <li>条目 2.1</li>
  <li>条目 2.2</li>
  <li>条目 2.3</li>
 </ul>
 </li>
<?php endif; ?>
 </ul>
</div>

双侧边栏

functions.php

<?php
if( function_exists('register_sidebar') ) {
 register_sidebar(array(
 'name' => 'Sidebar_1', // 侧边栏 1 的名称
 'before_widget' => '<li class="widget">', // widget 的开始标签
 'after_widget' => '</li>', // widget 的结束标签
 'before_title' => '<h3>', // 标题的开始标签
 'after_title' => '</h3>' // 标题的结束标签
 
 ));
 
 register_sidebar(array(
 'name' => 'Sidebar_2', // 侧边栏 2 的名称
 'before_widget' => '<li class="widget">', // widget 的开始标签
 'after_widget' => '</li>', // widget 的结束标签
 'before_title' => '<h3>', // 标题的开始标签
 'after_title' => '</h3>' // 标题的结束标签
 
 ));
}
?>

sidebar.php

<div id="sidebar_1">
 <ul class="widgets">
<?php // 如果没有在侧边栏 1 中使用 Widget 才显示以下内容, 否则会显示 Widget 定义的内容
if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar_1') ) :
?>
 <!-- widget 1 -->
 <li class="widget">
 <h3>标题 1</h3>
 <ul>
  <li>条目 1.1</li>
  <li>条目 1.2</li>
  <li>条目 1.3</li>
 </ul>
 </li>
<?php endif; ?>
 </ul>
</div>
<div id="sidebar_2">
 <ul class="widgets">
<?php // 如果没有在侧边栏 2 中使用 Widget 才显示以下内容, 否则会显示 Widget 定义的内容
if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar_2') ) :
?>
 <!-- widget 2 -->
 <li class="widget">
 <h3>标题 2</h3>
 <ul>
  <li>条目 2.1</li>
  <li>条目 2.2</li>
  <li>条目 2.3</li>
 </ul>
 </li>
<?php endif; ?>
 </ul>
</div>

N 侧边栏
请使用数学归纳法进行推理XD

PHP 相关文章推荐
留言板翻页的实现详解
Oct 09 PHP
PHP新手上路(七)
Oct 09 PHP
获得Google PR值的PHP代码
Jan 28 PHP
php5 pdo新改动加载注意事项
Sep 11 PHP
用php将任何格式视频转为flv的代码
Sep 03 PHP
PHP CKEditor 上传图片实现代码
Nov 06 PHP
测试PHP连接MYSQL成功与否的代码
Aug 16 PHP
phpmyadmin中禁止外网使用的方法
Nov 04 PHP
php生成gif动画的方法
Nov 05 PHP
利用Fix Rss Feeds插件修复WordPress的Feed显示错误
Dec 19 PHP
thinkphp3.2实现在线留言提交验证码功能
Jul 19 PHP
微信公众平台开发教程③ PHP实现微信公众号支付功能图文详解
Apr 10 PHP
给WordPress中的留言加上楼层号的PHP代码实例
Dec 14 #PHP
WordPress导航菜单的滚动和淡入淡出效果的实现要点
Dec 14 #PHP
php类中的$this,static,final,const,self这几个关键字使用方法
Dec 14 #PHP
Yii2隐藏frontend/web和backend/web的方法
Dec 12 #PHP
使用PHP+AJAX让WordPress动态加载文章的教程
Dec 11 #PHP
WordPress中制作导航菜单的PHP核心方法讲解
Dec 11 #PHP
搭建Vim为自定义的PHP开发工具的一些技巧
Dec 11 #PHP
You might like
在Windows中安装Apache2和PHP4的权威指南
2006/10/09 PHP
php插入排序法实现数组排序实例
2015/02/16 PHP
PHP中功能强大却很少使用的函数实例小结
2016/11/10 PHP
微信封装的调用微信签名包的类库
2017/06/08 PHP
thinkPHP3.2.2框架行为扩展及demo示例
2018/06/19 PHP
JavaScript iframe的相互操作浅析
2009/10/14 Javascript
javaScript call 函数的用法说明
2010/04/09 Javascript
全面理解面向对象的 JavaScript(来自ibm)
2013/11/10 Javascript
理解javascript回调函数
2014/12/28 Javascript
jquery实现在光标位置插入内容的方法
2015/02/05 Javascript
jQuery中选择器的基础使用教程
2016/05/23 Javascript
新闻上下滚动jquery 超简洁(必看篇)
2017/01/21 Javascript
利用JavaScript如何查询某个值是否数组内
2017/07/30 Javascript
无限循环轮播图之运动框架(原生JS实现)
2017/10/01 Javascript
Vuex 入门教程
2018/01/10 Javascript
微信小程序tabbar底部导航
2018/11/05 Javascript
JavaScript实现答题评分功能页面
2020/06/24 Javascript
el-form 多层级表单的实现示例
2020/09/10 Javascript
[58:00]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第二场 2月7日
2021/03/11 DOTA
Python lxml模块安装教程
2015/06/02 Python
Python中使用platform模块获取系统信息的用法教程
2016/07/08 Python
python3个性签名设计实现代码
2018/06/19 Python
Python for循环与range函数的使用详解
2019/03/23 Python
详解python数据结构和算法
2019/04/18 Python
详解用pyecharts Geo实现动态数据热力图城市找不到问题解决
2019/06/26 Python
学python安装的软件总结
2019/10/12 Python
如何基于Python批量下载音乐
2019/11/11 Python
python给指定csv表格中的联系人群发邮件(带附件的邮件)
2019/12/31 Python
Html5上传图片 移动端、PC端通用代码
2016/06/08 HTML / CSS
潘多拉意大利官方网上商城:网上选购PANDORA珠宝
2018/10/07 全球购物
德国净水壶和滤芯品牌:波尔德PearlCo(家用净水器)
2020/04/29 全球购物
销售员自我评价怎么写
2013/09/19 职场文书
高级方案规划工程师岗位职责
2013/11/29 职场文书
意外伤害赔偿协议书范文
2014/09/23 职场文书
保送生自荐信范文
2015/03/26 职场文书
Pandas实现DataFrame的简单运算、统计与排序
2022/03/31 Python