微博客程序如何卸载项目中的插件?
7个月前 ##### 进入插件管理页面 登录项目后台,导航至插件管理界面(对应代码中...
这一款不错的404页面是博主的一个域名没有正确解析后,访问发现的,看着不错就个保存了下来,以后可能用得到。

<!doctype html><br />
<html lang="zh-CN"><br />
<head><br />
<meta charset="utf-8" /><br />
<meta http-equiv="X-UA-Compatible" content="IE=edge" /><br />
<meta name="viewport" content="width=device-width, initial-scale=1" /><br />
<title>404 - 页面未找到</title><br />
<meta name="robots" content="noindex, nofollow" /><br />
<style><br />
/* ============================<br />
404 · 居中单卡片(企业蓝 · 微调精修)<br />
- 仅保留中间内容<br />
- 出错时间 & 出错 URL + 一键复制<br />
- IE11 安全:为 var() 提供回退;诊断区用 Flex<br />
============================ */<br />
:root{<br />
--brand-600:#2563EB; --brand-700:#1E48CC;<br />
--ink:#0B1220; --muted:#5B677C;<br />
--line:#E6EAF2; --card:#FFFFFF; --bg:#F7F9FC;<br />
--radius-lg:18px;<br />
--shadow-lg:0 10px 26px rgba(12,28,64,.10), 0 3px 10px rgba(12,28,64,.04);<br />
}<br />
<br />
*{ box-sizing:border-box; }<br />
html,body{ height:100%; }<br />
body{<br />
margin:0;<br />
background:#F7F9FC; background:var(--bg);<br />
color:#0B1220; color:var(--ink);<br />
font:14px/1.65 "Microsoft YaHei","Segoe UI",system-ui,-apple-system,Arial,"PingFang SC","Hiragino Sans GB","Noto Sans CJK SC",sans-serif;<br />
-webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;<br />
}<br />
<br />
/* 舞台:全屏居中,仅一块内容 */<br />
.stage{<br />
min-height:100vh;<br />
display:flex; align-items:center; justify-content:center;<br />
padding:18px;<br />
}<br />
<br />
/* 主卡片:左文右图(精修留白) */<br />
.panel{<br />
width:100%;<br />
max-width:1020px;<br />
display:flex; align-items:stretch; justify-content:space-between;<br />
gap:22px; flex-wrap:wrap;<br />
background:#FFFFFF; background:var(--card);<br />
border:1px solid #E6EAF2; border:1px solid var(--line);<br />
border-radius:18px; border-radius:var(--radius-lg);<br />
box-shadow:var(--shadow-lg);<br />
overflow:hidden;<br />
}<br />
<br />
/* 左侧内容 */<br />
.col-text{ flex:1 1 520px; min-width:320px; padding:26px 26px 20px 26px; }<br />
.kicker{<br />
display:inline-flex; align-items:center; gap:8px;<br />
height:24px; padding:0 10px; border-radius:999px;<br />
background:#EEF3FF; border:1px solid #DCE7FF;<br />
color:#14336C; font-size:12px; font-weight:700;<br />
}<br />
.kicker .pill{<br />
width:8px; height:8px; border-radius:50%;<br />
background:#2563EB; background:var(--brand-600);<br />
box-shadow:0 0 0 3px rgba(37,99,235,.12);<br />
}<br />
<br />
h1{<br />
margin: 10px 0 4px;<br />
font-size: 55px;<br />
line-height: 1;<br />
letter-spacing: .3px;<br />
font-weight: 900;<br />
background: linear-gradient(180deg,#0B1220,#2A3D61);<br />
-webkit-background-clip: text;<br />
background-clip: text;<br />
color: transparent;<br />
filter: drop-shadow(0 6px 18px rgba(15,23,42,.06));<br />
white-space: nowrap;<br />
}<br />
.subtitle{ margin:0 0 8px; font-size:18px; font-weight:700; color:#12203A; }<br />
.desc{ margin:0 0 4px; color:#5B677C; color:var(--muted); font-size:14px; }<br />
<br />
/* 列表紧凑 + 对齐 */<br />
.reason-list{ margin:12px 0 0; padding:0; list-style:none; }<br />
.reason-list li{<br />
display:flex; gap:10px; align-items:flex-start;<br />
padding:8px 10px; border:1px solid #E9EEF7; border-radius:10px;<br />
background:#fff; color:#23314E; font-size:14px;<br />
}<br />
.reason-list li + li{ margin-top:8px; }<br />
.reason-list .dot{<br />
flex:0 0 7px; width:7px; height:7px; margin-top:7px; border-radius:50%;<br />
background:#1E48CC; background:var(--brand-700);<br />
}<br />
<br />
/* 诊断信息卡(Flex 两列,支持 IE11) */<br />
.diag{<br />
margin-top:12px; border:1px dashed #D8E2F6; border-radius:10px; background:#FAFCFF;<br />
padding:10px 12px;<br />
}<br />
.diag-header{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:6px; }<br />
.diag-title{ font-size:12px; font-weight:800; color:#103063; display:flex; align-items:center; gap:8px; }<br />
.diag-title .badge{ width:8px; height:8px; border-radius:50%; background:#2563EB; background:var(--brand-600); box-shadow:0 0 0 3px rgba(37,99,235,.12); }<br />
.copy-btn{<br />
-webkit-appearance:none; appearance:none; cursor:pointer; user-select:none;<br />
display:inline-flex; align-items:center; gap:6px; height:28px; padding:0 10px;<br />
border-radius:999px; border:1px solid #CBD6EA; background:#fff; color:#1B2B4A; font-size:12px; font-weight:700;<br />
transition: box-shadow .12s ease, transform .08s ease, background-color .15s ease, border-color .15s ease;<br />
}<br />
.copy-btn:hover{ transform: translateY(-1px); }<br />
.copy-btn:focus, .copy-btn:focus-visible{ outline:none; box-shadow:0 0 0 3px rgba(37,99,235,.22); }<br />
<br />
/* 两列(标签 100px,值 自适应) */<br />
.diag-row{<br />
display:flex; align-items:center; gap:10px; margin:6px 0;<br />
}<br />
.diag-label{<br />
width:100px; flex:0 0 100px;<br />
color:#5A6A86; font-size:12px; text-align:right;<br />
}<br />
.diag-value{<br />
flex:1 1 auto;<br />
font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;<br />
font-size:13px; background:#FFFFFF; border:1px solid #E3EBFA; border-radius:8px; padding:6px 8px; color:#1D2B4A; overflow:auto;<br />
word-break: break-all;<br />
}<br />
<br />
/* 行动按钮(仅“刷新”) */<br />
.actions{ display:flex; gap:10px; flex-wrap:wrap; margin-top:16px; }<br />
.btn{<br />
-webkit-appearance:none; appearance:none; user-select:none;<br />
display:inline-flex; align-items:center; justify-content:center; gap:8px;<br />
height:40px; padding:0 16px; border-radius:999px;<br />
border:1px solid transparent; cursor:pointer; text-decoration:none;<br />
font-size:14px; font-weight:700;<br />
transition:transform .08s ease, box-shadow .12s ease, background-color .15s ease, border-color .15s ease;<br />
will-change: transform;<br />
}<br />
.btn:focus, .btn:focus-visible{ outline:none; box-shadow:0 0 0 3px rgba(37,99,235,.22); }<br />
.btn svg{ width:18px; height:18px; }<br />
.btn-primary{<br />
background:linear-gradient(180deg,#2563EB,#1E48CC); background:linear-gradient(180deg,var(--brand-600),var(--brand-700));<br />
color:#fff; box-shadow:0 8px 18px rgba(37,99,235,.20);<br />
}<br />
.btn-primary:hover{ transform:translateY(-1px); }<br />
<br />
/* 提示(新增):与诊断信息同色系,克制不抢眼 */<br />
.note{<br />
margin-top:10px; padding:8px 10px; border:1px dashed #D8E7FF; border-radius:8px;<br />
background:#F6FAFF; color:#5B677C; font-size:12px;<br />
display:flex; align-items:flex-start; gap:8px;<br />
}<br />
.note svg{ width:16px; height:16px; flex:0 0 16px; }<br />
<br />
/* 右侧插画:断开链接(轻量更干净) */<br />
.col-art{<br />
flex:1 1 360px; min-width:280px; position:relative;<br />
background:<br />
radial-gradient(60% 60% at 18% 18%, rgba(37,99,235,.10), rgba(37,99,235,0) 70%),<br />
radial-gradient(60% 60% at 88% 10%, rgba(37,99,235,.08), rgba(37,99,235,0) 70%),<br />
linear-gradient(180deg,#FAFBFF 0%, #F3F7FF 100%);<br />
border-left:1px solid #E6EAF2; border-left:1px solid var(--line);<br />
display:flex; align-items:center; justify-content:center; padding:16px;<br />
}<br />
.art{<br />
width:90%; max-width:460px; height:260px;<br />
background:#FFFFFF; border:1px solid #E2E8F6; border-radius:14px;<br />
box-shadow:0 12px 28px rgba(16,40,100,.10);<br />
position:relative; overflow:hidden;<br />
}<br />
.art .band{ position:absolute; top:0; left:0; right:0; height:64px; background:linear-gradient(90deg, rgba(37,99,235,.14), rgba(37,99,235,0) 70%); }<br />
.art .num{ position:absolute; right:-8px; bottom:-16px; font-weight:900; font-size:128px; line-height:1; letter-spacing:3px; color:#EEF2FA; }<br />
.art svg{ position:absolute; inset:0; width:100%; height:100%; }<br />
<br />
/* 自适应 */<br />
@media (max-width: 860px){<br />
.col-text{ padding:22px 18px; }<br />
h1{ font-size:50px; }<br />
}<br />
@media (max-width: 520px){<br />
.art{ height:220px; }<br />
.diag-label{ width:90px; flex-basis:90px; }<br />
}<br />
@media (prefers-reduced-motion: reduce){ .btn, .copy-btn{ transition:none; } }<br />
<br />
/* 屏幕阅读器状态文本 */<br />
.status-sr{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }<br />
</style><br />
</head><br />
<body><br />
<br />
<main class="stage" role="main" aria-labelledby="title" aria-describedby="desc"><br />
<section class="panel" aria-label="页面未找到"><br />
<!-- 左侧文案 --><br />
<div class="col-text"><br />
<span class="kicker"><span class="pill" aria-hidden="true"></span> 系统提示</span><br />
<h1 id="title">Website Error</h1><br />
<p class="subtitle">站点未找到或状态异常</p><br />
<p id="desc" class="desc">可能的原因如下,请逐项排查:</p><br />
<br />
<ul class="reason-list"><br />
<li><span class="dot" aria-hidden="true"></span>主机控制面板未绑定域名(请确认 <code>www</code> 和 <code>@</code> 已分别绑定)。</li><br />
<li><span class="dot" aria-hidden="true"></span>域名解析错误,请检查您的域名 DNS 解析记录是否正确。</li><br />
<li><span class="dot" aria-hidden="true"></span>产品到期时间过长,当前域名可能已被解除绑定。</li><br />
</ul><br />
<br />
<!-- 诊断信息(Flex 两列) --><br />
<section class="diag" aria-labelledby="diag-title"><br />
<div class="diag-header"><br />
<div class="diag-title" id="diag-title"><span class="badge" aria-hidden="true"></span> 诊断信息</div><br />
<button type="button" class="copy-btn" id="copyDiag" aria-label="复制诊断信息"><br />
<!-- copy icon --><br />
<svg viewBox="0 0 24 24" fill="none" width="16" height="16" aria-hidden="true"><br />
<rect x="9" y="9" width="10" height="10" rx="2" stroke="currentColor" stroke-width="2"/><br />
<rect x="5" y="5" width="10" height="10" rx="2" stroke="currentColor" stroke-width="2" opacity=".6"/><br />
</svg><br />
复制<br />
</button><br />
</div><br />
<br />
<div class="diag-row"><br />
<div class="diag-label">出错时间</div><br />
<div class="diag-value"><time id="err-time" datetime="">—</time></div><br />
</div><br />
<div class="diag-row"><br />
<div class="diag-label">出错 URL</div><br />
<div class="diag-value" id="err-url">—</div><br />
</div><br />
</section><br />
<br />
<!-- 新增提示:请记录诊断信息 --><br />
<p class="note" role="note" aria-label="处理建议"><br />
<svg viewBox="0 0 24 24" fill="none" aria-hidden="true"><br />
<circle cx="12" cy="12" r="10" stroke="currentColor" stroke-width="2"></circle><br />
<path d="M12 7.5v.1m0 3.4v5" stroke="currentColor" stroke-width="2" stroke-linecap="round"></path><br />
</svg><br />
提示:如有必要,请将上述诊断信息记录并提供给技术人员处理。<br />
</p><br />
<br />
<!-- 仅保留刷新按钮 --><br />
<div class="actions" role="group" aria-label="页面操作"><br />
<button type="button" class="btn btn-primary" onclick="location.reload()" aria-label="刷新当前页面"><br />
<svg viewBox="0 0 24 24" fill="none" aria-hidden="true"><br />
<path d="M20 7v6h-6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><br />
<path d="M20 13a8 8 0 1 1-2.34-5.66L20 7" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><br />
</svg><br />
刷新页面<br />
</button><br />
</div><br />
<br />
<div class="status-sr" id="live-status" aria-live="polite"></div><br />
</div><br />
<br />
<!-- 右侧插画:断开链接(更克制) --><br />
<div class="col-art" aria-hidden="true"><br />
<div class="art"><br />
<div class="band"></div><br />
<div class="num">404</div><br />
<br />
<!-- Broken Link Illustration (精简线条) --><br />
<svg viewBox="0 0 800 260" role="img" aria-label="断开链接插画"><br />
<defs><br />
<pattern id="dots" width="16" height="16" patternUnits="userSpaceOnUse"><br />
<circle cx="1" cy="1" r="1" fill="#E6EEFA"/><br />
</pattern><br />
<linearGradient id="grad" x1="0" x2="1" y1="0" y2="1"><br />
<stop offset="0%" stop-color="#2563EB"/><br />
<stop offset="100%" stop-color="#1E48CC"/><br />
</linearGradient><br />
</defs><br />
<rect x="0" y="0" width="800" height="260" fill="url(#dots)"/><br />
<!-- 左链环 --><br />
<g transform="translate(188,120) rotate(-14)"><br />
<rect x="-60" y="-22" rx="16" ry="16" width="200" height="44" fill="#FFFFFF" stroke="#CFE0FF" stroke-width="3"/><br />
<rect x="-46" y="-10" rx="9" ry="9" width="172" height="20" fill="#F3F8FF" stroke="#DCE8FF"/><br />
</g><br />
<!-- 右链环 --><br />
<g transform="translate(502,120) rotate(14)"><br />
<rect x="-60" y="-22" rx="16" ry="16" width="200" height="44" fill="#FFFFFF" stroke="#CFE0FF" stroke-width="3"/><br />
<rect x="-46" y="-10" rx="9" ry="9" width="172" height="20" fill="#F3F8FF" stroke="#DCE8FF"/><br />
</g><br />
<!-- 断裂闪电 & 点缀 --><br />
<path d="M394 94 L410 122 L392 134 L408 160" fill="none" stroke="url(#grad)" stroke-width="6.5" stroke-linecap="round" stroke-linejoin="round"/><br />
<circle cx="392" cy="134" r="3" fill="#2563EB"/><br />
<circle cx="404" cy="118" r="2" fill="#2563EB" opacity=".7"/><br />
<circle cx="412" cy="146" r="2" fill="#2563EB" opacity=".5"/><br />
</svg><br />
</div><br />
</div><br />
</section><br />
</main><br />
<br />
<script><br />
/* ========== 诊断信息填充(IE11 兼容写法) ========== */<br />
(function(){<br />
function pad2(n){ return (n<10 ? '0' : '') + n; }<br />
function tzOffsetString(d){<br />
var offMin = d.getTimezoneOffset();<br />
var totalMin = -offMin; // 东区为正<br />
var sign = totalMin >= 0 ? '+' : '-';<br />
var absMin = Math.abs(totalMin);<br />
var hh = pad2(Math.floor(absMin/60));<br />
var mm = pad2(absMin%60);<br />
return 'UTC' + sign + hh + ':' + mm;<br />
}<br />
function formatLocal(d){<br />
return d.getFullYear() + '-' + pad2(d.getMonth()+1) + '-' + pad2(d.getDate()) +<br />
' ' + pad2(d.getHours()) + ':' + pad2(d.getMinutes()) + ':' + pad2(d.getSeconds()) +<br />
' (' + tzOffsetString(d) + ')';<br />
}<br />
<br />
var now = new Date();<br />
var elTime = document.getElementById('err-time');<br />
var elUrl = document.getElementById('err-url');<br />
if (elTime){<br />
elTime.textContent = formatLocal(now);<br />
if (now.toISOString){ elTime.setAttribute('datetime', now.toISOString()); }<br />
}<br />
if (elUrl){<br />
var u = (window.location && window.location.href) ? window.location.href : '';<br />
elUrl.textContent = u; elUrl.setAttribute('title', u);<br />
}<br />
<br />
// 复制诊断信息(含回退)<br />
var btn = document.getElementById('copyDiag');<br />
var live = document.getElementById('live-status');<br />
function setLive(msg){ if(live){ live.textContent = msg; } }<br />
function copyText(txt, onDone){<br />
if (navigator && navigator.clipboard && navigator.clipboard.writeText){<br />
navigator.clipboard.writeText(txt).then(function(){ onDone(true); }, function(){ fallback(); });<br />
} else { fallback(); }<br />
function fallback(){<br />
var ta = document.createElement('textarea');<br />
ta.value = txt; ta.style.position = 'fixed'; ta.style.opacity = '0';<br />
document.body.appendChild(ta); ta.focus(); ta.select();<br />
try{ onDone( !!document.execCommand('copy') ); }catch(e){ onDone(false); }<br />
document.body.removeChild(ta);<br />
}<br />
}<br />
function buildDiagText(){<br />
var t = elTime && elTime.textContent ? elTime.textContent : '';<br />
var u = elUrl && elUrl.textContent ? elUrl.textContent : '';<br />
return '出错时间: ' + t + '\n出错URL: ' + u;<br />
}<br />
if (btn){<br />
btn.onclick = function(){<br />
copyText(buildDiagText(), function(ok){<br />
setLive(ok ? '已复制诊断信息' : '复制失败,请手动复制');<br />
var old = btn.textContent || '复制';<br />
btn.textContent = ok ? '已复制' : '复制失败';<br />
setTimeout(function(){ btn.textContent = '复制'; }, 1500);<br />
});<br />
};<br />
}<br />
})();<br />
</script><br />
<br />
</body><br />
</html><br />
<br />
```<br />#免责声明#
本文为转载 或 原创内容,未经授权禁止转载、摘编、复制及镜像使用、转载请注明作者、出处及原文链接、违者将依法追究责任。

7个月前 ##### 进入插件管理页面 登录项目后台,导航至插件管理界面(对应代码中...

4个月前 1、获取音乐在线播放接口(付费音乐也可以获取完整版) ``` 接口:http...

4个月前 1、新建一个xiunowiki.js文件放到网站根目录 ```javascript (function() { docum...

2个月前 在 Typecho 1.1 中可以通过这样的方式获取 ```php _pageRow['mid']; ?> ``` 如...

7个月前 > 首先声明,下面的代码基本都是用AI写作,博主只是辅助提供意见修改。...

8个月前 以前都没有用过这个功能,近期在搞一个东东遇到了这个问题,怎么实现分...