This commit is contained in:
me 2020-12-22 15:05:40 +08:00
parent 93ef7012c6
commit 98e9a65b69
29 changed files with 981 additions and 0 deletions

30
index.js Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,141 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>编辑文章 - CF-blog后台</title>
<link rel="icon" type="image/x-icon" href="https://cdn.jsdelivr.net/gh/gdtool/zhaopp/cfblog/favicon.ico" />
<link rel="shortcut icon" type="image/x-icon" href="https://cdn.jsdelivr.net/gh/gdtool/zhaopp/cfblog/favicon.ico"/>
<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
<!--//<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/editor.md@1.5.0/examples/css/style.css" />-->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/editor.md@1.5.0/css/editormd.css" />
<link rel="stylesheet" href="https://cdn.staticfile.org/bootstrap-select/1.9.4/css/bootstrap-select.min.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.14/dist/css/bootstrap-select.min.css">
<script src="https://cdn.staticfile.org/jquery/2.2.4/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.14/dist/js/bootstrap-select.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.14/dist/js/i18n/defaults-zh_CN.min.js"></script>
</head>
<body>
<nav class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container-fluid">
<div>
<ul id="myTab" class="nav nav-tabs">
<li class="active">
<a href="/admin/" >返回文章</a>
</li>
</ul>
</div>
</div>
</nav>
<div id="myTabContent" class="tab-content" style="padding-top: 60px;">
<div class="container">
<h3>编辑文章</h3>
<form id="editForm" class="form-inline" action="/" >
<div class="form-group" style="width: 98%">
<input type="hidden" class="form-control" name="id" id="id" readonly required="true">
<input type="text" class="form-control" name="title" id="title" placeholder="标题" style="width: 800px;" required="true">
</div>
<div class="form-group">
<label for="exampleInputEmail2">特色图片</label>
<input type="url" class="form-control" style="width: 400px;" name="img" id="img" placeholder="" >
</div>
<div class="form-group">
<label for="exampleInputEmail2">永久链接</label>
<input type="text" class="form-control" name="link" id="link" placeholder="" style="vertical-align:left !important;" required="true">
</div>
<div class="form-group">
<label for="exampleInputEmail2">创建日期</label>
<input type="datetime-local" class="form-control" id="createDate" name="createDate" placeholder="" style="vertical-align:left !important;" required="true">
</div>
<div class="form-group">
<label for="exampleInputEmail2">分类</label>
<select class="selectpicker" multiple name="category[]" id="category">
</select>
</div>
<div class="form-group">
<label for="exampleInputEmail2">标签</label>
<input type="text" class="form-control" name="tags" id="tags" placeholder="标签1,标签2">
</div>
<a tabindex="0" role="button" type="submit" id="btn_saveEdit" class="btn btn-default" onclick="saveEdit()">保存</a>
<a type="submit" role="button" id="btn_delete" class="btn btn-warning" onclick="deleteArticle()">删除</a>
<div id="content"><textarea style="display:none;"></textarea></div>
</form>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/editor.md@1.5.0/editormd.js"></script>
<script type="text/javascript">
$(function() {
$('#myTab li:eq(0) a').tab('show');
//获取文章
var articleJson = <!--{articleJson}-->;
//获取分类
var categoryJson = <!--{categoryJson}-->;
var mdEditor = editormd("content", {
//width : "90%",
height : 640,
path : "https://cdn.jsdelivr.net/npm/editor.md@1.5.0/lib/",
appendMarkdown : articleJson.contentMD, //编辑器赋值
saveHTMLToTextarea : true,
mode : "markdown"
});
//表单赋值
$('#id').val(articleJson.id);
$('#title').val(articleJson.title);
$('#img').val(articleJson.img);
$('#link').val(articleJson.link);
$('#createDate').val(articleJson.createDate.replace(" ","T"));
$('#tags').val(articleJson.tags);
$('#WidgetCategory').val(JSON.stringify(categoryJson));
var category = $('#category');
category.empty();
for (var i = 0; i < categoryJson.length; i++) {
category.append('<option id=' + categoryJson[i] + ' value=' + categoryJson[i] + '>' + categoryJson[i] + '</option>');
}
category.selectpicker('val',articleJson.category);
});
//保存按钮(编辑)
function saveEdit(){
$.ajax({
type: "POST",
dataType: "json",
contentType: "application/json; charset=utf-8",
url: "/admin/saveEdit/" ,//url
data: JSON.stringify($("#editForm").serializeArray()),
success: function (result) {
alert(result.msg);
}
});
}
//删除
function deleteArticle(){
if (confirm("确定删除吗?删除后重新发布才能生效")==false){
return false;
}
$.ajax({
type: "POST",
dataType: "json",
contentType: "application/json; charset=utf-8",
url: "/admin/delete/"+$('#id').val() ,//url
data: [{"id":$('#id').val()}],
success: function (result) {
alert(result.msg);
}
});
}
</script>
</body>
</html>

View File

@ -0,0 +1,262 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CF-blog后台</title>
<link rel="icon" type="image/x-icon" href="https://cdn.jsdelivr.net/gh/gdtool/zhaopp/cfblog/favicon.ico" />
<link rel="shortcut icon" type="image/x-icon" href="https://cdn.jsdelivr.net/gh/gdtool/zhaopp/cfblog/favicon.ico"/>
<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
<!--<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/editor.md@1.5.0/examples/css/style.css" />-->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/editor.md@1.5.0/css/editormd.css" />
<link rel="stylesheet" href="https://cdn.staticfile.org/bootstrap-select/1.9.4/css/bootstrap-select.min.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.14/dist/css/bootstrap-select.min.css">
<script src="https://cdn.staticfile.org/jquery/2.2.4/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.14/dist/js/bootstrap-select.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.14/dist/js/i18n/defaults-zh_CN.min.js"></script>
</head>
<body>
<nav class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container-fluid">
<div>
<ul id="myTab" class="nav nav-tabs">
<li>
<a href="/" >CF-blog</a>
</li>
<li>
<a href="#list" data-toggle="tab">我的文章</a>
</li>
<li class="active">
<a href="#new" data-toggle="tab">新建</a>
</li>
<li>
<a href="#config" data-toggle="tab">设置</a>
</li>
<li>
<a href="#" data-toggle="tab" onclick="publish()">发布</a>
</li>
</ul>
</div>
</div>
</nav>
<div id="myTabContent" class="tab-content" style="padding-top: 60px;">
<div class="tab-pane fade" id="list">
<div class="container" >
<table class="table table-striped" id="articleList">
<tr><td>ID</td><td>标题</td><td>创建日期</td></tr>
</table>
<input type="hidden" name="page" id="page" value='1'>
<a id="loadmore" class="btn btn-default">加载更多...</a>
</div>
</div>
<div class="tab-pane fade in active" id="new">
<div class="container">
<h3 id="labelNew">新增</h3>
<form id="addNewForm" class="form-inline" >
<div class="form-group" style="width: 98%">
<input type="hidden" class="form-control" name="id" id="id" >
<input type="text" class="form-control" name="title" id="title" placeholder="标题" style="width: 100%;" required="true">
</div>
<div class="form-group">
<label for="exampleInputEmail2">特色图片</label>
<input type="url" class="form-control" style="width: 400px;" name="img" id="img" placeholder="" >
</div>
<div class="form-group">
<label for="exampleInputEmail2">永久链接</label>
<input type="text" class="form-control" name="link" id="link" placeholder="" required="true">
</div>
<div class="form-group">
<label for="exampleInputEmail2">创建日期</label>
<input type="datetime-local" class="form-control" id="createDate" name="createDate" placeholder="" required="true">
</div>
<div class="form-group">
<label for="exampleInputEmail2">分类</label>
<select class="selectpicker" multiple name="category[]" id="category">
</select>
</div>
<div class="form-group">
<label for="exampleInputEmail2">标签</label>
<input type="text" class="form-control" name="tags" id="tags" placeholder="标签1,标签2">
</div>
<a tabindex="0" role="button" type="submit" id="btn_saveAddNew" class="btn btn-default" onclick="saveAddNew()">保存</a>
<div id="content"><textarea style="display:none;"></textarea></div>
</form>
</div>
</div>
<div class="tab-pane fade" id="config">
<div class="container" >
<form id="configForm" role="form" >
<div class="form-group">
<label for="name">分类,例:<code>["类别A","类别B","类别C","类别D"]</code></label>
<textarea class="form-control" id="WidgetCategory" name="WidgetCategory" rows="3" placeholder='["分类A","分类B"]'></textarea>
</div>
<div class="form-group">
<label for="name">菜单,例:<code>[{"title":"技术文章","url":"/category/技术文章"},{"title":"管理","url":"/admin"}]</code></label>
<textarea class="form-control" id="WidgetMenu" name="WidgetMenu" rows="10" placeholder='[
{"title":"菜单A" ,"url":"/category/菜单A"},
{"title":"菜单B" ,"url":"/category/菜单B"}
]'></textarea>
</div>
<a tabindex="0" role="button" type="submit" id="btn_saveConfig" class="btn btn-default" onclick="saveConfig()">保存</a>
</form>
</div>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/editor.md@1.5.0/editormd.js"></script>
<script type="text/javascript">
$(function() {
$('#myTab li:eq(0) 1').tab('show');
//获取分类
var categoryJson = <!--{categoryJson}-->;
//获取菜单
var menuJson = <!--{menuJson}-->;
var mdEditor = editormd("content", {
// width : "90%",
height : 640,
path : "https://cdn.jsdelivr.net/npm/editor.md@1.5.0/lib/",
appendMarkdown : "# MarkDown",
saveHTMLToTextarea : true,
mode : "markdown"
});
//表单赋值
$('#createDate').val(new Date());
$('#WidgetCategory').val(JSON.stringify(categoryJson));
$('#WidgetMenu').val(JSON.stringify(menuJson));
var category = $('#category');
category.empty();
for (var i = 0; i < categoryJson.length; i++) {
category.append('<option id=' + categoryJson[i] + ' value=' + categoryJson[i] + '>' + categoryJson[i] + '</option>');
}
$("#loadmore").click();//初始加载一页
});
//加载文章列表
$("#loadmore").click(function(){
var page=$("#page").val();
$.ajax({
url:"/admin/getList/" + page + "/",
type:'GET',
dataType:"json",
//data:{"page":page,"typeid":typeid},
success:function(data){
tableContent="";
$.each(data,function(i){
var Info = data[i];
var num = i+1;
tableContent += '<tr><td>'+Info.id+'</td><td><a href="/admin/edit/'+Info.id+'/">'+Info.title+'</a></td><td>'+Info.createDate.replace("T","")+'</td></tr>';
})
$("#articleList").append(tableContent);
$("#page").val(++page);
}
});
})
//新建文章
function saveAddNew(){
if(
$('#WidgetMenu').val() == "" || $('#WidgetMenu').val() == null
|| $('#createDate').val() == "" || $('#createDate').val() == null
|| $('#createDate').val() == "" || $('#createDate').val() == null
){
alert("信息不全");
return;
}
var postURL = "/admin/saveEdit/";
if ($('#id').val() == "" || $('#id').val() == null)
postURL= "/admin/saveAddNew/";
$.ajax({
type: "POST",
dataType: "json",
url: postURL ,//url
contentType: "application/json; charset=utf-8",
data: JSON.stringify($("#addNewForm").serializeArray()),
success: function (result) {
if ("id" in result){
$('#id').val(result.id);
$('#labelNew').text("编辑:"+result.id);
alert(result.msg);
}
else
{
alert("失败");
}
}
});
}
//保存设置
function saveConfig(){
if(!isJSON($('#WidgetCategory').val()))
{
alert("分类格式错误");
return false;
}
if(!isJSON($('#WidgetMenu').val()))
{
alert("菜单格式错误");
return false;
}
$.ajax({
type: "POST",
dataType: "json",
contentType: "application/json; charset=utf-8",
url: "/admin/saveConfig/" ,//url
data: JSON.stringify($("#configForm").serializeArray()),
success: function (result) {
alert(result.msg);
}
});
}
//发布
function publish(){
if (confirm("确定吗?发布将清理所有静态缓存,重新生成")==false){
return false;
}
$.ajax({
type: "POST",
dataType: "json",
contentType: "application/json; charset=utf-8",
url: "/admin/publish/" ,//url
success: function (result) {
alert(result.msg);
}
});
}
function isJSON(str) {
if (typeof str == 'string') {
try {
var obj=JSON.parse(str);
if(typeof obj == 'object' && obj ){
return true;
}else{
return false;
}
} catch(e) {
// console.log('error'+str+'!!!'+e);
return false;
}
}
console.log('It is not a string!')
}
</script>
</body>
</html>

View File

@ -0,0 +1,9 @@
<div id="content" role="main">
<!--{articleListItem.html}-->
<nav id="nav-below" class="navigation" role="navigation">
<div class="assistive-text">文章分页</div>
<!--{articleListOlder.html}-->
<!--{articleListNewer.html}-->
</nav>
<!-- #nav-below .navigation -->
</div>

View File

@ -0,0 +1,24 @@
<article id="post-801" class="post-801 post type-post status-publish format-standard has-post-thumbnail hentry category-4">
<header class="entry-header">
<h2 class="entry-title"> <a href="<!--{articleListItem.url}-->" title="<!--{articleListItem.title}-->" rel="<!--{articleListItem.title}-->"><!--{articleListItem.title}--></a> </h2>
</header>
<!-- .entry-header -->
<div class="entry-summary">
<!--{articleListItemImg.html}-->
<p><!--{articleListItem.contentText}--><span class="read-more"><a href="<!--{articleListItem.url}-->">继续阅读 &raquo;</a></span></p>
</div>
<!-- .entry-summary -->
<footer class="entry-meta">
<span>分类:
<!--{articleListItemCategory.html}-->
</span>
<span>标签:
<!--{articleListItemTags.html}-->
</span>
<span class="alignright"><!--{articleListItem.createDate}-->
</span>
</footer>
<!-- .entry-meta -->
</article>

View File

@ -0,0 +1 @@
<a href="<!--{articleListItemCategory.url}-->" rel="category tag"><!--{articleListItemCategory.title}--></a>

View File

@ -0,0 +1,3 @@
<div class="excerpt-thumb">
<a href="<!--{articleListItemImg.url}-->" title="<!--{articleListItemImg.title}-->" rel="bookmark"> <img width="200" height="112" src="<!--{articleListItemImg.img}-->" class="alignleft wp-post-image" alt="" loading="lazy" /> </a>
</div>

View File

@ -0,0 +1 @@
<a href="<!--{articleListItemTags.url}-->" rel="tag"><!--{articleListItemTags.title}--></a>

View File

@ -0,0 +1 @@
<div class="nav-next alignright"><a href="<!--{articleListNewer.url}-->">下一页<span class="meta-nav"></span></a></div>

View File

@ -0,0 +1 @@
<div class="nav-previous alignleft"><a href="<!--{articleListOlder.url}-->"><span class="meta-nav"></span> 上一页</a></div>

View File

@ -0,0 +1,20 @@
<div id="content" role="main">
<!--{articleSingleArticle.html}-->
<!-- #post -->
<nav class="nav-single">
<div class="assistive-text">
Post navigation
</div>
<!--{articleSingleOlder.html}-->
<!--{articleSingleNewer.html}-->
</nav>
<!-- .nav-single -->
<!--{articleSingleComment.html}-->
<!-- #comments .comments-area -->
</div>

View File

@ -0,0 +1,28 @@
<article id="post-789" class="post-789 post type-post status-publish format-standard hentry category-4">
<header class="entry-header">
<h1 class="entry-title"><!--{articleSingleArticle.title}--></h1>
<div class="below-title-meta">
<div class="adt">
By
<span class="vcard author"> <span class="fn"><a href="#" title="由admin发布" rel="author">admin</a></span> </span>
<span class="meta-sep">|</span>
<span class="date updated"><!--{articleSingleArticle.createDate}--></span>
</div>
</div>
<!-- below title meta end -->
</header>
<!-- .entry-header -->
<div class="entry-content">
<!--{articleSingleArticle.contentHtml}-->
</div>
<!-- .entry-content -->
<footer class="entry-meta">
<span>分类:
<!--{articleSingleArticleCategory.html}-->
</span>
<span>标签:
<!--{articleSingleArticleTags.html}-->
</span>
</footer>
<!-- .entry-meta -->
</article>

View File

@ -0,0 +1 @@
<a href="<!--{articleSingleArticleCategory.url}--> " rel="category tag"><!--{articleSingleArticleCategory.title}--> </a>

View File

@ -0,0 +1 @@
<a href="<!--{articleSingleArticleTags.url}-->" rel="tag"><!--{articleSingleArticleTags.title}--></a> ,

View File

@ -0,0 +1,6 @@
<div id="comments" class="comments-area">
<div id="respond" class="comment-respond">
<!--{opt.commentCode}-->
</div>
<!-- #respond -->
</div>

View File

@ -0,0 +1 @@
<span class="nav-next"><a href="<!--{articleSingleNewer.url}-->" rel="next"><!--{articleSingleNewer.title}--> <span class="meta-nav"></span></a></span>

View File

@ -0,0 +1 @@
<span class="nav-previous"><a href="<!--{articleSingleOlder.url}-->" rel="prev"><span class="meta-nav"></span> <!--{articleSingleOlder.title}--></a></span>

BIN
themes/default/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

128
themes/default/index.html Normal file
View File

@ -0,0 +1,128 @@
<!DOCTYPE html>
<!--[if IE 7]>
<html class="ie ie7" lang="zh-CN">
<![endif]-->
<!--[if IE 8]>
<html class="ie ie8" lang="zh-CN">
<![endif]-->
<!--[if !(IE 7) | !(IE 8) ]><!-->
<html lang="zh-CN">
<!--<![endif]-->
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="profile" href="http://gmpg.org/xfn/11" />
<link rel="icon" type="image/x-icon" href="https://cdn.jsdelivr.net/gh/gdtool/zhaopp/cfblog/favicon.ico" />
<link rel="Shortcut Icon" href="https://cdn.jsdelivr.net/gh/gdtool/zhaopp/cfblog/favicon.ico">
<title><!--{opt.siteName}--></title>
<meta name="keywords" content="<!--{opt.keyWords}--> />
<meta name="description" content="<!--{opt.siteDescription}-->" />
<link rel="dns-prefetch" href="//fonts.googleapis.com" />
<link rel="dns-prefetch" href="//s.w.org" />
<script type="text/javascript">
window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/13.0.1\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/13.0.1\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/cdn.jsdelivr.net\/gh\/gdtool\/zhaopp\/cfblog\/wp-emoji-release.min.js?ver=5.6"}};
!function(e,a,t){var r,n,o,i,p=a.createElement("canvas"),s=p.getContext&&p.getContext("2d");function c(e,t){var a=String.fromCharCode;s.clearRect(0,0,p.width,p.height),s.fillText(a.apply(this,e),0,0);var r=p.toDataURL();return s.clearRect(0,0,p.width,p.height),s.fillText(a.apply(this,t),0,0),r===p.toDataURL()}function l(e){if(!s||!s.fillText)return!1;switch(s.textBaseline="top",s.font="600 32px Arial",e){case"flag":return!c([127987,65039,8205,9895,65039],[127987,65039,8203,9895,65039])&&(!c([55356,56826,55356,56819],[55356,56826,8203,55356,56819])&&!c([55356,57332,56128,56423,56128,56418,56128,56421,56128,56430,56128,56423,56128,56447],[55356,57332,8203,56128,56423,8203,56128,56418,8203,56128,56421,8203,56128,56430,8203,56128,56423,8203,56128,56447]));case"emoji":return!c([55357,56424,8205,55356,57212],[55357,56424,8203,55356,57212])}return!1}function d(e){var t=a.createElement("script");t.src=e,t.defer=t.type="text/javascript",a.getElementsByTagName("head")[0].appendChild(t)}for(i=Array("flag","emoji"),t.supports={everything:!0,everythingExceptFlag:!0},o=0;o<i.length;o++)t.supports[i[o]]=l(i[o]),t.supports.everything=t.supports.everything&&t.supports[i[o]],"flag"!==i[o]&&(t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&t.supports[i[o]]);t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&!t.supports.flag,t.DOMReady=!1,t.readyCallback=function(){t.DOMReady=!0},t.supports.everything||(n=function(){t.readyCallback()},a.addEventListener?(a.addEventListener("DOMContentLoaded",n,!1),e.addEventListener("load",n,!1)):(e.attachEvent("onload",n),a.attachEvent("onreadystatechange",function(){"complete"===a.readyState&&t.readyCallback()})),(r=t.source||{}).concatemoji?d(r.concatemoji):r.wpemoji&&r.twemoji&&(d(r.twemoji),d(r.wpemoji)))}(window,document,window._wpemojiSettings);
</script>
<style type="text/css">
img.wp-smiley,
img.emoji {
display: inline !important;
border: none !important;
box-shadow: none !important;
height: 1em !important;
width: 1em !important;
margin: 0 .07em !important;
vertical-align: -0.1em !important;
background: none !important;
padding: 0 !important;
}
</style>
<link rel="stylesheet" id="wp-block-library-css" href="https://cdn.jsdelivr.net/gh/WordPress/WordPress@5.5.3/wp-includes/css/dist/block-library/style.min.css?ver=5.6" type="text/css" media="all" />
<style id="md-style-inline-css" type="text/css">
.gfm-task-list { border: 1px solid transparent; list-style-type: none; } .gfm-task-list input { margin-right: 10px !important; } .copy-button { cursor: pointer; border: 0; font-size: 12px; text-transform: uppercase; font-weight: 500; padding: 3px 6px 3px 6px; background-color: rgba(255, 255, 255, 0.6); position: absolute; overflow: hidden; top: 5px; right: 5px; border-radius: 3px; } .copy-button:before { content: ""; display: inline-block; width: 16px; height: 16px; margin-right: 3px; background-size: contain; background-image: url("data:image/svg+xml,%3Csvg version=\'1.1\' xmlns=\'http://www.w3.org/2000/svg\' xmlns:xlink=\'http://www.w3.org/1999/xlink\' x=\'0px\' y=\'0px\' width=\'16px\' height=\'16px\' viewBox=\'888 888 16 16\' enable-background=\'new 888 888 16 16\' xml:space=\'preserve\'%3E %3Cpath fill=\'%23333333\' d=\'M903.143,891.429c0.238,0,0.44,0.083,0.607,0.25c0.167,0.167,0.25,0.369,0.25,0.607v10.857 c0,0.238-0.083,0.44-0.25,0.607s-0.369,0.25-0.607,0.25h-8.571c-0.238,0-0.44-0.083-0.607-0.25s-0.25-0.369-0.25-0.607v-2.571 h-4.857c-0.238,0-0.44-0.083-0.607-0.25s-0.25-0.369-0.25-0.607v-6c0-0.238,0.06-0.5,0.179-0.786s0.262-0.512,0.428-0.679 l3.643-3.643c0.167-0.167,0.393-0.309,0.679-0.428s0.547-0.179,0.786-0.179h3.714c0.238,0,0.44,0.083,0.607,0.25 c0.166,0.167,0.25,0.369,0.25,0.607v2.929c0.404-0.238,0.785-0.357,1.143-0.357H903.143z M898.286,893.331l-2.67,2.669h2.67V893.331 z M892.571,889.902l-2.669,2.669h2.669V889.902z M894.321,895.679l2.821-2.822v-3.714h-3.428v3.714c0,0.238-0.083,0.441-0.25,0.607 s-0.369,0.25-0.607,0.25h-3.714v5.714h4.571v-2.286c0-0.238,0.06-0.5,0.179-0.786C894.012,896.071,894.155,895.845,894.321,895.679z M902.857,902.857v-10.286h-3.429v3.714c0,0.238-0.083,0.441-0.25,0.607c-0.167,0.167-0.369,0.25-0.607,0.25h-3.714v5.715H902.857z\' /%3E %3C/svg%3E"); background-repeat: no-repeat; position: relative; top: 3px; } pre { position: relative; } pre:hover .copy-button { background-color: rgba(255, 255, 255, 0.9); }
</style>
<link rel="stylesheet" id="themonic-fonts-css" href="https://fonts.googleapis.com/css?family=Ubuntu%3A400%2C700&amp;subset=latin%2Clatin-ext" type="text/css" media="all" />
<link rel="stylesheet" id="themonic-style-css" href="https://cdn.jsdelivr.net/wp/themes/iconic-one/2.1.8/style.min.css?ver=1.7.8" type="text/css" media="all" />
<link rel="stylesheet" id="custom-style-css" href="https://cdn.jsdelivr.net/wp/themes/iconic-one/2.1.8/custom.min.css?ver=5.6" type="text/css" media="all" />
<meta name="generator" content="WordPress 5.6" />
<style type="text/css" id="wp-custom-css">
@media (max-width: 768px) {
#secondary {
display:none !important;
}
#menu-top{
display:none !important;
}
.site-content {
float: left;
width: 95%;
padding: 30px 2% 0 1%;
}
.site-description{
display:none !important;
}
.io-title-description {
display: inline-block;
margin: 17px 0;
padding: 0px 0;
float: none;
}
.wrapper {
border: 1px solid #16a1e7 !important;
}
} </style>
<!--{opt.codeBeforHead}-->
</head>
<body class="home blog logged-in custom-font-enabled single-author hfeed">
<div id="page" class="site">
<header id="masthead" class="site-header" role="banner">
<div class="io-title-description">
<a href="/" title="<!--{opt.siteName}-->" rel="home"><!--{opt.siteName}--></a>
<br ...="" />
<a class="site-description"><!--{opt.siteDescription}--></a>
</div>
<!--{widgetMenu.html}-->
<!-- #site-navigation -->
<div class="clear"></div>
</header>
<!-- #masthead -->
<div id="main" class="wrapper">
<div id="primary" class="site-content">
<!--{articleList.html}-->
<!--{articleSingle.html}-->
<!-- #上面俩,二选一 -->
</div>
<!-- #primary -->
<div id="secondary" class="widget-area" role="complementary">
<!--{widgetRecently.html}-->
<!--{widgetCategory.html}-->
<!--{widgetTags.html}-->
<aside id="meta-2" class="widget widget_meta"><p class="widget-title">链接</p>
<ul>
<li><a href="/admin/">管理站点</a></li>
</ul>
</aside>
</div>
<!-- #secondary -->
</div>
<!-- #main .wrapper -->
<!-- #colophon -->
<div class="site-wordpress">
<!--{opt.copyRight}-->
</div>
<!-- .site-info -->
<div class="clear"></div>
</div>
<!-- #page -->
<script type="text/javascript" src="https://cdn.jsdelivr.net/wp/themes/iconic-one/2.1.8/js/selectnav.min.js?ver=1.0" id="themonic-mobile-navigation-js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/gh/WordPress/WordPress@5.6/wp-includes/js/clipboard.min.js?ver=5.6" id="clipboard-js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/gh/gdtool/zhaopp/cfblog/wp-embed.min.js?ver=5.6" id="wp-embed-js"></script>
<!--{opt.codeBeforBody}-->
</body>
</html>

View File

@ -0,0 +1,6 @@
<aside id="categories-4" class="widget widget_categories">
<p class="widget-title">分类目录</p>
<ul>
<!--{widgetCategoryItem.html}-->
</ul>
</aside>

View File

@ -0,0 +1 @@
<li class="cat-item cat-item-5"><a href="<!--{widgetCategoryItem.url}-->"><!--{widgetCategoryItem.title}--></a> </li>

View File

@ -0,0 +1,6 @@
<nav id="site-navigation" class="themonic-nav" role="navigation">
<a class="assistive-text" href="#main" title="Skip to content">Skip to content</a>
<ul id="menu-top" class="nav-menu">
<!--{widgetMenuItem.html}-->
</ul>
</nav>

View File

@ -0,0 +1,4 @@
<li id="menu-item-211" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-211"><a href="<!--{widgetMenuItem.url}-->"><!--{widgetMenuItem.title}--></a></li>

View File

@ -0,0 +1,8 @@
<aside id="recent-posts-2" class="widget widget_recent_entries">
<p class="widget-title">近期文章</p>
<ul>
<!--{widgetRecentlyItem.html}-->
</ul>
</aside>

View File

@ -0,0 +1 @@
<li> <a href="<!--{widgetRecentlyItem.url}-->"><!--{widgetRecentlyItem.title}--></a> </li>

View File

@ -0,0 +1,6 @@
<aside id="tag_cloud-2" class="widget widget_tag_cloud">
<p class="widget-title">标签云</p>
<div class="tagcloud">
<!--{widgetTagsItem.html}-->
</div>
</aside>

View File

@ -0,0 +1 @@
<a href="<!--{widgetTagsItem.url}-->" class="tag-cloud-link tag-link-18 tag-link-position-3" style="font-size: 8pt;" ><!--{widgetTagsItem.title}--> </a>

61
themes/default/wp-embed.min.js vendored Normal file
View File

@ -0,0 +1,61 @@
/*! This file is auto-generated */
!function(d, l) {
"use strict";
var e = !1
, o = !1;
if (l.querySelector)
if (d.addEventListener)
e = !0;
if (d.wp = d.wp || {},
!d.wp.receiveEmbedMessage)
if (d.wp.receiveEmbedMessage = function(e) {
var t = e.data;
if (t)
if (t.secret || t.message || t.value)
if (!/[^a-zA-Z0-9]/.test(t.secret)) {
var r, a, i, s, n, o = l.querySelectorAll('iframe[data-secret="' + t.secret + '"]'), c = l.querySelectorAll('blockquote[data-secret="' + t.secret + '"]');
for (r = 0; r < c.length; r++)
c[r].style.display = "none";
for (r = 0; r < o.length; r++)
if (a = o[r],
e.source === a.contentWindow) {
if (a.removeAttribute("style"),
"height" === t.message) {
if (1e3 < (i = parseInt(t.value, 10)))
i = 1e3;
else if (~~i < 200)
i = 200;
a.height = i
}
if ("link" === t.message)
if (s = l.createElement("a"),
n = l.createElement("a"),
s.href = a.getAttribute("src"),
n.href = t.value,
n.host === s.host)
if (l.activeElement === a)
d.top.location.href = t.value
}
}
}
,
e)
d.addEventListener("message", d.wp.receiveEmbedMessage, !1),
l.addEventListener("DOMContentLoaded", t, !1),
d.addEventListener("load", t, !1);
function t() {
if (!o) {
o = !0;
var e, t, r, a, i = -1 !== navigator.appVersion.indexOf("MSIE 10"), s = !!navigator.userAgent.match(/Trident.*rv:11\./), n = l.querySelectorAll("iframe.wp-embedded-content");
for (t = 0; t < n.length; t++) {
if (!(r = n[t]).getAttribute("data-secret"))
a = Math.random().toString(36).substr(2, 10),
r.src += "#?secret=" + a,
r.setAttribute("data-secret", a);
if (i || s)
(e = r.cloneNode(!0)).removeAttribute("security"),
r.parentNode.replaceChild(e, r)
}
}
}
}(window, document);

228
themes/default/wp-emoji-release.min.js vendored Normal file

File diff suppressed because one or more lines are too long