WordPress主题开发教程 13_小工具

慎终如始,则无败事《道德经》

大家好啊!又到 WordPress 主题开发教程的时间了。一周学习一点,我们已经坚持13周了。

上次发文,标题中的序号忘记修改了-_-|| 有人发现的话,注意一下顺序。

很多网源码网点我wcqh.cn站都有“侧边栏”,HTML 中的 aside 标签,以及 sidebar 标签,就是专门为侧边栏准备的。WordPress 也专门为侧边栏做了准备:一个是之前了解过的 sidebar.php 模板文件源码网点我wcqh.cn;另一个就是今天要聊的:小工具。

WordPress 中的【小工具】默认是隐藏的。如何启用小工具呢?

在 WordPress 后台,插件->添加插件, 搜索 小工具 ,安装启用【经典小工具】。

然后,就可以源码网点我wcqh.cn看到 外观->小工具 了。我们可以看到这个插件是非常受欢迎的,有200W+的安装启用。另一个非常受欢迎的插件是【经典编辑器】。这两年,WordPress 官方一直在折腾古腾堡编辑器。虽然,古腾堡这一套源码网点我wcqh.cn理念先进,但是,要放弃已经很成熟的方案,WordPress官方感觉也是有点赌的成分啊。【经典小工具】和【经典编辑器】一直这么受欢迎,说明还是有很多人不太喜欢古腾堡的。

上图就是 WordPress 自带源码网点我wcqh.cn的各种小工具,比如区块、搜索等。我们还可以自己注册自定义的小工具,比如上图中的【酱茄-标签云】、【酱茄-热门文章】等。

根据 WordPress 的规则,“小工具”需要放到“侧边栏”中;而“侧边栏”需要源码网点我wcqh.cn使用函数 register_sidebar 注册。

酱茄Free主题中,注册的侧边栏,如下:

将小工具拖拽到侧边栏中,最后在主题模板中调用显示就可以了。调用显示侧边栏需要使用函数:dynamic_side源码网点我wcqh.cnbar。

我们先随便注册一个【侧边栏】。在 functions.php 中添加下面的代码:

register_sidebar(array( id => sidebar-site, name => 全站边栏,d源码网点我wcqh.cnescription => 全站边栏显示的小工具, before_widget => <div class=”aside-block mb-20″>, after_widget => </div>,bef源码网点我wcqh.cnore_title => <h2 class=”mb-10″>, after_title => </h2>));

然后,在后台就可以看到:

拖拽几个小工具,到【全站边栏】中:

最后,在 sidebar.php源码网点我wcqh.cn 中 aside 标签内,添加下面的代码:

<?phpif (function_exists(dynamic_sidebar)) { dynamic_sidebar(sidebar-site);}?>

刷新源码网点我wcqh.cn一下首页,在侧边栏头部可以看到:

如果我们用不上 WordPress 自带的小工具,建议在主题中将其删除。这样就不用在主题的中去适配这些小工具的样式了。如果不删除,可能某个主题用户会报告bug:前端样式源码网点我wcqh.cn乱了。

上面的话有点绕口。可以把现在所有的小工具都添加到【全站边栏】中,然后看一下效果。小工具的功能问题不大,但必然有一些小工具的样式是乱的。因为这些小工具在酱茄Free主题中没有使用,所以没有写css源码网点我wcqh.cn适配。那就不如把它们删除吧。在 functions.php 中添加下面的代码即可。

/** * 删除不用的小工具 * WP_Widget_Pages = 页面* WP_Widget_Calendar = 日源码网点我wcqh.cn * WP_Widget_Archives = 存档 * WP_Widget_Links = 链接 * WP_Widget_Meta = 功能 * WP_Widget_Search = 搜索* WP_Wid源码网点我wcqh.cnget_Text = Text * WP_Widget_Categories = 分类 * WP_Widget_Recent_Posts = 近期文章* WP_Widget_Recent_Comments源码网点我wcqh.cn = 最新评论 * WP_Widget_RSS = RSS * WP_Widget_Tag_Cloud = 标签云 * WP_Nav_Menu_Widget = 菜单* WP_Widget_Media_Im源码网点我wcqh.cnage = 图片 * WP_Widget_Media_Gallery = 画廊 * WP_Widget_Media_Audio = 音频 * WP_Widget_Media_Video = 视频 */func源码网点我wcqh.cntion widgets_init_unregister_widgets(){ unregister_widget(WP_Widget_Media_Image);unregister_widget(WP源码网点我wcqh.cn_Widget_Media_Gallery); unregister_widget(WP_Widget_Media_Audio);unregister_widget(WP_Widget_Media_Vi源码网点我wcqh.cndeo); unregister_widget(WP_Widget_Pages); unregister_widget(WP_Widget_Calendar);unregister_widget(WP_W源码网点我wcqh.cnidget_Archives); // unregister_widget(WP_Widget_Links); unregister_widget(WP_Widget_Meta);// unregiste源码网点我wcqh.cnr_widget(WP_Widget_Text); unregister_widget(WP_Widget_Categories);unregister_widget(WP_Widget_Recent_源码网点我wcqh.cnPosts); unregister_widget(WP_Widget_Recent_Comments); unregister_widget(WP_Widget_RSS);unregister_widg源码网点我wcqh.cnet(WP_Widget_Tag_Cloud); unregister_widget(WP_Widget_Gallery);}add_action(widgets_init, widgets_init_源码网点我wcqh.cnunregister_widgets);

去 WordPress 后台,外观->小工具 看一眼,是不是少了很多。

为了方便代码管理,把和小工具相关的代码放到一个文件:fun-widgets.php,然后在源码网点我wcqh.cn functions.php 引用。

然后,展示小工具的代码全部搬到 sidebar.php 文件中:

<?phpif (function_exists(dynamic_sidebar)) {dynami源码网点我wcqh.cnc_sidebar(sidebar-site); if (is_home()) { dynamic_sidebar(sidebar-home);} else if (is_tag() || is_cate源码网点我wcqh.cngory() || is_search()) { dynamic_sidebar(sidebar-list); } else if (is_single()) {dynamic_sidebar(sideb源码网点我wcqh.cnar-post); } else if (is_page()) { dynamic_sidebar(sidebar-page); } else {dynamic_sidebar(sidebar-other)源码网点我wcqh.cn; }}?>

然后,拖拖拽拽,点点看看,体会一下小工具的玩法。

在 WordPress 中,“小工具”必须要放在“侧边栏”中。不过,假如我们把侧边栏放到页面头部,底部,甚至随便什么地方小程序的“功能”都不会源码网点我wcqh.cn有影响。倒是前端同学可能要骂娘了,样式适配可能会麻烦一点点。

总结一下小工具的基本玩法:

1. 安装【经典小工具】插件,开启小工具功能

2. 使用函数 register_sidebar 注册侧边栏

3. 拖放小源码网点我wcqh.cn工具到侧边栏

4. 使用函数 dynamic_sidebar 在模板文件中展示侧边栏

现在,距离玩转 WordPress 小工具的目标,还差如何自定义自己的小工具了。这将是一个稍微有点麻烦的问题,就留到下次源码网点我wcqh.cn说吧。

© 版权声明
THE END
喜欢就支持一下吧
点赞16 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容