编写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 相关文章推荐
php实现的简单压缩英文字符串的代码
Apr 24 PHP
一些 PHP 管理系统程序中的后门
Aug 05 PHP
基于PHP 面向对象之成员方法详解
May 04 PHP
PHP答题类应用接口实例
Feb 09 PHP
php中preg_match的isU代表什么意思
Oct 01 PHP
Swoole-1.7.22 版本已发布,修复PHP7相关问题
Dec 31 PHP
基于PHP实现简单的随机抽奖小程序
Jan 05 PHP
zend framework中使用memcache的方法
Mar 04 PHP
PHP中PDO的事务处理分析
Apr 07 PHP
PHP7新特性之抽象语法树(AST)带来的变化详解
Jul 17 PHP
PHP 二维array转换json的实例讲解
Aug 21 PHP
Yii框架实现对数据库的CURD操作示例
Sep 03 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
这部好评如潮的动漫 知名梗频出 但是画风劝退很多人
2020/03/08 日漫
php curl 伪造IP来源的实例代码
2012/11/01 PHP
php 问卷调查结果统计
2015/10/08 PHP
PHP多个图片压缩成ZIP的方法
2020/08/18 PHP
thinkPHP事务操作简单案例分析
2019/10/17 PHP
suggestion开发小结以及对键盘事件的总结(针对中文输入法状态)
2011/12/20 Javascript
加载远程图片时,经常因为缓存而得不到更新的解决方法(分享)
2013/06/26 Javascript
jquery用get实现ajax在ie里面刷新不进入后台解决方法
2013/08/12 Javascript
JS 排序输出实现table行号自增前端动态生成的tr
2014/08/13 Javascript
jQuery使用slideUp方法实现控制元素缓慢收起
2015/03/27 Javascript
javascript实现汉字转拼音代码分享
2015/04/20 Javascript
jquery实现简单的表单验证
2015/11/17 Javascript
js 右侧浮动层效果实现代码(跟随滚动)
2015/11/22 Javascript
JS中正则表达式只有3种匹配模式(没有单行模式)详解
2016/07/28 Javascript
JavaScript中 ES6 generator数据类型详解
2016/08/11 Javascript
JS与jQuery实现隔行变色的方法
2016/09/09 Javascript
微信小程序 LOL 英雄介绍开发实例
2016/09/30 Javascript
jQuery实现手机版页面翻页效果的简单实例
2016/10/05 Javascript
JavaScript 计算笛卡尔积实例详解
2016/12/02 Javascript
angular.js+node.js实现下载图片处理详解
2017/03/31 Javascript
详解AngularJS1.6版本中ui-router路由中/#!/的解决方法
2017/05/22 Javascript
JavaScript闭包原理与用法实例分析
2018/08/10 Javascript
js实现同一个页面,多个enter事件绑定的示例
2018/10/10 Javascript
js实现简单贪吃蛇游戏
2020/05/15 Javascript
Python脚本实现下载合并SAE日志
2015/02/10 Python
python链接Oracle数据库的方法
2015/06/28 Python
python3第三方爬虫库BeautifulSoup4安装教程
2018/06/19 Python
Python使用jsonpath-rw模块处理Json对象操作示例
2018/07/31 Python
Numpy之random函数使用学习
2019/01/29 Python
Tensorflow--取tensorf指定列的操作方式
2020/06/30 Python
python 模拟登录B站的示例代码
2020/12/15 Python
浅谈CSS3中的变形功能-transform功能
2017/12/27 HTML / CSS
2015年女职工工作总结
2015/05/15 职场文书
Python包管理工具pip的15 个使用小技巧
2021/05/17 Python
画错魏国疆域啦!《派对咖孔明》动画因作画失误于官网致歉
2022/04/07 日漫
Linux中如何安装并部署Redis
2022/04/18 Servers