Dragon Add - 欢迎使用代理访问本站 - 总结 https://blog.dragonadd.xyz/tag/%E6%80%BB%E7%BB%93/ zh-CN Fri, 20 Aug 2021 15:56:00 +0800 Fri, 20 Aug 2021 15:56:00 +0800 Typecho的评论邮件提醒插件——CommentToMail https://blog.dragonadd.xyz/archives/39/ https://blog.dragonadd.xyz/archives/39/ Fri, 20 Aug 2021 15:56:00 +0800 dragonadd [scode type="red"]更新于2022.2.27, 本文所推荐插件在本博客使用多次出现无响应问题,正式弃用。请各位自行尝试。[/scode]

[scode type="lblue"]以下是比较原始的评论邮件推送插件,在本博客插件更换中,测试可行,欢迎朋友尝试。[/scode]

[button color="success" icon="glyphicon glyphicon-send" url="https://yzlog.top/46.html"]点击前往学习[/button]

[scode type="green"]目前本博客正在使用LoveKKComment,下面贴出本博客修改后的插件下载链接,有想法的朋友可以下载使用。原装插件请自行搜索下载。[/scode]

[button color="info" icon="glyphicon glyphicon-send" url="https://wwt.lanzouj.com/iYOIv00pcs0b"]点击下载[/button]


特点:

每当访客给你进行评论或者留言时,同时内容以邮件形式发送到博主邮箱。博主能够第一时间知道,并且给访客回复时候,可以将回复内容发送到访客留下的邮件。

CommentToMail 版本

首先,CommentToMail插件大致上有俩个版本,一个是正式版,需要设置网站监控,另一个是修改版,则不需要设置网站监控。

(本站经尝试正式版后发现无法生效,已使用大佬的修改版并作了一些修改)

点击下载本站所使用插件:CommentToMail-修改.zip ——作者:林林小窝


配置:

I. 首先去配置你的邮箱,开启smtp。(这里以QQ邮箱为例)

登录网页版QQ邮箱,从设置进入你的账户

Setting

往下拉,找到开启pop3/smtp服务,开启第一个服务。

SMTP

开启服务需要邮箱绑定的手机号码发送短信进行验证,验证成功后,会得到一个授权码。请把它复制保存到其他地方作为备用。(不会二次出现,除非重新验证)

II. 把下载完成的插件解压上传到/usr/plugins目录,接着进入后台,点击启用插件并设置填写smtp服务器地址、邮箱地址、密码等信息。

smtp服务器地址:smtp.qq.com
SMTP端口:465
SMTP用户:已开启smtp服务的邮箱账户
SMTP密码:开启smtp时获取的授权码
服务器需要验证和ssl加密勾选,不勾选ssl将会失败

其他默认即可,如果要测试的话,勾选 自己回复自己的评论时,发邮件通知。(同时针对博主和访客)

效果图如下:

owner

guest


温馨提醒:

插件解压文件中可以自定义以上ownerguest的内容。文件名为:owner.htmlguest.html .

下载本站插件后,记得找到以上两个文件,把里面的网址改为贵站网址,不然贵站访客会误入本站噢~


参考教程:

Tyecho 完美配置评论回复邮件提醒的简单方法

]]>
0 https://blog.dragonadd.xyz/archives/39/#comments https://blog.dragonadd.xyz/feed/tag/%E6%80%BB%E7%BB%93/
iconfont图标与fontello图标 https://blog.dragonadd.xyz/archives/20/ https://blog.dragonadd.xyz/archives/20/ Thu, 05 Aug 2021 18:29:00 +0800 dragonadd Handsome主题内置了大量的网页图标 (非图片格式),方便在 自定义栏目中使用。

其中第一和第二的iconfont图标、fontello图标皆为图片展示格式,对于习惯用Ctrl+C、Ctrl+V的懒人患者来说,是极为痛苦的事,因此经博主整理如下。

1. iconfont图标

iconfont图标

以下为可粘贴文本(从左往右):

.icon-qzone、.icon-comments、.icon-comments-o、.icon-links、.icon-c-classification、.icon-pages、.icon-kinds、.icon-shouyeshouye、.icon-user、.icon-star、.icon-iconguanzhu、.icon-wechatpay、.icon-youqinglianjie、.icon-fork、.icon-zhuye、.icon-redo、.icon-bokeyuan 。

2. fontello图标

fontello图标

以下为可粘贴文本(从左往右):

1)第一至第三行

fontello-home、fontello-sign-in、fontello-chevron-right、fontello-chevron-left、fontello-play-circle-o、fontello-cogs、fontello-gear、fontello-emo-tongue、fontello-check、fontello-emo-sunglasses、fontello-dedent、fontello-indent 。

2)第四至第六行

fontello-search、fontello-headphones、fontello-bell、fontello-picture、fontello-eye、fontello-volume-upfontello-user、fontello-clock-o、fontello-tags、fontello-gratipay、fontello-refresh、fontello-edit 。

3)第七至第九行

fontello-emo-devil、fontello-chat-alt、、fontello-camera、fontello-lockfontello-pencil、fontello-wallet、fontello-twitter、fontello-facebook、fontello-rss、fontello-menu、fontello-google-plus、fontello-angle-double-left 。

4)第十至第十二行

fontello-angle-double-right、fontello-angle-right、fontello-angle-down、fontello-spinner、fontello-chevron-circle-up、fontello-unlock-alt、fontello-rss-square、fontello-youtube-play、fontello-instagram、fontello-weibo、fonello-paypal、fontello-pause-circle-o 。

3. Glyphicons字体图标

bootcss自带的Glyphicons字体图标: 详细见Glyphicons 字体图标

]]>
0 https://blog.dragonadd.xyz/archives/20/#comments https://blog.dragonadd.xyz/feed/tag/%E6%80%BB%E7%BB%93/
关于本站Typecho博客搭建与Handsome主题魔改 https://blog.dragonadd.xyz/archives/19/ https://blog.dragonadd.xyz/archives/19/ Tue, 03 Aug 2021 17:20:00 +0800 dragonadd [scode type="yellow"]前言:此篇博文极为粗糙,不建议新手参考。[/scode]

1. Typecho 博客搭建教程

以下这两篇对照着看几遍就大概知道思路了

https://blog.csdn.net/qq_36923257/article/details/112688395

https://www.moeor.com/24.html(已失效)

https://juejin.cn/post/6844903998302978055 (推荐)

关于主题:去搜索你喜欢的主题下载,然后上传根目录/usr/themes/目录里面,在后台外观设置中更换。各主题教程以及配置教程都有主题文档。

关于插件:插件安装是将下载的插件上传根目录/usr/plugin/ 目录里面,在后台设置中启用插件,设置插件。

后台管理:你的后台面板地址就是你的域名/admin,用设置的用户名和密码登录即可。

[scode type="green"]建站不易,在此祝贺各位建站成功,加油![/scode]

[scode type="blue"]以下为本站Handsome主题的特效魔改,版本为8.2.0,如果你还没有此主题,请自行购买。[/scode]

2. 鼠标点击特效

将以下代码放在主题的handsome/component/footer.php中的</body>之前即可。

//字体自行修改
<script type="text/javascript"> 
/* 鼠标特效 */
var a_idx = 0; 
jQuery(document).ready(function($) { 
    $("body").click(function(e) { 
        var a = new Array("富强", "民主", "文明", "和谐", "自由", "平等", "公正" ,"法治", "爱国", "敬业", "诚信", "友善"); 
        var $i = $("<span/>").text(a[a_idx]); 
        a_idx = (a_idx + 1) % a.length; 
        var x = e.pageX, 
        y = e.pageY; 
        $i.css({ 
            "z-index": 999999999999999999999999999999999999999999999999999999999999999999999, 
            "top": y - 20, 
            "left": x, 
            "position": "absolute", 
            "font-weight": "bold", 
            "color": "#ff6651" 
        }); 
        $("body").append($i); 
        $i.animate({ 
            "top": y - 180, 
            "opacity": 0 
        }, 
        1500, 
        function() { 
            $i.remove(); 
        }); 
    }); 
}); 
</script>

本站使用点击爱心特效,代码直接放在后台-更改外观-设置外观-开发者设置-自定义JavaScript,代码如下:

// 点击爱心
! function (e, t, a) {
  function n() {
    c(".heart{width: 10px;height: 10px;position: fixed;background: #f00;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);}.heart:after,.heart:before{content: '';width: inherit;height: inherit;background: inherit;border-radius: 50%;-webkit-border-radius: 50%;-moz-border-radius: 50%;position: fixed;}.heart:after{top: -5px;}.heart:before{left: -5px;}"), o(), r()
  }
  function r() {
    for (var e = 0; e < d.length; e++) d[e].alpha <= 0 ? (t.body.removeChild(d[e].el), d.splice(e, 1)) : (d[e].y--, d[e].scale += .004, d[e].alpha -= .013, d[e].el.style.cssText = "left:" + d[e].x + "px;top:" + d[e].y + "px;opacity:" + d[e].alpha + ";transform:scale(" + d[e].scale + "," + d[e].scale + ") rotate(45deg);background:" + d[e].color + ";z-index:99999");
    requestAnimationFrame(r)
  }
  function o() {
    var t = "function" == typeof e.onclick && e.onclick;
    e.onclick = function (e) {
      t && t(), i(e)
    }
  }
  function i(e) {
    var a = t.createElement("div");
    a.className = "heart", d.push({
      el: a,
      x: e.clientX - 5,
      y: e.clientY - 5,
      scale: 1,
      alpha: 1,
      color: s()
    }), t.body.appendChild(a)
  }
  function c(e) {
    var a = t.createElement("style");
    a.type = "text/css";
    try {
      a.appendChild(t.createTextNode(e))
    } catch (t) {
      a.styleSheet.cssText = e
    }
    t.getElementsByTagName("head")[0].appendChild(a)
  }
  function s() {
    return "rgb(" + ~~(255 * Math.random()) + "," + ~~(255 * Math.random()) + "," + ~~(255 * Math.random()) + ")"
  }
  var d = [];
  e.requestAnimationFrame = function () {
    return e.requestAnimationFrame || e.webkitRequestAnimationFrame || e.mozRequestAnimationFrame || e.oRequestAnimationFrame || e.msRequestAnimationFrame || function (e) {
      setTimeout(e, 1e3 / 60)
    }
  }(), n()
}(window, document);

3. 彩色标签云

打开后台-更改外观-设置外观-开发者设置-选择好需要的颜色粘贴至自定义JavaScript即可。

<!--纯黑标签云-->
let tags = document.querySelectorAll("#tag_cloud-2 a");
let colorArr = ["#000000", "#000000", "#000000", "#000000", "#000000", "#000000"];
tags.forEach(tag => {
    tagsColor = colorArr[Math.floor(Math.random() * colorArr.length)];
    tag.style.backgroundColor = tagsColor;
});

<!--银白标签云-->
let tags = document.querySelectorAll("#tag_cloud-2 a");
let colorArr = ["#C0C0C0", "#C0C0C0", "#C0C0C0", "#C0C0C0", "#C0C0C0", "#C0C0C0"];
tags.forEach(tag => {
    tagsColor = colorArr[Math.floor(Math.random() * colorArr.length)];
    tag.style.backgroundColor = tagsColor;
});

<!--淡蓝标签云-->
let tags = document.querySelectorAll("#tag_cloud-2 a");
let colorArr = ["#ADD8E6", "#ADD8E6", "#ADD8E6", "#ADD8E6", "#ADD8E6", "#ADD8E6"];
tags.forEach(tag => {
    tagsColor = colorArr[Math.floor(Math.random() * colorArr.length)];
    tag.style.backgroundColor = tagsColor;
});

<!--彩色标签云-->
let tags = document.querySelectorAll("#tag_cloud-2 a");
let colorArr = ["#428BCA", "#AEDCAE", "#ECA9A7", "#DA99FF", "#FFB380", "#D9B999"];
tags.forEach(tag => {
    tagsColor = colorArr[Math.floor(Math.random() * colorArr.length)];
    tag.style.backgroundColor = tagsColor;
});

<!--天蓝标签云-->
let tags = document.querySelectorAll("#tag_cloud-2 a");
let colorArr = ["#00BFFF", "#00BFFF", "#00BFFF", "#00BFFF", "#00BFFF", "#00BFFF"];
tags.forEach(tag => {
    tagsColor = colorArr[Math.floor(Math.random() * colorArr.length)];
    tag.style.backgroundColor = tagsColor;
});

3. 文章尾部添加版权信息

Handsome/post.php<?php echo Content::exportPayForAuthors(); ?><?php endif; ?>中添加以下内容(Handsome8.2.0版本在87行)

<!--版权声明开始-->
<div class="entry-content l-h-2x">
      <div style="border-top: 2px dotted #8e8e8e96;height: 0px;margin: 20px 0px;text-align: center;width: 100%;">
         <span style="background-color: #23b7e5;color: #fff;padding: 6px 10px;position: relative;top: -14px;border-radius: 14px;">END</span>
       </div>
        <div style="padding: 10px;background: rgba(220, 220, 220, 0.22);font-size: 13px;border-left: 3px solid;text-align: left;">
          <span>本文作者:<a href="<?php $this->author->permalink(); ?>" rel="author"> <?php $this->author(); ?></a><br></span>
         <span>文章标题:<a href="<?php $this->permalink() ?>"><?php $this->title() ?></a><br></span>
         <span>本文地址:<a href="<?php $this->permalink() ?>"><?php $this->permalink() ?></a><br></span>
        <span>版权说明:若无注明,本文皆<a href="<?php $this->options->siteUrl(); ?>" target="_blank" data-original-title="<?php $this->options->title() ?>"><?php $this->options->title() ?></a>原创,转载请保留文章出处。</span>
       </div>
  </div>
<!--版权声明结束-->

4. 页脚信息美化(等到备案出来后

删除Handsome/component/footer.php原来的底部版权 ,也就是删除如下代码:

Powered by <a target="_blank" href="http://www.typecho.org">Typecho</a> | Theme by <a target="_blank" href="https://www.ihewro.com/archives/489/">handsome</a>

以及下一行中的,不要删除多了

© <?php echo date("Y"); ?> Copyright

添加以下代码到主题设置->开发者设置->自定义css中:

/*底部页脚*/
.github-badge {
  display: inline-block;
  border-radius: 4px;
  text-shadow: none;
  font-size: 12px;
  color: #fff;
  line-height: 15px;
  background-color: #abbac3;
  margin-bottom: 5px
}

.github-badge .badge-subject {
  display: inline-block;
  background-color: #4d4d4d;
  padding: 4px 4px 4px 6px;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px
}

.github-badge .badge-value {
  display: inline-block;
  padding: 4px 6px 4px 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px
}

.github-badge .bg-blue {
  background-color: #007ec6
}

.github-badge .bg-orange {
  background-color: #ffa500
}

.github-badge .bg-red {
  background-color: #f00
}

.github-badge .bg-green {
  background-color: #3bca6e
}

.github-badge .bg-purple {
  background-color: #ab34e9
}

将下列代码修改后分别填写到 主题设置->开发者设置->博客底部左/右侧信息中即可。

<!-- 博客底部左侧信息 -->
<div class="github-badge">
  <span class="badge-subject">Copyright</span>
  <a href="./" target="_blank">
    <span class="badge-value bg-blue">©2021 Dragon Add</span></a>
</div> | 
<div class="github-badge">
  <span class="badge-subject">XICP备</span>
  <a href="http://beian.miit.gov.cn/" target="_blank">
    <span class="badge-value bg-green">xxxxxxx号-1</span></a>
</div>

[scode type="lblue"]关于左侧信息,请认真阅读代码,自行修改属于自己的内容。[/scode]

<!-- 博客底部右侧信息 -->
<div class="github-badge">
  <span class="badge-subject">Powered by</span>
  <a href="http://www.typecho.org" target="_blank">
    <span class="badge-value bg-blue">Typecho</span></a>
</div> | 
<div class="github-badge">
  <span class="badge-subject">Theme by</span>
  <a href="https://www.ihewro.com/" target="_blank">
    <span class="badge-value bg-orange">Handsome</span></a>
</div>

5. 博主自我介绍打字特效

后台-设置外观-初级设置-博客介绍添加以下代码:

<span class="text-muted text-xs block"><div id="chakhsu"></div> <script> var chakhsu = function (r) {function t() {return b[Math.floor(Math.random() * b.length)]} function e() {return String.fromCharCode(94 * Math.random() + 33)} function n(r) {for (var n = document.createDocumentFragment(), i = 0; r > i; i++) { var l = document.createElement("span"); l.textContent = e(), l.style.color = t(), n.appendChild(l) } return n}function i() {var t = o[c.skillI]; c.step ? c.step-- : (c.step = g, c.prefixP < l.length ? (c.prefixP >= 0 && (c.text += l[c.prefixP]), c.prefixP++) : "forward" === c.direction ? c.skillP < t.length ? (c.text += t[c.skillP], c.skillP++) : c.delay ? c.delay-- : (c.direction = "backward", c.delay = a) : c.skillP > 0 ? (c.text = c.text.slice(0, -1), c.skillP--) : (c.skillI = (c.skillI + 1) % o.length, c.direction = "forward")), r.textContent = c.text, r.appendChild(n(c.prefixP < l.length ? Math.min(s, s + c.prefixP) : Math.min(s, t.length - c.skillP))), setTimeout(i, d) } /*以下内容自定义修改*/ var l = "❤", o = ["Hello World"].map(function (r) {return r + ""}), a = 2, g = 1, s = 5, d = 75, b = ["rgb(110,64,170)", "rgb(150,61,179)", "rgb(191,60,175)", "rgb(228,65,157)", "rgb(254,75,131)", "rgb(255,94,99)", "rgb(255,120,71)", "rgb(251,150,51)", "rgb(226,183,47)", "rgb(198,214,60)", "rgb(175,240,91)", "rgb(127,246,88)", "rgb(82,246,103)", "rgb(48,239,130)", "rgb(29,223,163)", "rgb(26,199,194)", "rgb(35,171,216)", "rgb(54,140,225)", "rgb(76,110,219)", "rgb(96,84,200)"], c = {text: "", prefixP: -s, skillI: 0, skillP: 0, direction: "forward", delay: a, step: g}; i() }; chakhsu(document.getElementById('chakhsu')); </script> </span> </span>

[scode type="yellow"]此特效在本站某些页面出现诡异效果,因此已停用。目前未在其他同类博客发现问题,各位客官自行尝试,发现问题就把代码删去即可,问题不大,多尝试。还挺好看的。[/scode]

6. 搞怪可爱网页标题

代码直接放在后台-更改外观-设置外观-开发者设置-自定义JavaScript,代码如下:

//搞怪网页动态标题
var OriginTitile = document.title,
titleTime;
document.addEventListener("visibilitychange",
function() {
    if (document.hidden) {
        document.title = ">﹏<呜呜呜~";
        clearTimeout(titleTime)
    } else {
        document.title = "(^∀^●)好耶! " ;
        titleTime = setTimeout(function() {
            document.title = OriginTitile
        },
        2000)
    }
});

7. 评论回复打字特效

首先下载JS文件,然后把它放在网站目录某个地方。

可参考博主放在主题js文件里面:/usr/themes/handsome/assets/js/

[button color="success" icon="glyphicon glyphicon-send" url="http://47.106.106.169:8888/down/juQ54SCc4a9s"]点击下载[/button]

然后将以下代码放在后台-更改外观-设置外观-开发者设置-自定义输出body 尾部的HTML代码,代码如下:

<!--文本框打字机特效-->
<script type="text/javascript" src="https://dragonadd.xyz/usr/themes/handsome/assets/js/commentTyping.js"></script>

以上代码不出意外(博主不跑路)的话,可以应用于其他主题,复制至对应的component/footer.php,在 </body> 下面一行添加即可。

基础代码为:

<!--打字特效-->
<script type="text/javascript" src="JS文件路径"></script>

8. 底部左侧显示建站时间

将下列代码修改后分别填写到 主题设置->开发者设置->博客底部左侧信息中即可。

<!--建站时间-->
<span>
    | 本站已经运行了
</span>
<span id="span_dt_dt">
</span>
<script>
    /*建站时间*/
    function show_date_time() {
        window.setTimeout("show_date_time()", 1e3);
        var BirthDay = new Date("2021/07/25 18:30:41"),
        today = new Date,
        timeold = today.getTime() - BirthDay.getTime(),
        msPerDay = 864e5,
        e_daysold = timeold / msPerDay,
        daysold = Math.floor(e_daysold),
        e_hrsold = 24 * (e_daysold - daysold),
        hrsold = Math.floor(e_hrsold),
        e_minsold = 60 * (e_hrsold - hrsold),
        minsold = Math.floor(60 * (e_hrsold - hrsold)),
        seconds = Math.floor(60 * (e_minsold - minsold));
        span_dt_dt.innerHTML = daysold + "天" + hrsold + "小时" + minsold + "分" + seconds + "秒";
    }
    show_date_time();
</script>

[scode type="lblue"]本站弃用原因,好长,影响观感。自行尝试使用[/scode]

9. 浏览器图标favicon.ico添加方法

1). 制作favicon.ico图片文件

先准备一张长宽比为1:1的图片文件,然后将图片上传到第三方ico生成网站。

favicon.ico图片在线生成网站

生成后的.ico后缀图片会自动下载到本地,将其更名为favicon.ico。

2). 将favicon.ico上传到Typecho主题目录下

使用FTP或其他方式,将刚刚生成的favicon.ico图片上传到你的Typecho主题目录下:

上传目录:/usr/themes/你的主题名字/

3). 找到主题文件目录下的header.php,在 link 标签或者head/title标签下,网上各个教程不一,本站handsome8.2.0是把34行代替为以下代码,请自行摸索,谨记先全部备份再修改。

<link rel="shortcut icon" href="/usr/themes/handsome/favicon.ico" type="image/x-icon" />

10. handsome全局彩色设置

1、复制下面的代码添加到开发者设置 - 自定义输出body尾部的HTML代码

<script>
/*五颜六色字体*/
function sjcolor(){
    var colorArr = ["#428BCA", "#AEDCAE", "#ECA9A7", "#DA99FF", "#FFB380", "#D9B999", "#3bca6e", "#f23232", "#834e75", "#23b7e5", "#f60"];
    /*设置颜色*/
    document.querySelectorAll("#aside > div > div.navi-wrap.scroll-y.scroll-hide > nav > ul > li > a > span").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#aside > div > div.navi-wrap.scroll-y.scroll-hide > nav > ul > li > ul > li > a > span").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#aside > div > div.navi-wrap.scroll-y.scroll-hide > nav > ul > li > ul > li > a").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#aside > div > div.navi-wrap.scroll-y.scroll-hide > nav > ul > li > ul > li > a > b").forEach(e => {
        e.style.backgroundColor = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*左侧导航字体颜色*/
    document.querySelectorAll("#post-panel > div > div > div > div.panel-body > div.nav-tabs-alt > ul > li > a").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#post-panel > div > div > div > div").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#post-panel > div.blog-post > div > div.post-meta.wrapper-lg > h2 > a").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*首页面板*/
    document.querySelectorAll("#small_widgets > h1").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#small_widgets > ul").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#content > main > div > div > div > h1").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*博客名称*/
    document.querySelectorAll(".m-l-xs").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*文章标题*/
    document.querySelectorAll("#search_input").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*搜索框*/
    document.querySelectorAll("#content > main > div > div > h1").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#content > main > div > div > div > div a >span").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*友情链接*/
    document.querySelectorAll("#header > div > ul > li > div > div > div > div > div > div > a > span > span").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*工具导航*/
    document.querySelectorAll("#tag_toc > h5").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*文章目录*/
    document.querySelectorAll("#content > main > div > div > header > h1").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#typedWord").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*签名标题*/
    document.querySelectorAll("#tag_cloud-2 h5").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#tag_cloud-2 a").forEach(e => {
        e.style.backgroundColor = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*标签颜色*/
    document.querySelectorAll("#blog_info > ul > li > span.badge.pull-right").forEach(e => {
        e.style.backgroundColor = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*博客信息*/
    document.querySelectorAll("#blog_info > h5").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#widget-tabs-4-hots > h5").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#widget-tabs-4-hots > ul > li > div > h4 > a").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#widget-tabs-4-hots > ul > li > div > small > span > span.meta-value").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*热门文章颜色*/
    document.querySelectorAll("#widget-tabs-4-comments > h5").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#widget-tabs-4-comments > ul > li > div > div > a").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#widget-tabs-4-comments > ul > li > div > small > span").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*最新评论颜色*/
    document.querySelectorAll("#widget-tabs-4-random > h5").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#widget-tabs-4-random > ul > li > div > h4 > a").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    document.querySelectorAll("#widget-tabs-4-random > ul > li > div > small > span > span.meta-value").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*随机文章颜色*/
    document.querySelectorAll("#sidebar > section.widget.widget_categories.wrapper-md.clear.visible-lg.visible-md > h5").forEach(e => {
        e.style.color = colorArr[Math.floor(Math.random() * colorArr.length)];
    });
    /*手机阅读标题*/
}sjcolor();
</script>

2、复制下面的css代码添加到主题 --> 设置外观 --> 开发者设置 --> 自定义CSS

/* 右侧列表导航栏图标颜色 */
.sidebar-icon svg.feather.feather-thumbs-up{color: #ff0000;}
.sidebar-icon svg.feather.feather-message-square{color:#495dc3;}
.sidebar-icon svg.feather.feather-gift{color:#52DE97;}

3、在后台 - PJAX- PJAX回调函数中输入以下代码。这样打开其他网页时,不需要重新加载就能生效了

 /*全局彩色*/
sjcolor();

保存完毕,刷新前台就可以看到效果了。

本步骤学习参考:https://cry33.com/archives/495.html

11. 使用宝塔网站加速插件来加速网站速度,优化网站

参见Zeruns's Blog的文章:点击学习

12. Typecho加密文章显示标题和文章加密方法

打开Typecho网站文件:var/Widget/Abstract/Contents.php

Typecho版本1.1(17.10.30)在744行左右,找到:

$value['title'] = _t('此内容被密码保护');

改成下面的这个,也就是注释注释掉这行就好了。

/** $value['title'] = _t('此内容被密码保护'); */

你会注释,用//单行注释符注释掉也可以,不会的直接复制我的也行。

参考来源:Typecho加密文章显示标题和文章加密方法

13. Typecho支持Emoji表情(采用utf8mb4编码)

1. 进入数据库的phpMyAdmin管理

在宝塔面板中打开phpMyAdmin,复制网址另外页面进入以下画面:

进入后,根据以上图片在SQL中输入以下命令并执行:

alter table typecho_comments convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_contents convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_fields convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_metas convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_options convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_relationships convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_users convert to character set utf8mb4 collate utf8mb4_general_ci;

注意:

  1. 如果无法打开phpMyAdmin链接,可能是服务器和宝塔面板没有放行888端口,请自行百度放行端口。
  2. phpMyAdmin的密码是你的数据库密码。自行翻阅笔记。

2. 服务器文件配置

在宝塔文件的网站(自己网站名)的根目录中,有一个config.inc.php的文件,点击编辑。

在大概60行的位置修改为'charset' => 'utf8mb4',示例如图:

值得注意的是,在此文件中可以知道你的数据库名字和密码,也就是user和password。

以上参考见:Typecho支持Emoji表情(采用utf8mb4编码)_Mr.zwX-程序员资料

14. Typecho下实现一键评论打卡功能

参考见:https://www.xcnte.com/archives/527/

15. 给博客添加节日灯笼

在handsome主题后台的自定义输出body 尾部的HTML代码中添加以下代码:

<!--灯笼挂件-->
<div class="deng-box1"> <div class="deng"> <div class="xian"></div> <div class="deng-a"> <div class="deng-b"><div class="deng-t">元旦</div></div> </div> <div class="shui shui-a"><div class="shui-c"></div><div class="shui-b"></div></div> </div> </div>
<div class="deng-box2"> <div class="deng"> <div class="xian"></div> <div class="deng-a"> <div class="deng-b"><div class="deng-t">快乐</div></div> </div> <div class="shui shui-a"><div class="shui-c"></div><div class="shui-b"></div></div> </div> </div>

接着在自定义css中添加如下代码:

/*灯笼挂件*/
.deng-box1 {
    pointer-events: none;
}

.deng-a {
    width: 100px;
    height: 90px;
    background: #d8000f;
    background: rgba(216, 0, 15, 0.1);
    margin: 12px 8px 8px 10px;
    border-radius: 50% 50%;
    border: 2px solid #dc8f03;
}

.deng-b {
    width: 45px;
    height: 90px;
    background: #d8000f;
    background: rgba(216, 0, 15, 0.1);
    margin: -2px 8px 8px 26px;
    border-radius: 50% 50%;
    border: 2px solid #dc8f03;
}

.deng-t {
    font-family: 华文行楷,Arial,Lucida Grande,Tahoma,sans-serif;
    font-size: 1.5rem;
    color: #ffa500;
    font-weight: bold;
    line-height: 42px;
    text-align: center;
    width: 25px;
    margin: 0 auto;
}

.shui-a {
    position: relative;
    width: 5px;
    height: 20px;
    margin: -5px 0 0 59px;
    -webkit-animation: swing 4s infinite ease-in-out;
    -webkit-transform-origin: 50% -45px;
    background: #ffa500;
    border-radius: 0 0 5px 5px;
}

.shui-c {
    position: absolute;
    top: 18px;
    left: -2px;
    width: 10px;
    height: 35px;
    background: #ffa500;
    border-radius: 0 0 0 5px;
}

.shui-b {
    position: absolute;
    top: 14px;
    left: -2px;
    width: 10px;
    height: 10px;
    background: #dc8f03;
    border-radius: 50%;
}

.deng::after {
    position: absolute;
    bottom: -7px;
    left: 10px;
    height: 12px;
    width: 60px;
    content: " ";
    display: block;
    margin-left: 20px;
    border-radius: 0 0 5px 5px;
    border: solid 1px #dc8f03;
    background: #ffa500;
    background: linear-gradient(to right, #dc8f03, #ffa500, #dc8f03, #ffa500, #dc8f03);
}

.deng-box2 {
    position: fixed;
    top: -30px;
    right: 5px;
    z-index: 9999;
    pointer-events: none;
}

.deng-box2 .deng {
    position: relative;
    width: 120px;
    height: 90px;
    margin: 50px;
    background: #d8000f;
    background: rgba(216, 0, 15, 0.8);
    border-radius: 50% 50%;
    -webkit-transform-origin: 50% -100px;
    -webkit-animation: swing 5s infinite ease-in-out;
    box-shadow: -5px 5px 30px 4px rgba(252, 144, 61, 1);
}

.deng-box2 {
    pointer-events: none;
}

@-moz-keyframes swing {
    0% {
        -moz-transform: rotate(-10deg)
    }

    50% {
        -moz-transform: rotate(10deg)
    }
 
    100% {
        -moz-transform: rotate(-10deg)
    }
}

@-webkit-keyframes swing {
    0% {
        -webkit-transform: rotate(-10deg)
    }

    50% {
        -webkit-transform: rotate(10deg)
    }

    100% {
        -webkit-transform: rotate(-10deg)
    }
}

该网页效果于手机端显示会被占据大概四分之一的顶部空间,一定程度上影响阅读体验,若需要去除,可以在自定义css中追加如下代码:

@media (max-width: 900px){.deng-box1{display:none;}}
@media (max-width: 900px){.deng-box2{display:none;}}

若您需要修改灯笼的位置,可在css代码中找到.deng-box1,调整left的px值,找到.deng-box2,调整right的px值。

此效果借鉴于“深度博客的《给你的typecho添加灯笼挂件》”。

16. 美化后台登录页面

登录网站管理面板,进入网站根目录,找到/admin/login.php,将里面的内容进行全部替换:

<?php
include 'common.php';
if ($user->hasLogin()) {
    $response->redirect($options->adminUrl);
}
$rememberName = htmlspecialchars(Typecho_Cookie::get('__typecho_remember_name'));
Typecho_Cookie::delete('__typecho_remember_name');
$bodyClass = 'body-100';
include 'header.php';
?>
<!--canvas画布-->
<script src="https://cdn.jsdelivr.net/gh/jquery/jquery@3.2.1/dist/jquery.min.js"></script>
<canvas id="c" width="300" height="150"></canvas> 
<div class="typecho-login-wrap">
    <div class="typecho-login">
        <h1><a href="https://dragonadd.xyz/" class="i-logo">Dragon Add</a></h1>
        <form action="<?php $options->loginAction(); ?>" method="post" name="login" role="form">
            <p>
                <label for="name" class="sr-only"><?php _e('用户名'); ?></label>
                <input type="text" id="name" name="name" value="<?php echo $rememberName; ?>" placeholder="<?php _e('用户名'); ?>" class="text-l w-100" autofocus />
            </p>
            <p>
                <label for="password" class="sr-only"><?php _e('密码'); ?></label>
                <input type="password" id="password" name="password" class="text-l w-100" placeholder="<?php _e('密码'); ?>" />
            </p>
            <p class="submit">
                <button type="submit" class="btn btn-l w-100 primary"><?php _e('登录'); ?></button>
                <input type="hidden" name="referer" value="<?php echo htmlspecialchars($request->get('referer')); ?>" />
            </p>
            <p><label for="remember"><input type="checkbox" name="remember" class="checkbox" value="1" id="remember" /> <?php _e('下次自动登录'); ?></label></p>
        </form>
        
        <p class="more-link">
            <a href="<?php $options->siteUrl(); ?>"><?php _e('返回首页'); ?></a>
            <?php if($options->allowRegister): ?>
            &bull;
            <a href="<?php $options->registerUrl(); ?>"><?php _e('用户注册'); ?></a>
            <?php endif; ?>
        </p>
    </div>
</div>
<!--登录样式-->
<style> .typecho-login-wrap { position: fixed; }
.typecho-login {display: block;padding: 10px 20px;margin-top: 20vh;border-radius: 15px;-moz-box-shadow: 0 0 10px #ffffff;box-shadow: 0 0 15px 0px #868686;background: rgb(255 255 255 / 60%);}
.i-logo{display: unset;background: unset;filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=55);opacity: 0.55;}
input{outline: 0;}
input:focus {box-shadow: 0 0 0 0.2rem rgb(167 191 232 / 25%);}
body {display: flex;align-items: center;justify-content: center;}
</style>
<script>
$(document).ready(function () {
    $('#name').focus();
});
</script>
<?php include 'footer.php'; ?>
<!--canvas背景动画js-->
<script type="text/javascript">        
$(document).ready(function() {var canvas = document.getElementById("c");var ctx = canvas.getContext("2d");var c = $("#c");var w,h;var pi = Math.PI;var all_attribute = {num:100,/*个数*/start_probability:0.1,/*如果数量小于num,有这些几率添加一个新的*/radius_min:1,/*初始半径最小值*/radius_max:2,/* 初始半径最大值*/radius_add_min:.3,/* 半径增加最小值*/radius_add_max:.5,/*半径增加最大值*/opacity_min:0.3,/*初始透明度最小值*/opacity_max:0.5,/*初始透明度最大值*/opacity_prev_min:.003,/* 透明度递减值最小值*/opacity_prev_max:.005,/* 透明度递减值最大值*/light_min:40,/* 颜色亮度最小值*/light_max:70,/* 颜色亮度最大值*/};var style_color = find_random(0,360);var all_element =[];window_resize();function start(){window.requestAnimationFrame(start);style_color+=.1;ctx.fillStyle = 'hsl('+style_color+',100%,97%)';ctx.fillRect(0, 0, w, h);if (all_element.length < all_attribute.num && Math.random() < all_attribute.start_probability){all_element.push(new ready_run);}all_element.map(function(line) {line.to_step();})};function ready_run(){this.to_reset();};ready_run.prototype = {to_reset:function(){var t = this;t.x = find_random(0,w);t.y = find_random(0,h);t.radius = find_random(all_attribute.radius_min,all_attribute.radius_max);t.radius_change = find_random(all_attribute.radius_add_min,all_attribute.radius_add_max);t.opacity = find_random(all_attribute.opacity_min,all_attribute.opacity_max);t.opacity_change = find_random(all_attribute.opacity_prev_min,all_attribute.opacity_prev_max);t.light = find_random(all_attribute.light_min,all_attribute.light_max);t.color = 'hsl('+style_color+',100%,'+t.light+'%)';},to_step:function(){var t = this;t.opacity -= t.opacity_change;t.radius += t.radius_change;if(t.opacity <= 0){t.to_reset();return false;}ctx.fillStyle = t.color;ctx.globalAlpha = t.opacity;ctx.beginPath();ctx.arc(t.x,t.y,t.radius,0,2*pi,true);ctx.closePath();ctx.fill();ctx.globalAlpha = 1;}};function window_resize(){w = window.innerWidth;h = window.innerHeight;canvas.width = w;canvas.height = h;};$(window).resize(function(){window_resize();});function find_random(num_one,num_two){return Math.random()*(num_two-num_one)+num_one;};(function() {var lastTime = 0;var vendors = ['webkit', 'moz'];for(var xx = 0; xx < vendors.length && !window.requestAnimationFrame; ++xx) {window.requestAnimationFrame = window[vendors[xx] + 'RequestAnimationFrame'];window.cancelAnimationFrame = window[vendors[xx] + 'CancelAnimationFrame'] ||window[vendors[xx] + 'CancelRequestAnimationFrame'];}if (!window.requestAnimationFrame) {window.requestAnimationFrame = function(callback, element) {var currTime = new Date().getTime();var timeToCall = Math.max(0, 16.7 - (currTime - lastTime));var id = window.setTimeout(function() {callback(currTime + timeToCall);}, timeToCall);lastTime = currTime + timeToCall;return id;};}if (!window.cancelAnimationFrame) {window.cancelAnimationFrame = function(id) {clearTimeout(id);};}}());start();});
</script>

注意:粘贴以上代码后,记得修改第16行的相关信息。改为自己家博客的。

以防以后不想要这个画布模板了,这里备份源代码:

<?php
include 'common.php';

if ($user->hasLogin()) {
    $response->redirect($options->adminUrl);
}
$rememberName = htmlspecialchars(Typecho_Cookie::get('__typecho_remember_name'));
Typecho_Cookie::delete('__typecho_remember_name');

$bodyClass = 'body-100';

include 'header.php';
?>
<div class="typecho-login-wrap">
    <div class="typecho-login">
        <h1><a href="http://typecho.org" class="i-logo">Typecho</a></h1>
        <form action="<?php $options->loginAction(); ?>" method="post" name="login" role="form">
            <p>
                <label for="name" class="sr-only"><?php _e('用户名'); ?></label>
                <input type="text" id="name" name="name" value="<?php echo $rememberName; ?>" placeholder="<?php _e('用户名'); ?>" class="text-l w-100" autofocus />
            </p>
            <p>
                <label for="password" class="sr-only"><?php _e('密码'); ?></label>
                <input type="password" id="password" name="password" class="text-l w-100" placeholder="<?php _e('密码'); ?>" />
            </p>
            <p class="submit">
                <button type="submit" class="btn btn-l w-100 primary"><?php _e('登录'); ?></button>
                <input type="hidden" name="referer" value="<?php echo htmlspecialchars($request->get('referer')); ?>" />
            </p>
            <p>
                <label for="remember"><input type="checkbox" name="remember" class="checkbox" value="1" id="remember" /> <?php _e('下次自动登录'); ?></label>
            </p>
        </form>
        
        <p class="more-link">
            <a href="<?php $options->siteUrl(); ?>"><?php _e('返回首页'); ?></a>
            <?php if($options->allowRegister): ?>
            &bull;
            <a href="<?php $options->registerUrl(); ?>"><?php _e('用户注册'); ?></a>
            <?php endif; ?>
        </p>
    </div>
</div>
<?php 
include 'common-js.php';
?>
<script>
$(document).ready(function () {
    $('#name').focus();
});
</script>
<?php
include 'footer.php';
?>

此步骤借鉴于:Typecho|Handsome 主题的一些修改教程

17. 添加下雪效果,圣诞雪花动态特效

参考:https://limbopro.com/archives/Falling-snowflakes.html

18. 新年倒计时

如果你是handsome主题,请在首页列表最前方广告位处添加以下代码,年份和结束日期记得自己改。

<style>
  .gn_box{     border: none;     border-radius: 15px; }  
  .gn_box {
         padding: 10px 14px;     margin: 10px;     margin-bottom: 20px;     text-align: center;     background-color: #fff; }
    #t_d{     color: #982585;     font-size: 18px; }  
    #t_h{     color: #8f79c1;     font-size: 18px; }  
    #t_m{     color: #65b4b5;     font-size: 18px; }  
    #t_s{     color: #83caa3;     font-size: 18px; }  
</style>  
<div class="gn_box">      
    <h1><font color=#E80017>
        2</font><font color=#D1002E>
        0</font><font color=#BA0045>
        2</font><font color=#A3005C>
        4</font><font  color=#8C0073>
        年</font><font color=#75008A>-</font> <font color=#5E00A1>
        新</font><font color=#4700B8>
        年</font><font color=#3000CF>
        倒</font><font color=#1900E6>
        计</font><font color=#0200FD>
        时</font></h1><center> <div id="CountMsg" class="HotDate"><span id="t_d">
        天</span><span id="t_h">
        时</span><span id="t_m">
        分</span><span id="t_s">
        秒</span></div></center> 
    <script type="text/javascript">  
    function getRTime() {
            var EndTime = new Date('2024/01/01 00:00:00');
            var NowTime = new Date();
            var t = EndTime.getTime() - NowTime.getTime();
            var d = Math.floor(t / 1000 / 60 / 60 / 24);
            var h = Math.floor(t / 1000 / 60 / 60 % 24);
            var m = Math.floor(t / 1000 / 60 % 60);
            var s = Math.floor(t / 1000 % 60);
            var day = document.getElementById("t_d");
    if (day != null) {
        day.innerHTML = d + " 天";        }
        var hour = document.getElementById("t_h");
    if (hour != null) {
        hour.innerHTML = h + " 时";       }
        var min = document.getElementById("t_m");
    if (min != null) {
        min.innerHTML = m + " 分";        }
        var sec = document.getElementById("t_s");
    if (sec != null) {
        sec.innerHTML = s + " 秒";     } 
        }
    setInterval(getRTime, 1000);
    </script>
</div>
]]>
0 https://blog.dragonadd.xyz/archives/19/#comments https://blog.dragonadd.xyz/feed/tag/%E6%80%BB%E7%BB%93/
利用超级管理员账号骇进别人的电信WiFi https://blog.dragonadd.xyz/archives/18/ https://blog.dragonadd.xyz/archives/18/ Fri, 30 Jul 2021 21:59:00 +0800 dragonadd [scode type="red"]技术无罪。遵守法律。做好人,行好事。[/scode]

[scode type="yellow"]首先保证你已经连上别人的WiFi,并且此WiFi网络是归属于电信。[/scode]

[scode type="lblue"]好久没有用过“WiFi万能钥匙”了,其实是好久没有用过安卓机了。[/scode]

以前小的时候,手机卡的流量根本不够用,必须要连WiFi才能维持上网需求。但是呢,爸爸妈妈并不愿意给家里拉宽带,是为了不让玩手机影响学习

故,那时候用过很多很多的WiFi破解软件,每天放学回家除了其他日常冲浪,其他就是钻研如何破解邻居家/店里的wifi并把它牢牢掌控在自己手里。

想来也搞笑。有一次连上邻居家的WiFi,然后蒙中了它的管理员密码,进去之后,就把人家的管理员密码给改了。当时群里“墨鱼”大佬笑我:“小白你这是小偷拿到正确钥匙进了别人的家还把人家的锁给换了。”过后好几天,邻居可能发现无法登陆后台,于是重置了路由器,改掉了WiFi密码,并且把管理员默认密码也改掉了。导致一度没有WiFi可用。(被墨鱼嘲笑了一个晚上)

这里分享一个学到的奇怪门径。


一、

[scode type="green"]正如一开始就提到的,你已经连上别人的WiFi,并且WiFi网络是归属于电信。[/scode]

这表明你已经和它在同一局域网了。

然后打开浏览器,在搜索框输入以下IP地址。

192.168.1.1

回车确认,你会进入以下界面。

界面

这里首先给出了用户名为useradmin。在我理解这是普通管理员的意思。但我们既然要骇进去,当然不是以普通管理员的身份啦。

useradmin改为telecomadmin,密码为:

nE7jA%5m

回车确认。我们就进入以下界面。

后台

这里就是电信天翼网关的后台管理地址。在这里可以了解到很多信息。比如它的光猫路由器的密码:

密码

二、

先前提到useradmin这个账号,这个普通用户账号的密码是出厂自带随机编成的,一般会贴在光猫的底部,当主人忘记自己设置的密码后,可以重置光猫恢复出厂设置,然后就可以用出厂密码登陆后台。

对于外来人来说,光猫在人家家里,我们无法查看那个密码。现在既然我们进来了,那就把这个我们并不知道的密码改为自己知道的!

在已经打开的后台,我们点击管理,然后就进入到了用户管理

用户管理

在这里,我们可以了解到:

[scode type="yellow"]访问路由器通过两个用户名来控制: telecomadmin和useradmin。
用户名"telecomadmin"可以不受限制地浏览和修改路由器。
用户名"useradmin"可以访问路由器,浏览配置和统计表。[/scode]

笑拉,“不受限制地浏览和修改路由器”是不是很刺激?这波,这波是直捣黄龙!

我们把这个useradmin账号直接改新密码,根本不用输入旧密码!

改为自己的密码,记下来,然后点击保存。然后退出浏览器。

三、

重新打开浏览器、输入192.168.1.1 ,用户名为useradmin,密码就填自己刚才保存的密码。回车确认,进入另一个后台!

后台2

在这里,你可以了解到一些有趣的信息。你可以拉黑某一设备,可以定时开关WiFi,还可以知道它的另外一个WiFi的密码呢!

自己探索吧!


[scode type="lblue"]值得注意的是,在第二步修改useradmin的密码的时候,博主心想,能不能把useradmin改为telecomadmin,这样会不会把这个超级管理员的密码改掉??博主当时没有尝试,有时间会试试呢[/scode]

写于7.30。

08.12 ,更新:

电信、联通、移动宽带运营商光猫常用默认超级管理员密码:

电信光猫超密 用户名:telecomadmin 密码:nE7jA%5m

联通光猫超密 用户名:CUAdmin 密码:CUAdmin

移动光猫超密 用户名:CMCCAdmin 密码:aDm8H%MdA

移动HG8321R光猫超密 用户名:telecomadmin 密码:admintelecom

]]>
0 https://blog.dragonadd.xyz/archives/18/#comments https://blog.dragonadd.xyz/feed/tag/%E6%80%BB%E7%BB%93/
冲浪指南 https://blog.dragonadd.xyz/archives/15/ https://blog.dragonadd.xyz/archives/15/ Mon, 26 Jul 2021 22:37:00 +0800 dragonadd 此文为博主冲浪网站保存自留地。(并非分享


看视频网站

[link]
[item name="剧迷TV" link="https://gimytv.com/" desc="各种剧,最近画质不太好" /]

[item name="奈飞影视" link="https://www.nfmovies.com/" desc="除国内外影剧,也有奈飞" /]

[item name="低端影视" link="https://ddrk.me/" desc="超清在线视频站" /]

[item name="片库网" link="https://www.btnull.org/" desc="电影、剧集、动漫高清下载" /]

[item name="哔嘀影视" link="https://www.mp4er.cc/" desc="电影下载" /]

[item name="低调看球" link="http://m.didiaokan2018.com/" desc="篮球足球直播" /]
[item name="BD影视" link="https://www.bd2020.com/" desc=“资源相对来说要少一点” /]
[item name="趣玩篮球直播平台" link="http://www.quwantiyu.com/channeltypes/basketball" desc="篮球足球直播" /]
[item name="樱花动漫" link="http://www.yhdm.so/" desc="已被污染" /]

[item name="努努影院" link="https://www.nunuyy.top/" desc="唔" /]

[item name="......" link="http://example.com" desc="链接描述" /]

[/link]


认真学习

[link]

[item name="搜狗翻译" link="https://fanyi.sogou.com/text" desc="不会英语,别来GDUFS" /]

[item name="Chinaplus" link="http://chinaplus.cri.cn/podcast/list/38" desc="来听听英语" /]

[item name="Npr" link="https://www.npr.org/" desc="学英语" /]
[item name="个人简历网" link="http://www.gerenjianli.com/" desc="个人简历免费下载" /]

[item name="共产党员网" link="https://www.12371.cn/" desc="心中有党,成绩理想" /]
[item name="开始学习HTML" link="https://developer.mozilla.org/zh-CN/docs/Learn/HTML/Introduction_to_HTML/Getting_started" desc="HTML的乐趣无穷无尽" /]
[item name="我要自学网" link="https://www.51zxw.net/" desc="自学能养活自己" /]

[item name="如何成为一名黑客" link="https://translations.readthedocs.io/en/latest/hacker_howto.html" desc="不是怎样学,而是你要去学什么" /]

[item name="菜鸟教程" link="https://www.runoob.com/" desc="熬过了菜鸟,就能成为老鹰" /]

[item name="古诗文网" link="https://www.gushiwen.cn/" desc="古诗古词,中华文化的瑰宝" /]

[item name="励志一生" link="https://www.lz13.cn/" desc="热血鸡汤文" /]

[item name="Regdict" link="https://app.nestattacked.com/regdict/" desc="正则查单词或者词根查单词" /]

[item name="广外vpn" link="https://webvpn.gdufs.edu.cn/" desc="正如标题描述" /]

[item name="......" link="http://example.com" desc="链接描述" /]

[item name="......" link="http://example.com" desc="链接描述" /]

[/link]


搜书网站

[link]

[item name="ZLibrary" link="https://hk1lib.org/" desc="教材、电子书搜索界的yyds" /]

[item name="Library Genesis" link="http://www.libgen.is/" desc="一个国外的搜书网站,网站内有大量的国内外书籍资源" /]

[item name="鸠摩搜索 - 文档搜索引擎" link="https://www.jiumodiary.com/" desc="可以搜索一些文献书本" /]

[item name="瑞文文摘" link="https://www.rwtext.com/" desc="一些习题答案可以在这里找" /]

[item name="LoreFree" link="https://ebook2.lorefree.com/" desc="基于区块链的电子书下载网站站" /]

[item name="天涯在线书库" link="https://www.tianyabook.com/" desc="国内小说文学下载" /]

[item name="八零电子书" link="https://www.txt80.com/" desc="国内小说下载" /]

[item name="......" link="http://example.com" desc="链接描述" /]

[/link]


技术网站

[link]

[item name="站长之家-工具" link="http://tool.chinaz.com/" desc="站长之家,你的家" /]

[item name="软件管家" link="https://mp.weixin.qq.com/mp/homepage?__biz=MzA4MjU4MTg2Ng==&hid=18&sn=2dccf8223c0bac443c2b8f260731278a&scene=18" desc="软件管家提供免费电脑软件服务" /]

[item name="免费PPT模板下载网站" link="https://www.ypppt.com/ " desc="偶尔应急用" /]

[item name="segmentfault" link="https://segmentfault.com/" desc="很好的程序猿平台" /]

[item name="美国号码运营商及归属地在线查询" link="https://www.revealname.com/" desc="FBI,oppen the door !" /]

[item name="电话短信轰炸" link="https://www.duanxinhongzhaji.com/free/" desc="didididididididi~" /]

[item name="博客园" link="https://www.cnblogs.com/ " desc="cnblogs" /]

[item name="在线屏幕检测" link="https://screen.bmcx.com/?utm_source=wechat_session&utm_medium=social&utm_oi=987874341434036224#welcome" desc="听说你买屏幕了?" /]

[item name="网页彩色文字工具" link="https://www.sioe.cn/yingyong/" desc="" /]

[item name="二级域名主机" link="http://www.zhaodh.top" desc="在?来嫖" /]

[item name="IOS每日限免" link="https://www.macsofter.com/category/ios-free" desc="在?来嫖?" /]

[item name="CONVERTWORLD.COM" link="https://www.convertworld.com/zh-hant/bandwidth/megabit-per-second.html" desc="换算工具" /]

[item name="TYPECHO WIKI" link="https://www.typecho.wiki/" desc="从其他方面了解typecho" /]

[item name="极速刷步网" link="http://www.yiran520.com/" desc="自备小米账号且绑定微信" /]

[item name="Qwerty-Learner" link="https://qwerty-learner.vercel.app/" desc="来边打字边学单词" /]

[item name="哔哩哔哩动画解析下载" link="https://xbeibeix.com/bilibili/" desc="状态:可用" /]

[item name="Twitter视频下载" link="http://twittervideodownloader.com/" desc="状态:可用" /]

[item name="Twitter视频下载2" link="https://twsaver.com/zh/" desc="状态:可用" /]

[item name="launchaco" link="https://www.launchaco.com/logo" desc="免费在线制作logo" /]

[item name="制作ico图标" link="https://www.bitbug.net/" desc="在线ico图标转换工具" /]

[item name="免费HEIC/HEIF图片无损转换" link="https://www.strerr.com/heif.html" desc="无水印" /]

[item name="YouTube下载" link="https://9convert.com/en103" desc="状态:可用" /]

[item name="在线语音合成" link="https://www.zaixianai.cn/voiceCompose" desc="链接描述" /]

[item name="脚本之家" link="https://www.jb51.net/" desc="专业致力于WEB开发资讯和技术交流的专业网站" /]

[item name="IP查询" link="http://ip111.cn/" desc="全方位IP查询" /]

[item name="在线订阅转换工具" link="https://sub.usuc.cc/" desc="api" /]

[item name="改图鸭" link="https://www.gaituya.com/" desc="在线ps" /]

[item name="奈斯搜索" link="https://www.niceso.fun/" desc="阿里云盘资源搜索引擎" /]

[item name="16personalities" link="https://www.16personalities.com/ch" desc="16型人格测试" /]

[item name="apple id 共享" link="https://iios.ga/" desc="apple id 共享" /]

[item name="格式转换网站" link="https://www.aconvert.com/" desc="在线转换各类PDF,文档,电子书,图像,图标,视频,音频和压缩文件" /]

[item name="免费在线电子书转换器" link="https://www.ebook2edit.com/zh" desc="免费试用7天??" /]

[item name="......" link="http://example.com" desc="链接描述" /]

[/link]


娱乐网站

[link]

[item name="鬼刀漫画" link="https://www.u17.com/comic/68471.html" desc="来看WLOP的漫画" /]

[item name="Dcard" link="https://www.dcard.tw/f " desc="走进大学生" /]

[item name="Epic游戏商城" link="https://www.epicgames.com/store/zh-CN/" desc="白嫖使我快乐" /]

[item name="神凑轻小说" link="http://m.shencou.com" desc="可以来看刀剑神域" /]

[item name="GalWorld" link="https://acgngame.net/" desc="封禁" /]

[item name="Awesome Wallpaper" link="https://wallhaven.cc/" desc="最大的壁纸网站" /]

[item name="来下棋" link="https://itmastergame.com/gameList/xiangQi/v1118/web-mobile/index.html" desc="来下棋" /]

[item name="来学单词" link="https://www.powerlanguage.co.uk/wordle/" desc="五个单词" /]

[item name="......" link="http://example.com" desc="链接描述" /]

[item name="......" link="http://example.com" desc="链接描述" /]

[/link]


高质量博客

[link]

[item name="毒奶" link="https://limbopro.xyz/" desc="limbopro" /]

[item name="Sabrina的万事屋" link="https://merlinblog.xyz/" desc="已被污染" /]

[item name="秦枫鸢梦" link="https://blog.zwying.com/" desc="是个大佬" /]

[item name="卤蛋实验室" link="https://www.cnblogs.com/web-scraper/" desc="看懂门槛极低" /]

[item name="stormzhang" link="https://segmentfault.com/u/stormzhang" desc="一个论坛" /]

[item name="Xcnte' s Blog" link="https://www.xcnte.com" desc="外面的掌声越热烈越危险" /]

[item name="个站商店" link="https://storeweb.cn/" desc="博客收录网站" /]

[item name="B 站 1080P 视频嵌入 Notion" link="https://busiyi.notion.site/B-1080P-Notion-88315db1b76f4e72a610e4e692cd8f96" desc="不能4K也太沮丧了" /]

[item name="......" link="http://example.com" desc="链接描述" /]

[item name="......" link="http://example.com" desc="链接描述" /]

[/link]


之所以有此文,是因为经常电脑冲浪,遇见一些好的网站,然后收藏到 Google Chrome。但由于电脑是 Windows,手机是iPhone,Google Chrome 并不会同步。

于是,之前整理了一下收藏栏,把它总结到了 iCloud 备忘录上,如此手机也可以复制粘贴访问了。但是这其中总是存在同步不协调的问题。有一次在其他的地方,需要在朋友的电脑上前往收藏的网站,就需要把手机备忘录的网站复制发到朋友微信,然后粘贴至浏览器访问。(为什么不直接打网站域名呢!为什么呢?你说为什么呢?因为懒啊!!而且有一些又很长!)

得益于有了自己的域名,有了自己的博客,可以在任意一具备浏览器的设备上访问所保存的内容。

乐哉。

]]>
0 https://blog.dragonadd.xyz/archives/15/#comments https://blog.dragonadd.xyz/feed/tag/%E6%80%BB%E7%BB%93/
我的常用Hexo指令 https://blog.dragonadd.xyz/archives/14/ https://blog.dragonadd.xyz/archives/14/ Mon, 26 Jul 2021 22:36:00 +0800 dragonadd 既然是基于Hexo搭建的博客,那么就必须要用到Hexo的指令啦!

以下是分享我认识的以及我常用的指令


hexo 命令:

hexo new "postName" #新建文章

hexo new page "pageName" #新建页面

hexo generate #生成静态页面至public目录

hexo server #开启预览访问端口(默认端口4000,'ctrl + c'关闭server)

hexo deploy #部署到GitHub

hexo help # 查看帮助

hexo version #查看Hexo的版本

缩写:

hexo n = hexo new

hexo g = hexo generate

hexo s = hexo server

hexo d = hexo deploy

在Hexo里面:

  • 复制,ctrl+ins
  • 粘贴,shift+ins

我的常用Hexo指令

新开文章:

hexo new "我的常用Hexo指令"

一般发布文章或者修改博客后需要这些操作:清除缓存>生成静态文件>启动服务器,测试没问题后再部署。因此我们可以输入以下命令:

hexo clean && hexo g && hexo s

最后部署到GitHub:

hexo d 

最后,还有一个指令也用得很多,我懒得打都是直接复制,那就是在Next主题下,给文章添加"阅读全文"的指令:

<!-- more -->

把它插入你文章指定的位置,那么指令前面的文字就会显示在文章预览那里,可以起到前言的作用,读者点阅读全文进入文章主页就可以对整篇文章进行阅读了。

————

]]>
0 https://blog.dragonadd.xyz/archives/14/#comments https://blog.dragonadd.xyz/feed/tag/%E6%80%BB%E7%BB%93/
关于原博客next主题的优化与定制(不再更新) https://blog.dragonadd.xyz/archives/12/ https://blog.dragonadd.xyz/archives/12/ Mon, 26 Jul 2021 22:16:00 +0800 dragonadd [scode type="red"]注意,此文适合版本8.0以上Next主题,不再更新,博主已弃坑,由 Hexo 转为 Typcho[/scode]

这篇文章并不是教程分享向的博文,写得不是很详细,文字排版也没有完全美化、没有参考图片。对于找到这里的你,我要说声抱歉。

本文纯是博主对于自己博客美化所作的步骤顺序,出发点是为了在优化过程中若出现错误可以撤销上一步的操作。博主自己每做一步就hexo clean && hexo g && hexo s本地预览一下,如果没有出现错误就上传,否则就撤销操作。

所以我做了什么?

1.我做了tag ,我创建了关于,分类.

2.我修改了社交

打开主题配置文件,找到social字段,修改

3.添加了本地搜索

  • 首先输入指令下载:

npm install hexo-generator-searchdb --save

  • 修改站点配置文件,添加代码:
search:
  path: search.xml
  field: post
  format: html
  limit: 10000
  • 然后打开主题配置文件 ,搜索 local_search,修改 enable 为 true

4. 添加红心特效

如何创建一个JS文件(建立一个txt文件更改后缀名为js,建立完成.),用记事本打开.swig文件。(OS:记事本真是永远的神)。修改了,好像没有作用。(我学会了,我懒得改序号了,教程见第28点

5. 显示busuanzi博客访客/访问次数统计/Github标识

Github标识:在 GitHub Corners 选择自己喜欢的按钮样式并复制代码,将https://your-url换成自己的链接,将改好的代码粘贴到themes/next/layout/_layout.swig文件中

下面一行。(OS:但我在文件中没有找到我的GitHub,我之前用了其他方法,这个方法是后来总结。)

6. 隐藏网页底部 powered By Hexo / 强力驱动

打开 themes/next/layout/_partials/footer.swig,找到:div class="powered-by,把这段代码首尾分别加上:,或者直接删除.

(后续我了解到,最新版next可以在next文件中的其他文件打开开关就行)

7. 显示当前浏览进度

打开主题配置文件,找到back2top:,把 scrollpercent: 的false 改为 true

相关代码解释:

back2top:
 enable: true # 开启 back to top 按钮
 # Back to top in sidebar.
 sidebar: true # true 表示在侧边栏显示,false则在侧下角
 # Scroll percent label in b2t button.
 scrollpercent: true # 开启进度百分比

8. 打开阅读进度条

打开主题配置文件,找到reading_progress:,把false 改为 true

相关代码解释:

# Reading progress bar
reading_progress:
enable: true # 开启进度条
# Available values: top | bottom
position: bottom # 设置位置 可以为 top | bottom
color: "#37c6c0" # 进度条颜色 16进制RGB
height: 3px # 高度

9. 文章置顶功能

1. 卸载原插件和安装置顶插件,执行下面两行命令:

npm uninstall hexo-generator-index --save
npm install hexo-generator-index-pin-top –save

2. 然后在需要置顶的文章的Front-matter中加上top: true

3. 设置置顶标志:

打开:/themes/next/layout/_macro目录下的post.swig文件,定位到<div class="post-meta">标签下,插入如下代码:

{% if post.top %}
    <i class="fa fa-thumb-tack"></i>
    <font color="RED">置顶</font>
    <span class="post-meta-divider">|</span>
{% endif %}
3.1 如果你置顶了多篇,怎么控制顺序呢?设置top的值(大的在前面),比如:
title: a
top: 1

10. 文章字数统计和阅读时长估计

根目录输入指令下载插件:

npm install hexo-symbols-count-time 

11. 头像放左右Pisces或Gemini方案,

打开themes/next/下的_config.yml,查找sidebar,将想要的方案打开。

(在这里出现了一些问题。不知所以然就改好了。但是我被惊出了一身汗,因为我没有备份配置文件就立刻改了,而且我还是在改了12点后预览才发现无法配置。于是我在11、12两点反复改动。我下次改一次之前必备份一次,并且只改一点,绝不多改。太可怕了。后果很严重,严重到关站大吉。)

12. 显示版权信息

打开themes/next/下的_config.yml,查找creative_commons, 将post的false改为true即可显示版权信息

13. 为博客加上看板娘

Git输入下方代码:

npm install -save hexo-helper-live2d

然后在根目录的配置文件 _config.yml中添加参数:

live2d:
  enable: true
  scriptFrom: local
  pluginRootPath: live2dw/
  pluginJsPath: lib/
  pluginModelPath: assets/
  tagMode: false
  log: false
  model:
    use: live2d-widget-model-<你喜欢的模型名字>
  display:
    position: right
    width: 150
    height: 300
  mobile:
show: true

预览图
在站点目录下建文件夹live2d_models,再在live2d_models下建文件夹<你喜欢的模型名字>,
再在<你喜欢的模型名字>下建json文件,文件名为:<你喜欢的模型名字>.model.json
安装模型。在命令行(即Git Bash)运行以下命令即可:
npm install --save live2d-widget-model-<你喜欢的模型名字>
OS:1. 在写名字的时候,记得把<>删掉

想看预览图来这里看:https://blog.csdn.net/as480133937/article/details/100138838 (自己找到那个为博客添加妹子的位置。)

14. 使博客底部的爱心跳动

打开主题配置文件,搜索animated:,把false改为true

15. tag 样式# 改为带图标

打开主题配置文件,找到tag_icon:,把false改为true

16. 文章结束语标语

打开 themes/next/layout/_macro/post.swig 文件,找到文章结束语标语END POST BODY位置,复制以下代码,将其插入。

<div>
    {% if not is_index %}
        <div style="text-align:center;color: #ccc;font-size:14px;">
            ----- 本文结束 <i class="fa fa-heart-o"></i> 感谢您的阅读 -----
            </div>
    {% endif %}
</div>

17. 主题样式调色,

打开\themes\next\source\css\_variables\base.styl,找到colors for use across theme.,可以参考以下一位博主的修改,该主题为紫色。

// Colors
// colors for use across theme.
// --------------------------------------------------
$whitesmoke   = #daa5ff; // 菜单栏当前菜单,归档线条
$gainsboro    = #e3c6f0; // 菜单栏头像边框,分割线。单行代码块
$gray-lighter = #cccedd; // 菜单栏子标题
$grey-light   = #ab2acc; // 菜单栏文章计数器
$grey         = #6a2dbb; // 时间节点
$grey-dark    = #67439a; // 菜单栏博主卡片区文字【描述|日志|分类|标签】
$grey-dim     = #9059bf;
$black-light  = #3d155a;  // 文章正文颜色
$black-dim    = #5b2293;
$black-deep   = #6947bb;  // 菜单栏背景

补充: 以上#数字字母为RGB的16进制

18. 背景动画,

Canvas-nest风格、JavaScript 3D library风格 、Canvas-ribbon风格。

我终于知道这是怎么弄的!!网上很多教程都没有更新。我走了很多弯路。原来我所用的next版本都没有下载这些动画包。需要自己下载。链接就在注释中``# Dependencies 项后面。

例如我下载第一种,即选择Canvas-nest风格,在主目录执行:

git clone https://github.com/theme-next/theme-next-canvas-nest themes/next/source/lib/canvas-nest

然后打开themes/next/下的_config.yml文件,搜索Canvas-nest,将canvas_nest的中enable值改为true即可。如果没有这段代码,需要自行添加:

# Canvas-nest
# Dependencies: https://github.com/theme-next/theme-next-canvas-nest
canvas_nest:
  enable: true
  onmobile: true # display on mobile or not
  color: "0,0,255" # RGB values, use ',' to separate
  opacity: 0.5 # the opacity of line: 0~1
  zIndex: -1 # z-index property of the background
  count: 99 # the number of lines

同理,其他两种动画包也要自行下载,下载指令为:
Git clone 动画链接 themes/next/source/lib/(动画链接后面next-后面的名称)
请自行领悟参考我下载Canvas-nest风格的指令
(至2021.7.17,我的博客用了两个动画,nest和ribbon

19. 去掉文章目录标题的自动编号。

我们自己写文章的时候一般都会自己带上标题编号,但是默认的主题会给我们带上编号,很是别扭,如何去掉呢?

在主题配置文件中找到toc属性,将其中的number属性设置成false,如下:

toc:
  enable: true
  number: false
  wrap: false

20. 加头像

把你要加的头像复制粘贴到\themes\next\source\images文件下,名称为avatar.gif(后缀可为jpg,自己变通),在主题配置文件_config.yml里面找到avatar,以下:

avatar:
  url: /images/avatar.jpg  # 设置头像资源的位置
  rounded: true            # 开启圆形头像
  opacity: 1               # 不透明的比例:0就是完全透明
  rotated: false           # 不开启旋转 

21. 不蒜子统计与live2D看板娘冲突问题

使用next新的主题时,在hexo中添加live2D看板娘后next原生自带的不蒜子统计会失效,解决方法:

1). 卸载live2d可以解决问题:

npm uninstall --save hexo-helper-live2d

2). 看板娘怎么可以卸载????? 绝对不能接受!!!

a. 关闭next原生不蒜子

打开主题配置文件,搜索busuanzi_count:,把false改为true

b. 修复主页总数统计

在Hexo根目录/themes/next/layout/_partials/文件夹中修改 footer.swig,在最后一行前加入代码:

<script async src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>
 <span><br></span>         
 
           <span class="post-meta-item-icon">
                 <i class="fa fa-group"></i>
           </span>
           <span>总访客&nbsp<span id="busuanzi_value_site_uv"></span>&nbsp人</span>
        <span class="post-meta-divider">|</span>
           <span class="post-meta-item-icon">
                 <i class="fa fa-eye"></i>
           </span>
        <span>访问总量&nbsp<span id="busuanzi_value_site_pv"></span>&nbsp次</span>
        {{- next_inject('footer') }}
c. 修复文章统计

开启 主题配置文件 - valine 评论中的 visitor 开关来替代不蒜子的统计功能。

22. 修改文字模板

在根目录下,找到scaffolds/post.md,将其修改为你需要的模式,新建文章就是模板的形式了,可以参考我的:

title: {{ title }}
date: {{ date }}
categories: 
tags: 
top: 

23. 增加赞赏功能

在微信、支付宝中拿到赞赏码、付款码图片,放入themes/next/source/images文件夹中。比如我的是 wechatpay.jpg和alipay.jpg,修改主题配置文件,找到reward_settings:,打开enbale,填写comment,在下面的reward:,填写图片路径。

如果你不喜欢Donate、 Wechat Pay 和 Alipay这样的字眼,可以在 themes/next/languages/zh-CN.yml 中自行翻译。

24. 啊啊啊啊啊,我终于搞定圆角和阴影了

1) 圆角

首先把主题配置文件,取消 variables.styl 的注释(即去掉#),然后在根目录source创立_data文件夹,然后创建记事本variables.styl,在里面输入以下代码:

// 圆角设置
$border-radius-inner     = 20px 20px 20px 20px;
$border-radius           = 20px;

2) 阴影

在根目录source的 _data文件夹创建记事本style.styl,在里面输入以下代码:

 // 主页文章添加阴影效果
.post {
   margin-top: 60px;
   padding: 20px;
   margin-bottom: 60px;
   -webkit-box-shadow: 0 0 5px rgba(120, 128, 114, 1.5);
   -moz-box-shadow: 0 0 5px rgba(202, 203, 204, .5);
}

25. 添加背景图片

把想设置的背景放入/themes/next/source/images中,命名为background.jpg。在根目录的source文件夹下的_data/styles.styl,输入以下代码:

body {
              background:url(/images/background.jpg);
              background-repeat: no-repeat;
    background-attachment:fixed;
    background-position:100% 100%;
}

(记得在主题_config.yml文件中打开styles.styl的注释。

26. 博客内容透明化

在根目录的source文件夹下的_data/styles.styl,输入以下代码:

//博客内容透明化
//文章内容的透明度设置
.content-wrap {
  opacity: 0.9;
}

//侧边框的透明度设置
.sidebar {
  opacity: 0.9;
}

//菜单栏的透明度设置
.header-inner {
  background: rgba(255,255,255,0.9);
}

//搜索框(local-search)的透明度设置
.popup {
  opacity: 0.9;
}

27. 修改文章链接样式为蓝色高亮显示

找到文件 themes\next\source\css\_common\components\post\post.styl,在末尾添加如下css样式,:

// 文章内链接文本样式
.post-body p a{
  color: #0593d3;
  border-bottom: none;
  border-bottom: 1px solid #0593d3;
  &:hover {
    color: #fc6423;
    border-bottom: none;
    border-bottom: 1px solid #fc6423;
  }
}

28. 啊啊啊啊我终于学会了添加鼠标点击特效了!!

1) 第一个是烟花特效:

a. 首先创建文件,写代码

themes/next/source/js/src (如果没有src那就去创建一个啊!)里面建一个叫fireworks.js的文件,然后在里面写代码如下:

"use strict";function updateCoords(e){pointerX=(e.clientX||e.touches[0].clientX)-canvasEl.getBoundingClientRect().left,pointerY=e.clientY||e.touches[0].clientY-canvasEl.getBoundingClientRect().top}function setParticuleDirection(e){var t=anime.random(0,360)*Math.PI/180,a=anime.random(50,180),n=[-1,1][anime.random(0,1)]*a;return{x:e.x+n*Math.cos(t),y:e.y+n*Math.sin(t)}}function createParticule(e,t){var a={};return a.x=e,a.y=t,a.color=colors[anime.random(0,colors.length-1)],a.radius=anime.random(16,32),a.endPos=setParticuleDirection(a),a.draw=function(){ctx.beginPath(),ctx.arc(a.x,a.y,a.radius,0,2*Math.PI,!0),ctx.fillStyle=a.color,ctx.fill()},a}function createCircle(e,t){var a={};return a.x=e,a.y=t,a.color="#F00",a.radius=0.1,a.alpha=0.5,a.lineWidth=6,a.draw=function(){ctx.globalAlpha=a.alpha,ctx.beginPath(),ctx.arc(a.x,a.y,a.radius,0,2*Math.PI,!0),ctx.lineWidth=a.lineWidth,ctx.strokeStyle=a.color,ctx.stroke(),ctx.globalAlpha=1},a}function renderParticule(e){for(var t=0;t<e.animatables.length;t++){e.animatables[t].target.draw()}}function animateParticules(e,t){for(var a=createCircle(e,t),n=[],i=0;i<numberOfParticules;i++){n.push(createParticule(e,t))}anime.timeline().add({targets:n,x:function(e){return e.endPos.x},y:function(e){return e.endPos.y},radius:0.1,duration:anime.random(1200,1800),easing:"easeOutExpo",update:renderParticule}).add({targets:a,radius:anime.random(80,160),lineWidth:0,alpha:{value:0,easing:"linear",duration:anime.random(600,800)},duration:anime.random(1200,1800),easing:"easeOutExpo",update:renderParticule,offset:0})}function debounce(e,t){var a;return function(){var n=this,i=arguments;clearTimeout(a),a=setTimeout(function(){e.apply(n,i)},t)}}var canvasEl=document.querySelector(".fireworks");if(canvasEl){var ctx=canvasEl.getContext("2d"),numberOfParticules=30,pointerX=0,pointerY=0,tap="mousedown",colors=["#FF1461","#18FF92","#5A87FF","#FBF38C"],setCanvasSize=debounce(function(){canvasEl.width=2*window.innerWidth,canvasEl.height=2*window.innerHeight,canvasEl.style.width=window.innerWidth+"px",canvasEl.style.height=window.innerHeight+"px",canvasEl.getContext("2d").scale(2,2)},500),render=anime({duration:1/0,update:function(){ctx.clearRect(0,0,canvasEl.width,canvasEl.height)}});document.addEventListener(tap,function(e){"sidebar"!==e.target.id&&"toggle-sidebar"!==e.target.id&&"A"!==e.target.nodeName&&"IMG"!==e.target.nodeName&&(render.play(),updateCoords(e),animateParticules(pointerX,pointerY))},!1),setCanvasSize(),window.addEventListener("resize",setCanvasSize,!1)}"use strict";function updateCoords(e){pointerX=(e.clientX||e.touches[0].clientX)-canvasEl.getBoundingClientRect().left,pointerY=e.clientY||e.touches[0].clientY-canvasEl.getBoundingClientRect().top}function setParticuleDirection(e){var t=anime.random(0,360)*Math.PI/180,a=anime.random(50,180),n=[-1,1][anime.random(0,1)]*a;return{x:e.x+n*Math.cos(t),y:e.y+n*Math.sin(t)}}function createParticule(e,t){var a={};return a.x=e,a.y=t,a.color=colors[anime.random(0,colors.length-1)],a.radius=anime.random(16,32),a.endPos=setParticuleDirection(a),a.draw=function(){ctx.beginPath(),ctx.arc(a.x,a.y,a.radius,0,2*Math.PI,!0),ctx.fillStyle=a.color,ctx.fill()},a}function createCircle(e,t){var a={};return a.x=e,a.y=t,a.color="#F00",a.radius=0.1,a.alpha=0.5,a.lineWidth=6,a.draw=function(){ctx.globalAlpha=a.alpha,ctx.beginPath(),ctx.arc(a.x,a.y,a.radius,0,2*Math.PI,!0),ctx.lineWidth=a.lineWidth,ctx.strokeStyle=a.color,ctx.stroke(),ctx.globalAlpha=1},a}function renderParticule(e){for(var t=0;t<e.animatables.length;t++){e.animatables[t].target.draw()}}function animateParticules(e,t){for(var a=createCircle(e,t),n=[],i=0;i<numberOfParticules;i++){n.push(createParticule(e,t))}anime.timeline().add({targets:n,x:function(e){return e.endPos.x},y:function(e){return e.endPos.y},radius:0.1,duration:anime.random(1200,1800),easing:"easeOutExpo",update:renderParticule}).add({targets:a,radius:anime.random(80,160),lineWidth:0,alpha:{value:0,easing:"linear",duration:anime.random(600,800)},duration:anime.random(1200,1800),easing:"easeOutExpo",update:renderParticule,offset:0})}function debounce(e,t){var a;return function(){var n=this,i=arguments;clearTimeout(a),a=setTimeout(function(){e.apply(n,i)},t)}}var canvasEl=document.querySelector(".fireworks");if(canvasEl){var ctx=canvasEl.getContext("2d"),numberOfParticules=30,pointerX=0,pointerY=0,tap="mousedown",colors=["#FF1461","#18FF92","#5A87FF","#FBF38C"],setCanvasSize=debounce(function(){canvasEl.width=2*window.innerWidth,canvasEl.height=2*window.innerHeight,canvasEl.style.width=window.innerWidth+"px",canvasEl.style.height=window.innerHeight+"px",canvasEl.getContext("2d").scale(2,2)},500),render=anime({duration:1/0,update:function(){ctx.clearRect(0,0,canvasEl.width,canvasEl.height)}});document.addEventListener(tap,function(e){"sidebar"!==e.target.id&&"toggle-sidebar"!==e.target.id&&"A"!==e.target.nodeName&&"IMG"!==e.target.nodeName&&(render.play(),updateCoords(e),animateParticules(pointerX,pointerY))},!1),setCanvasSize(),window.addEventListener("resize",setCanvasSize,!1)};
b. 继续写代码

然后打开themes/next/layout/_layout.swig,在上面写下如下代码:

{% if theme.fireworks %}

  <canvas class="fireworks" style="position: fixed;left: 0;top: 0;z-index: 1; pointer-events: none;" ></canvas> 

   <script type="text/javascript" src="//cdn.bootcss.com/animejs/2.2.0/anime.min.js"></script>

   <script type="text/javascript" src="/js/src/fireworks.js"></script>

{% endif %}
c. 最后打开开关

打开主题配置文件,在里面最后写下:

# Fireworks
fireworks: true

2) 另外一个爱心特效:

a. 首先创建文件,写代码

/themes/next/source/js/src下新建文件 clicklove.js ,接着把下面的代码拷贝粘贴到 clicklove.js 文件中:

!function(e,t,a){function n(){c(".heart{width: 10px;height: 10px;position: fixed;background: #f00;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);}.heart:after,.heart:before{content: '';width: inherit;height: inherit;background: inherit;border-radius: 50%;-webkit-border-radius: 50%;-moz-border-radius: 50%;position: fixed;}.heart:after{top: -5px;}.heart:before{left: -5px;}"),o(),r()}function r(){for(var e=0;e<d.length;e++)d[e].alpha<=0?(t.body.removeChild(d[e].el),d.splice(e,1)):(d[e].y--,d[e].scale+=.004,d[e].alpha-=.013,d[e].el.style.cssText="left:"+d[e].x+"px;top:"+d[e].y+"px;opacity:"+d[e].alpha+";transform:scale("+d[e].scale+","+d[e].scale+") rotate(45deg);background:"+d[e].color+";z-index:99999");requestAnimationFrame(r)}function o(){var t="function"==typeof e.onclick&&e.onclick;e.onclick=function(e){t&&t(),i(e)}}function i(e){var a=t.createElement("div");a.className="heart",d.push({el:a,x:e.clientX-5,y:e.clientY-5,scale:1,alpha:1,color:s()}),t.body.appendChild(a)}function c(e){var a=t.createElement("style");a.type="text/css";try{a.appendChild(t.createTextNode(e))}catch(t){a.styleSheet.cssText=e}t.getElementsByTagName("head")[0].appendChild(a)}function s(){return"rgb("+~~(255*Math.random())+","+~~(255*Math.random())+","+~~(255*Math.random())+")"}var d=[];e.requestAnimationFrame=function(){return e.requestAnimationFrame||e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame||function(e){setTimeout(e,1e3/60)}}(),n()}(window,document);
b. 添加注释

然后在\themes\next\layout\_layout.swig文件末尾添加:

<!-- 页面点击小红心 -->
<script type="text/javascript" src="/js/src/clicklove.js"></script>

OS: 记住!!!这两种特效可以同时选,如果要只选爱心,要把烟花fireworks的true改为false。

(目前没有做过如何把爱心关掉)

29. 侧边栏推荐阅读

打开 主题配置文件 修改成这样就行了 (links 里面写你想要的链接):

(参考我的)

# Blog rolls
links_settings:
  icon: fa fa-link
  title: 推荐阅读
  # Available values: block | inline
  layout: block

links:
  提问的智慧: https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way/blob/main/README-zh_CN.md

31. 关于主页分页问题

等到我文章足够多的时候来看看:

https://blog.csdn.net/weixin_43941364/article/details/104166967

32. 优化文章永久链接为数字编号

1) 在博客根目录(执行hexo命令的地方)安装插件:

npm install hexo-abbrlink –save

2) 打开博客根目录下的站点配置文件_config.yml,修改如下配置:

#permalink: :year/:month/:day/:title/
#permalink_defaults:
permalink: posts/:abbrlink/
abbrlink:
  alg: crc32 #support crc16(default) and crc32
  rep: dec   #support dec(default) and hex
  • 不同算法和进制生成不同的格式,以下为说明:
crc16 & hex
https://post.zz173.com/posts/66c8.html

crc16 & dec
https://post.zz173.com/posts/65535.html
 
crc32 & hex
https://post.zz173.com/posts/8ddf18fb.html

crc32 & dec
https://post.zz173.com/posts/1690090958.html

3) 使用hexo clean && hexo g重新生成博客,该插件会在每篇文章的开头增加内容:

abbrlink: (随机生成你选择的格式)

这个字符串就是这篇文章的唯一标识,无论修改标题还是发布文章都不会改变。

33. 主动被谷歌搜索引擎收录

我终于搞定了。在我拥有自己的域名后。

看篇文章吧。这位博主写得真的太棒了。《Hexo 博客主流搜索引擎收录详细指南》

1) 首先安装插件:

npm install hexo-generator-sitemap --save

安装插件以后,执行 hexo g 命令,即可在 public 文件夹下找到新生成的 sitemap.xml 文件。

2) 验证域名

登陆 Google Search Console 可以看到有两种资源类型,因为现在我已经有自己的域名了,是没有任何前缀的裸域名,所以我选择「网域验证」。(还没有自己的域名的,很抱歉,建议继续谷歌其他的教程。

进行「网域验证」,则需要通过 DNS 记录来验证域名所有权。复制这一步中出现的 TXT 记录值,然后进到域名解析服务商的管理界面,比如我的是阿里云云解析DNS/域名解析/解析设置,添加记录—记录类型为TXT,主机记录为@,解析线路为境外。添加解析成功后,回到Google Search Console,点击「验证」按钮,即可完成验证。

3) 提交站点地图

验证域名所有权之后,进入 GSC 后台管理界面,输入 sitemap 地址并点击提交即可(参考我的https://自己的域名/sitemap.xml)。谷歌的收录是比较快速的,两天左右就能够在谷歌通过 site:博客网址 的方式检索到收录结果了。

34. 我成功把博客部署到 Coding上,可以不用买域名。

35. ...(未完待续)


99. 警醒自己

“博客的意义还是在于不断创作内容,而不是折腾博客框架与配置。”

那些我在学习过程中遇到的开拓者

Yiwei Zhang的博客

小丁的博客

Han' s Blog

ConstOwn的博客

小沃博客

vic博客

林杉博客

......

......

]]>
0 https://blog.dragonadd.xyz/archives/12/#comments https://blog.dragonadd.xyz/feed/tag/%E6%80%BB%E7%BB%93/
如何对网页进行假修改以达到欺骗的目的。 https://blog.dragonadd.xyz/archives/11/ https://blog.dragonadd.xyz/archives/11/ Mon, 26 Jul 2021 22:09:00 +0800 dragonadd 技术无罪。遵守法律。做好人,行好事。

申明:

本文从公众号“卤蛋实验室”的一篇文章《造谣成本有多低?一行代码就可以截图造假》进行总结步骤。


步骤:

首先打开网页控制台。

找到console这个栏。

然后输入代码:

document.body.contentEditable='true'

回车确认。(代码机翻:内容可编辑=真)

出现 true 表示设置成功。

那么可以自由编辑网页了。

注意,这个方法仅仅是表面编辑,相当于单机画面,无法点击链接。


正如卤蛋实验室所言:

  1. 聊天记录类的截屏,我们要警惕那种一屏就把事情的前因后果讲清楚的截屏,人是一种很喜欢说废话的动物,短短的一页截屏就把起因经过高潮结果讲清楚,太难了;
  2. 新闻类截图,要注意媒体方的信誉,比如说微博上就有一些无良媒体,翻译国外新闻时大量夹杂私货,截图各种断章取义,所以这些媒体商的新闻传播时,要多问一个为什么;
  3. 造假只需要一个操作,辟谣就得花非常大的精力去找证据找信源去论证。即使最后找到事实,但是热点已过,大家又去吃别的瓜了,事实是什么我不管,情绪先宣泄了再说。

人要用立体的思维去思考问题。

不要盲目从众

]]>
0 https://blog.dragonadd.xyz/archives/11/#comments https://blog.dragonadd.xyz/feed/tag/%E6%80%BB%E7%BB%93/
零基础学习爬虫工具Web Scraper https://blog.dragonadd.xyz/archives/10/ https://blog.dragonadd.xyz/archives/10/ Mon, 26 Jul 2021 22:05:00 +0800 dragonadd 最近看着教科书(大学计算机基础)学习了爬虫工具Web Scraper的使用。

一个轻量的数据爬虫利器。

Web Scraper插件下载。(引用别人的微云链接)

安装教程。

引用别人对它的评价:“Web Scraper 的优点就是对新手友好,在最初抓取数据时,把底层的编程知识和网页知识都屏蔽了,可以非常快的入门,只需要鼠标点选几下,几分钟就可以搭建一个自定义的爬虫。”

(学到一半,发觉这个挺有用,对于想要爬取其他网站的数据应该有帮助,比如淘宝、亚马逊、知乎等等。)

(但是又想到,这对着每一个网页都要爬取,是不是很耗费电和流量?)

学完基础部分之后,上网查了查,网上的教程要比书本丰富得多。下面列几个收藏的链接:

来自同csdn的大佬分享

这是公众号@卤蛋实验室的分享


(后续会总结自己的教程在这里,也有可能不总结了hhh

(主要是因为上面分享的链接总结的太到位了,鄙人是总结分享属实小巫见大巫了

]]>
0 https://blog.dragonadd.xyz/archives/10/#comments https://blog.dragonadd.xyz/feed/tag/%E6%80%BB%E7%BB%93/
基于Hexo + Github Pages 免费搭建博客 https://blog.dragonadd.xyz/archives/6/ https://blog.dragonadd.xyz/archives/6/ Mon, 26 Jul 2021 12:09:00 +0800 dragonadd

title: 基于Hexo + Github Pages 免费搭建博客
category: 博客
tags:

  • Hexo
  • 博客
    abbrlink: 4022353000
    date: 2021-07-19 13:42:57

"当你不知道该写什么的时候就写如何搭建博客"

前言:博客有非常多的第三方平台,比较早的有博客园、CSDN,现有简书、掘金、知乎专栏 以及微信公众号等等。我们可以直接在上面发表内容,交互人性化,能够被搜索引擎检索到。

但是这总归是别人的平台,写作内容或多或少会受限,这时候就希望能有自己的博客。于是鄙人经过不停谷歌,最终采用了 Hexo + Github Pages 的方式搭建自己的博客。

此方法全过程需要有一定的动手能力与时间、耐心,工具仅仅需要一台能够科学上网的电脑即可。

Github Page 是 Github 提供的一种免费的静态网页托管服务可以用来托管博客、项目官网等静态网页。

参考大佬:

【效率为王】超详细 Hexo + Github Pages 博客搭建教程

超详细Hexo+Github Page搭建技术博客教程:

hexo搭建个人博客

Windows下,Hexo+GitHub搭建博客

从零开始搭建个人博客(超详细)

韦阳的博客

技术拆解官

总结

注意!!此总结并不是教程分享向的博文,写得不是很详细,文字排版也没有完全美化、没有参考图片。强烈建议你参考推荐的大佬链接

一. 先注册一个GitHub账号,并且按照格式要求创建你的仓库。

确保你的仓库是public。

仓库名一定要是:用户名.github.io

二. 下载git。

参考:https://www.huaweicloud.com/articles/a309afc2a9bcf498763ab43770993587.html

三. 配置git与其他工作。

1. 桌面右键打开 Git Bash,分别输入以下指令,将git与GitHub账号绑定。

git config --global user.name "github 用户名"
git config --global user.email "github 注册邮箱" 

2. 接着继续输入以下指令,从而生成 ssh 密钥文件,输入如下命令后直接三次回车即可。

ssh-keygen -t rsa -C "github 注册邮箱" 

3. 在完成2后

会在C盘用户路径生成.ssh的文件,里面有id_rsaid_rsa.pub两个文件,前者是我们私有的,而后者则是对外开放的。用记事本或其他合适的软件打开id_rsa.pub文件,复制里面的密钥

4. 然后打开GitHub——头像——Settings——SSH and GPG Keys页面

创建一个新的 SSH key,填写Title和Key,Title可以随意,而Key的内容则是我们刚才复制的id_rsa.pub中的内容,最后点击Add SSH key即可;

5. 去官网下载最新的稳定版Node.JS.

6. 鼠标右键任意地方,选择Git Bash,使用以下命令安装hexo.

npm install hexo-cli -g
npm install hexo-deployer-git --save

7. 找一个磁盘新建一个文件夹用于存放你的博客,然后进入该文件夹,鼠标右键选择“Git Bash”,分别输入以下命令。

hexo init
npm install
hexo g
hexo s

此时会在本地开启一个http服务,监听4000端口,我们可以在浏览器访问http://127.0.0.1:4000

可以通过键盘快捷键 Ctrl+C 停止服务。

(说一下:笔记本的insert键为粘贴,方向键向上为上一段指令,向下为下一段指令,继续向下为虚无.

8. 在完成第4步的基础上.

首次使用还需要确认并添加主机到本机SSH可信列表。若返回 Hi xxx! You've successfully authenticated, but GitHub does not provide shell access. 内容,则证明添加成功任意位置右键打开Git Bash,输入以下命令,使用私人密钥与GitHub进行认证和通信。

ssh -T git@github.com

9. 打开第7步你创建的博客文件

找到根目录的_config.yml这个文件,用合适的编辑器打开它(记事本等),拉到最后,输入以下格式内容后,保存退出。

type: git
 repository: git@github.com:*********/*********.github.io.git
 branch: master

备注:

(1)hexo的配置文件中任何一个“:”后面都是带一个空格的。

(2)repository后面的内容是你第一步创建库的时候生成的SSH地址。

10. 最后,在你的博客文件位置右键打开Git Bash,输入以下指令。

hexo g
hexo d

大功告成。这时可以登陆Github查看代码是否已经上传到你对应的Repository,在浏览器访问:用户名.github.io就能看到自己的博客了。第一次访问地址可能访问不了,您可以在几分钟后进行访问,一般不超过10分钟。

11. 博客主题美化

基于Hexo搭建的博客有着非常多的主题,在此博主搭配的是Next主题。

在这里分享几个大佬教程。

羽毛工作室教程

超详细,超全面(两万字)

hexo史上最全搭建教程

从零开始搭建个人博客(超详细)

不才陈某技术博客

(下一篇会总结自己博客主题美化过程。)

博客真正的意义在于不断创作内容,而不是折腾博客框架与配置。开始发表你的第一篇博文吧!

答疑

在认真学习网上很多教程的时候,应用在自己的网站上总会出现一些问题。以下是遇到的一些问题。

1. 选择博客Next四个主题那里出现的问题。(在后续主题美化时候我会总结出来)
2. 标题:解决hexo本地与部署不一致问题。

hexo博客在本地可以正常预览,部署到github上后为什么无法显示样式,只有内容呢?

请修改_config.yml的url的值为你的网站主URL(如:https://xxx.github.io)。

如何不在家,也能隨時隨地寫文章?

Hexo 博客备份与恢复

在Github上备份Hexo博客

那些在学习过程中遇到的开拓者

认识我的hexo

易百教程

苦心孤诣

十佳评测

万书涛的个人博客

青山绿水

幼稚园园长

GitHub 汉化插件

...

...

]]>
0 https://blog.dragonadd.xyz/archives/6/#comments https://blog.dragonadd.xyz/feed/tag/%E6%80%BB%E7%BB%93/