任何问题请联系WX:uu16853

买模板送网站采集器 让你轻松放开双手运营网站!

购买更多有优惠!

自己动手写 WordPress 插件:窗体化插件 1

上一节我们通过一个很简单并且很有意义的插件 WP-Sofa 给大家讲解了如何自己动手开始写插件,今天将和大家讲解如和窗体化这个插件,并推出我们的沙发二代。 首先,什么是窗体化(widgetizing)呢?简单的说,窗体化就是让侧边栏适合 Widget 这个插件(从 2.2 开始,WordPress 已经内置了 Widget),它能让你非常容易就能够重新整理侧边栏的模块,而不需要手工去修改代码。 立刻就会跑出第二个问题,主题不支持 Widget,怎么办?能怎么办,不懂代码的,换一个主题咯,懂的修改代码让它支持咯,如何修改?看文章:窗体化侧边栏 废话说完了,那我们开始我们今天的主题:窗体化你的插件。 首先,我们让插件能够支持 Widget 只是一个额外的功能,原有的手工调用的功能还是要保持。所以我们把原有的代码作如下改动: 把原有的sofa 这个函数的函数名修改为 get_sofa。 把最后的 echo $output; 修改成 return $output;。 然后创建一个新的 sofa 函数。如下: function sofa(){ $output = get_sofa(); echo $output; } 这样保证了原来的 sofa 函数还能自动调用。 下面我们开始 widget 这个插件: 首先了解下基本的 Widget 语法: <?php function widget_myuniquewidget($args) { extract($args); ?> <?php echo $before_widget; ?> […]

自己动手写 WordPress 插件:窗体化插件 2

上一节我们讲解了如何窗体化插件的第一部分,今天我们将继续第二部分,如何给我们创建的 Widget 创建选项 Panel。 我想使用沙发二代的同学已经感觉现在很轻松了,如果主题支持,根本不用修改模板就能调用该插件。但是最求完美的同学会发现默认输出的 Title 是“最沙发的人”。有些比较追求个性的同学总是希望自己定义标题的。好吧,这一节,我们就完成这部分同学的愿望,能够自定义标题。并推出沙发三代! 如何自定义标题呢?其实就是在 Widget 能够提供一个选项的界面,让用户自己输入标题。好吧,搜索下或者看看别人的插件(偶经常这样写插件的,如果你的插件因此被我偷师了,算你倒霉!嘿嘿!),发现是通过 register_widget_control 这个 hook 绑定的。这样事情就变得很简单了。我们把选项的数据存储到一个名字叫做 widget_sofa option 中即可。修改如下: 在昨天创建的 widget_sidebar_sofa 的函数的最后中添加如下代码: function widget_sofa_options() { $sofa_options = $new_sofa_options = get_option(‘widget_sofa’); //获取数据库中的 widget_sofa if ( $_POST[“sofa_submit”] ) { //如果提交更新 $new_sofa_options[‘title’] = strip_tags(stripslashes($_POST[“sofa_title”])); if ( $sofa_options != $new_sofa_options ) { //如果有更新 $sofa_options = $new_sofa_options; update_option(‘widget_sofa’, $sofa_options); } } $title […]

WordPress 主题教程 #6e:窗体化侧边栏

窗体化侧边栏是从零开始创建 WordPress 主题系列教程的第六篇的第五部分,一个支持 Widget 的侧边栏或者说是窗体化(widgetized)的侧边栏几乎是 WordPress 主题的标准。 首先,什么是窗体化(widgetizing)呢?简单的说,窗体化就是能够通过拖拉就能够整理侧边栏的模块。比如我们需要更改分类和存档的位置,只需要简单把分类和存档列表拖到它们的位置即可,根本不用去修改侧边栏的代码。 第1步:创建 functions.php 文件 打开记事本,然后把空白文件保存为 functions.php。把 functions.txt 文件中所有的内容拷贝到 functions.php 中。 回顾一下,现在在“tutorial”主题文件夹下应该有4个文件。 第2步:窗体化侧边栏 直接在侧边栏的第一个 <ul> 标签输入以下代码: <?php if ( function_exists(’dynamic_sidebar’) && dynamic_sidebar() ) : else : ?> 直接在 </ul> 标签之前输入以下代码: <?php endif; ?> 保存 index.php 文件,然后我们到 WordPress 后台 => 外观 => Widget 就可以把 Widget 拖到侧边栏了。 原文:link 标签:WordPress 主题 WordPress […]

100% Secure Checkout

PayPal / MasterCard / Visa