ZblogPHP主题配置制作入门(二)
拼装(单文本、多行文本框和按钮)
今天我利用别人的include.php、mian.php文件在DEMO环境中做了一些调整和修改,发现原来实现主题配置制作起来真的很简单。
我将别人的include.php文件直接拷贝过来,
<?php
//注册插件
RegisterPlugin('BAndW','ActivePlugin_BAndW');
function ActivePlugin_BAndW()
{
Add_Filter_Plugin('Filter_Plugin_Admin_TopMenu', 'BAndW_AddMenu');
}
function BAndW_AddMenu(&$menus)
{
global $zbp;
$menus[] = MakeTopMenu('root', 'BAndW主题配置', $zbp->host . 'zb_users/theme/BAndW/main.php', '', 'topmenu_BAndW');
}
function InstallPlugin_BAndW(){
global $zbp;
}
function UninstallPlugin_BAndW(){
global $zbp;
}
在里面,我仅替换了一个字符,就是把别人的XXX主题替换成我的“BAndW”主题了。这个运行看来基本正常。也就是说,include.php程序没有太多需要我们修改的,只是对接的一个必要手段。重点还在main.php那个文件中。昨天,我们展示了Gravatar头像插件中include.php,其中,在load阶段,有一系列的数值调用,通过这些调用加上一些表单因素,我们就可以简单的制作出一个单文本内容配置框了:
<?php
require '../../../zb_system/function/c_system_base.php';
require '../../../zb_system/function/c_system_admin.php';
$zbp->Load();
$action='root';
if (!$zbp->CheckRights($action)) {$zbp->ShowError(6);die();}
if (!$zbp->CheckPlugin('BAndW')) {$zbp->ShowError(48);die();}
$blogtitle="BAndW主题配置";
if(isset($_POST['weibonet'])){
global $zbp;
$zbp->Config('BAndW')->weibonet = $_POST['weibonet'];
$zbp->SaveConfig('BAndW');
$zbp->ShowHint('good');
}
require $blogpath . 'zb_system/admin/admin_header.php';
require $blogpath . 'zb_system/admin/admin_top.php';
?>
<div id="divMain">
<div class="divHeader2"><?php echo $blogtitle;?></div>
<div class="SubMenu"></div>
<div id="divMain2">
<form id="form-postdata" name="form-postdata" method="post" enctype="multipart/form-data" action="main.php">
<table width="100%" border="1" width="100%" class="tableBorder">
<tr>
<th scope="col" height="32" width="150px">配置项</th>
<th scope="col">配置内容</th>
<th scope="col" width="500px">使用说明</th>
</tr>
<tr>
<td scope="row">底部微博链接</td>
<td><input name="weibonet" type="text" value="<?php echo $zbp->Config('BAndW')->weibonet; ?>"></input></td>
<td>底部微博超链接地址,http://开头</td>
</tr>
</table>
<br/>
<input class="button" type="submit" value="保存设置" />
</form>
</div>
</div>
<?php
require $blogpath . 'zb_system/admin/admin_footer.php';
在加载时,我们定义了一个叫“weibonet”的值。然后,做了一个简单的table加上一些文本域,把文本域里填入的值赋予了相应变量。这样,保存后,我们在相应zblogPHP模板上配置{$zbp->Config(‘BAndW’)->weibonet;},保存后就可以改变对应的值了。明白了这个,我们就很容易做出多行文本框和按钮来,就像:
//按钮:
<input name="XXXXXX" type="text" class="checkbox" style="display:none;" value="<?php echo $zbp->Config('主题')->XXXXXX; ?>"></input>
//多行文本框:
<textarea name="XXXXXX" type="text"><?php echo $zbp->Config('主题')->XXXXXX; ?></textarea>
会了这个以后,就够我忙活一阵子的了。加上IF逻辑判断,我们可以轻松的使用按钮开关来进行逻辑判断,也可以将一些写死的代码做成灵活的变量了。就像这样:
{if $zbp->Config('主题')->判断按钮 == ""}
{$MeGetList = GetList($zbp->Config('主题')->某个值);}
{else}
{$MeGetList = "";}
{/if}
很容易吧。有了这几个选项,我们就可以从“主题设置插件”里面挣脱出来了。下面就是一些多媒体和替代之类的工作要做。
- QQ群:253510359
- 建议:VPS商家层出不穷,根据需要购买,切莫剁剁剁!
- 评测:很多VPS虽已评测,但网络环境改变稳定性,速度也会随之改变.评测只能作为一般性参考.不负任何法律,道义责任.
- 申明:所有vps,域名,服务器优惠信息均来自网络公开内容,由于水平有限不免有谬误.请以官方为准.