|
11 | 11 | 在`themeConfig($form)`函数里添加 |
12 | 12 |
|
13 | 13 | ```php |
| 14 | +$str1 = explode('/themes/', Helper::options()->themeUrl); |
| 15 | +$str2 = explode('/', $str1[1]); |
| 16 | +$name=$str2[0];//获取到模板文件夹名字也就是模板在数据库中的名字 |
14 | 17 | $db = Typecho_Db::get(); |
15 | | -$sjdq=$db->fetchRow($db->select()->from ('table.options')->where ('name = ?', 'theme:Yodu')); |
| 18 | +$sjdq=$db->fetchRow($db->select()->from ('table.options')->where ('name = ?', 'theme:'.$name)); |
16 | 19 | $ysj = $sjdq['value']; |
17 | 20 | if(isset($_POST['type'])) |
18 | 21 | { |
19 | | -if($_POST["type"]=="备份模板数据"){ |
20 | | -if($db->fetchRow($db->select()->from ('table.options')->where ('name = ?', 'theme:Yodubf'))){ |
21 | | -$update = $db->update('table.options')->rows(array('value'=>$ysj))->where('name = ?', 'theme:Yodubf'); |
| 22 | +if($_POST["type"]=="备份模板设置数据"){ |
| 23 | +if($db->fetchRow($db->select()->from ('table.options')->where ('name = ?', 'theme:'.$name.'bf'))){ |
| 24 | +$update = $db->update('table.options')->rows(array('value'=>$ysj))->where('name = ?', 'theme:'.$name.'bf'); |
22 | 25 | $updateRows= $db->query($update); |
23 | | -echo '<div class="tongzhi">备份已更新,请等待自动刷新!如果等不到请点击'; |
| 26 | +echo '<div class="tongzhi col-mb-12 home">备份已更新,请等待自动刷新!如果等不到请点击'; |
24 | 27 | ?> |
25 | 28 | <a href="<?php Helper::options()->adminUrl('options-theme.php'); ?>">这里</a></div> |
26 | 29 | <script language="JavaScript">window.setTimeout("location=\'<?php Helper::options()->adminUrl('options-theme.php'); ?>\'", 2500);</script> |
27 | 30 | <?php |
28 | 31 | }else{ |
29 | 32 | if($ysj){ |
30 | 33 | $insert = $db->insert('table.options') |
31 | | - ->rows(array('name' => 'theme:Yodubf','user' => '0','value' => $ysj)); |
| 34 | + ->rows(array('name' => 'theme:'.$name.'bf','user' => '0','value' => $ysj)); |
32 | 35 | $insertId = $db->query($insert); |
33 | | -echo '<div class="tongzhi">备份完成,请等待自动刷新!如果等不到请点击'; |
| 36 | +echo '<div class="tongzhi col-mb-12 home">备份完成,请等待自动刷新!如果等不到请点击'; |
34 | 37 | ?> |
35 | 38 | <a href="<?php Helper::options()->adminUrl('options-theme.php'); ?>">这里</a></div> |
36 | 39 | <script language="JavaScript">window.setTimeout("location=\'<?php Helper::options()->adminUrl('options-theme.php'); ?>\'", 2500);</script> |
37 | 40 | <?php |
38 | 41 | } |
39 | 42 | } |
40 | 43 | } |
41 | | -if($_POST["type"]=="还原模板数据"){ |
42 | | -if($db->fetchRow($db->select()->from ('table.options')->where ('name = ?', 'theme:Yodubf'))){ |
43 | | -$sjdub=$db->fetchRow($db->select()->from ('table.options')->where ('name = ?', 'theme:Yodubf')); |
| 44 | +if($_POST["type"]=="还原模板设置数据"){ |
| 45 | +if($db->fetchRow($db->select()->from ('table.options')->where ('name = ?', 'theme:'.$name.'bf'))){ |
| 46 | +$sjdub=$db->fetchRow($db->select()->from ('table.options')->where ('name = ?', 'theme:'.$name.'bf')); |
44 | 47 | $bsj = $sjdub['value']; |
45 | | -$update = $db->update('table.options')->rows(array('value'=>$bsj))->where('name = ?', 'theme:Yodu'); |
| 48 | +$update = $db->update('table.options')->rows(array('value'=>$bsj))->where('name = ?', 'theme:'.$name); |
46 | 49 | $updateRows= $db->query($update); |
47 | | -echo '<div class="tongzhi">检测到模板备份数据,恢复完成,请等待自动刷新!如果等不到请点击'; |
| 50 | +echo '<div class="tongzhi col-mb-12 home">检测到模板备份数据,恢复完成,请等待自动刷新!如果等不到请点击'; |
48 | 51 | ?> |
49 | 52 | <a href="<?php Helper::options()->adminUrl('options-theme.php'); ?>">这里</a></div> |
50 | 53 | <script language="JavaScript">window.setTimeout("location=\'<?php Helper::options()->adminUrl('options-theme.php'); ?>\'", 2000);</script> |
51 | 54 | <?php |
52 | 55 | }else{ |
53 | | -echo '<div class="tongzhi">没有模板备份数据,恢复不了哦!</div>'; |
| 56 | +echo '<div class="tongzhi col-mb-12 home">没有模板备份数据,恢复不了哦!</div>'; |
54 | 57 | } |
55 | 58 | } |
56 | 59 | if($_POST["type"]=="删除备份数据"){ |
57 | | -if($db->fetchRow($db->select()->from ('table.options')->where ('name = ?', 'theme:Yodubf'))){ |
58 | | -$delete = $db->delete('table.options')->where ('name = ?', 'theme:Yodubf'); |
| 60 | +if($db->fetchRow($db->select()->from ('table.options')->where ('name = ?', 'theme:'.$name.'bf'))){ |
| 61 | +$delete = $db->delete('table.options')->where ('name = ?', 'theme:'.$name.'bf'); |
59 | 62 | $deletedRows = $db->query($delete); |
60 | | -echo '<div class="tongzhi">删除成功,请等待自动刷新,如果等不到请点击'; |
| 63 | +echo '<div class="tongzhi col-mb-12 home">删除成功,请等待自动刷新,如果等不到请点击'; |
61 | 64 | ?> |
62 | 65 | <a href="<?php Helper::options()->adminUrl('options-theme.php'); ?>">这里</a></div> |
63 | 66 | <script language="JavaScript">window.setTimeout("location=\'<?php Helper::options()->adminUrl('options-theme.php'); ?>\'", 2500);</script> |
64 | 67 | <?php |
65 | 68 | }else{ |
66 | | -echo '<div class="tongzhi">不用删了!备份不存在!!!</div>'; |
| 69 | +echo '<div class="tongzhi col-mb-12 home">不用删了!备份不存在!!!</div>'; |
67 | 70 | } |
68 | 71 | } |
69 | 72 | } |
70 | | -echo '<form class="protected" action="?yodubf" method="post"> |
71 | | -<input type="submit" name="type" class="btn btn-s" value="备份模板数据" /> <input type="submit" name="type" class="btn btn-s" value="还原模板数据" /> <input type="submit" name="type" class="btn btn-s" value="删除备份数据" /></form>'; |
| 73 | +echo '<form class="protected home col-mb-12" action="?'.$name.'bf" method="post"> |
| 74 | +<input type="submit" name="type" class="btn btn-s" value="备份模板设置数据" /> <input type="submit" name="type" class="btn btn-s" value="还原模板设置数据" /> <input type="submit" name="type" class="btn btn-s" value="删除备份数据" /></form>'; |
72 | 75 | ``` |
73 | 76 |
|
74 | | -然后将里面出现的所有“yodu”改成你的**模板目录文件夹**的名字,如果拿不准就去数据库里看看模板的值名字。【模板目录文件夹名字不要用中文】 |
| 77 | +【模板目录文件夹名字不要用中文】 |
75 | 78 |
|
76 | 79 | **备份** |
77 | 80 | 当用户点击**备份**时,先判断是否已经存在备份,如果不存在就插入一条新的数据,数据name为yodubf,value为模板原本的数据。此时就存在了一条备份数据。 |
|
0 commit comments