编写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 相关文章推荐
PHP5中MVC结构学习
Oct 09 PHP
网络资源
Oct 09 PHP
php escape URL编码
Dec 10 PHP
PHP中date()日期函数有关参数整理
Jul 19 PHP
Win2003+apache+PHP+SqlServer2008 配置生产环境
Jul 29 PHP
PHP中提问频率最高的11个面试题和答案
Sep 02 PHP
php去除字符串中空字符的常用方法小结
Mar 17 PHP
PHP脚本监控Nginx 502错误并自动重启php-fpm
May 13 PHP
必须收藏的23个php实用代码片段
Feb 02 PHP
PHP实现删除多重数组对象属性并重新赋值的方法
Jun 07 PHP
解决laravel5.4下的group by报错的问题
Oct 16 PHP
解决php扩展安装不生效问题
Oct 25 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
用php实现批量查询清除一句话后门的代码
2008/01/20 PHP
php若干单维数组遍历方法的比较
2011/09/20 PHP
解析thinkphp中的M()与D()方法的区别
2013/06/22 PHP
destoon实现资讯信息前面调用它所属分类的方法
2014/07/15 PHP
完美解决thinkphp验证码出错无法显示的方法
2014/12/09 PHP
深入理解PHP中mt_rand()随机数的安全
2017/10/12 PHP
浅析PHP数据导出知识点
2018/02/17 PHP
Jquery知识点三 jquery表单对象操作
2011/01/17 Javascript
javascript中负数算术右移、逻辑右移的奥秘探索
2013/10/17 Javascript
node.js应用后台守护进程管理器Forever安装和使用实例
2014/06/01 Javascript
javaScript基础语法介绍
2015/02/28 Javascript
jQuery选择器源码解读(一):Sizzle方法
2015/03/31 Javascript
究竟什么是Node.js?Node.js有什么好处?
2015/05/29 Javascript
javascript顺序加载图片的方法
2015/07/18 Javascript
bootstrapValidator bootstrap-select验证不可用的解决办法
2017/01/11 Javascript
JS实现点击Radio动态更新table数据
2017/07/18 Javascript
js微信分享实现代码
2020/10/11 Javascript
基于vue-cli配置lib-flexible + rem实现移动端自适应
2017/12/26 Javascript
vue中使用echarts制作圆环图的实例代码
2018/07/27 Javascript
vue中实现图片压缩 file文件的方法
2020/05/28 Javascript
用python代码做configure文件
2014/07/20 Python
python从入门到精通(DAY 1)
2015/12/20 Python
利用Python3分析sitemap.xml并抓取导出全站链接详解
2017/07/04 Python
python实现给微信指定好友定时发送消息
2019/04/29 Python
python字符串替换第一个字符串的方法
2019/06/26 Python
解决python彩色螺旋线绘制引发的问题
2019/11/23 Python
opencv中图像叠加/图像融合/按位操作的实现
2020/04/01 Python
matplotlib bar()实现百分比堆积柱状图
2021/02/24 Python
详解HTML5中download属性的应用
2015/08/06 HTML / CSS
在html页面中取得session中的值的方法
2020/08/11 HTML / CSS
俄罗斯旅游网站:Tripadvisor俄罗斯
2017/03/21 全球购物
销售部主管岗位职责
2013/12/18 职场文书
银行员工考核评语
2014/12/31 职场文书
2015年收银工作总结范文
2015/04/01 职场文书
2016年师德先进个人事迹材料
2016/02/29 职场文书
导游词之河姆渡遗址博物馆
2019/10/10 职场文书