登 录
注册
Search
标签搜索
技术教程
typecho
JavaScript
成长日记
Joe主题
Typecho主题
前端学习
网站搭建
typecho函数
影视分享
情感
css
帮助文档
虚拟机
服务器
typecho编辑器
插件
Linux
typecho插件
Windows
Brains - 灵感乌托邦
累计撰写
82
篇文章
累计收到
4,318
条评论
文章首页
分类栏目
技术教程
Typecho
程序代码
学习笔记
Web前端
CSS
JavaScript
其他文章
生活
独立页面
胡言乱语
生活吐槽
友情链接
网站统计
关于博主
自建图床
自建网盘
博主推荐
灵感宝物库
灵感图床库
Code-Server
在线工具箱
TypechoDoc
在线转换
灵感导航页
登录
丨
注册
技术教程
(共
20
篇)
搜索到
20
篇与
技术教程
的结果
『转载』『代码』Typecho自定义调用如热门文章随机文章等
Typecho自定义调用这是面向模板开发者的一篇干货文章,通过学习下面的两个事例,你可以通过调整数据库语句来实现自定义调用文章,如随机文章等。调用热门文章在 functions.php 中加入如下代码class Widget_Post_hot extends Widget_Abstract_Contents { public function __construct($request, $response, $params = NULL) { parent::__construct($request, $response, $params); $this->parameter->setDefault(array('pageSize' => $this->options->commentsListSize, 'parentId' => 0, 'ignoreAuthor' => false)); } public function execute() { $select = $this->select()->from('table.contents') ->where("table.contents.password IS NULL OR table.contents.password = ''") ->where('table.contents.status = ?','publish') ->where('table.contents.created <= ?', time()) ->where('table.contents.type = ?', 'post') ->limit($this->parameter->pageSize) ->order('table.contents.views', Typecho_Db::SORT_DESC); $this->db->fetchAll($select, array($this, 'push')); $db = Typecho_Db::get(); } }前台调用文章<?php $this->widget('Widget_Post_hot@hot', 'pageSize=6')->to($hot); ?> <?php while($hot->next()): ?> 文章链接:<?php $hot->permalink() ?> 文章标题:<?php $hot->title(); ?> 文章缩略图:<?php $hot->fields->img(); ?> <!--等等--> <?php endwhile; ?>这种写法非常原生,使用方法也同typecho调用某分类下的文章语法一致调用指定文章集合在 functions.php 中加入如下代码class Widget_Post_fanjubiao extends Widget_Abstract_Contents { public function __construct($request, $response, $params = NULL) { parent::__construct($request, $response, $params); $this->parameter->setDefault(array('pageSize' => $this->options->commentsListSize, 'parentId' => 0, 'ignoreAuthor' => false)); } public function execute() { $select = $this->select()->from('table.contents') ->where("table.contents.password IS NULL OR table.contents.password = ''") ->where('table.contents.type = ?', 'post') ->limit($this->parameter->pageSize) ->order('table.contents.modified', Typecho_Db::SORT_DESC); if ($this->parameter->fanjubiao) { $fanju=explode(",",$this->parameter->fanjubiao); $select->where('table.contents.cid in ?', $fanju); } $this->db->fetchAll($select, array($this, 'push')); } }前台调用<?php $week1="728,1197";//指定文章id集合多个文章中间用英文逗号隔开 $this->widget('Widget_Post_fanjubiao@fanjubiao', 'fanjubiao='.$week1)->to($fanju); ?> <?php while($fanju->next()): ?> 文章链接:<?php $fanju->permalink() ?> 文章标题:<?php $fanju->title(); ?> <!--等等--> <?php endwhile; ?>总结这样的写法只要懂得数据库语句,就可以定制各种自己所需的调用文章!语法贴近原生且内部支持调用各种函数,比如缩略图函数等等!
2021年10月03日
4,674 阅读
0 评论
9 点赞
2021-10-03
『原创』『教程』在Linux中搭建Windows环境
前言众所周知,搭建网站最好用是Linux系统,但是有一些Windows软件没法运行在Linux服务器上,就很痛苦经过我千辛万苦的寻找,我终于找到可以在Linux上运行的Windows环境了虽然版本比较老,功能也很少,但是能够勉强运行大部分Windows软件,比如QQ机器人、自动运行的小软件等成果展示{tabs}{tabs-pane label="机器人"}{/tabs-pane}{tabs-pane label="爬图"}{/tabs-pane}{/tabs}教程建议安装宝塔面板,如果实在无法安装宝塔面板又想拥有Windows环境的话也可以,但是一定要仔细看教程一、宝塔面板下安装教程1、安装环境 宝塔面板-软件商店中安装 Docker管理器2、开始搭建 (1)第一步安装镜像文件,在终端ssh输入以下指令隐藏内容,请前往内页查看详情(2)第二步打开Docker管理器 点击容器列表-创建容器{tabs}{tabs-pane label="创建容器"}{/tabs-pane}{tabs-pane label="参数解释"}绑定IP: 0.0.0.0 端口映射: 8080 TCP 8080 网页中的端口 TCP不可修改 (需要在服务器放行该端口)目录映射: /home/user 读写 /bot 左边是容器目录(虚拟机目录),右边是当前服务器目录(必须是绝对目录,从根目录开始)环境变量:name=xiaolz #镜像名字,请勿修改 VNC_PASS=12345678 #VNC密码 VNC_SCREEN=1024x768 #VNC屏幕分辨率内存配额: 1000 你的服务器的内存大小,越大越好 CPU权重: 100 填写0-100的数值,越大越好 执行命令: /bin/bash 默认,可不填{/tabs-pane}{/tabs}点击保存即可,不要忘了点击端口映射和目录映射旁边的小加号 3、进入界面 浏览器输入 你服务器的IP地址:8080 假设你的服务器IP为 127.0.0.1 那么你的访问地址就是 127.0.0.1:8080进入后,点击连接,输入密码即可进入Wine系统4、添加文件或软件 打开你 2 — 第二步 中填写的服务器目录,把文件或者软件上传到该目录,然后在虚拟机中直接运行就可以了二、非宝塔面板下安装教程1、安装Docker 如果你没法安装宝塔面板,那就直接在ssh输入以下代码安装Docker安装命令:yum install -y git docker wget也可以使用国内 daocloud 一键安装命令:curl -sSL https://get.daocloud.io/docker | sh启动Dockersystemctl start docker2、下载docker镜像 隐藏内容,请前往内页查看详情3、启动虚拟机 隐藏内容,请前往内页查看详情其中 VNC_PASS 为VNC(远程桌面)连接密码,必填其中 VNC_SCREEN 为VNC(远程桌面)分辨率,必填其中 8080 为VNC(远程桌面)端口其中 /bot/ 为虚拟机在当前服务器映射的目录启动后可以使用 docker ps 查看Docker下运行的目录4、进入界面登录虚拟机远程桌面跟上面一样,直接打开 服务器IP:8080 就行
2021年07月12日
6,514 阅读
19 评论
333 点赞
2021-07-12
『原创』『教程』博客主题修改记录(长期不定时更新)
前言最近一直在摸鱼,也好久没更新博客了,今天登陆上一看,发现博客自动更新出问题了。简单了解了一下,发现是自己改动的东西太多了,服务器本地主题和作者github内容重复了所以只好重新下载作者的主题,再把自己改的加上去,但是突然发现自己已经记不太清楚修改了哪些了所以打算摸鱼写一篇文章来记录自己博客的修改内容,毕竟好记性不如烂笔头嘛修改目录主要修改的内容{timeline}{timeline-item color="#19be6b"} PC端&PE端侧栏自定义 恋爱计时 {/timeline-item}{timeline-item color="#19be6b"} 文章底部端 打赏按钮 {/timeline-item}{timeline-item color="#19be6b"} PC端&PE端 登录按钮 {/timeline-item}{timeline-item color="#19be6b"} PC端 评论弹幕 {/timeline-item}{timeline-item color="#19be6b"} 关于页 我的追番 页面 {/timeline-item}{timeline-item color="#19be6b"} QQ自动跳转浏览器 {/timeline-item}{timeline-item color="#19be6b"} 复制内容时添加转载说明 {/timeline-item}{timeline-item color="#19be6b"} 修改了恋爱计时,将其内嵌到主题了 {/timeline-item}{timeline-item color="#19be6b"} 修改了时光机的发表权限为贡献者以上 {/timeline-item}{timeline-item color="#19be6b"} 修改了评论上传图片的尺寸和清晰度 {/timeline-item}{timeline-item color="#19be6b"} 添加了评论上传图片的审核功能 {/timeline-item}{timeline-item color="#19be6b"} 新增了评论可选小电视和QQ表情包 {/timeline-item}{timeline-item color="#19be6b"} 添加了全站的JS广告及广告位 {/timeline-item}{/timeline}补充教程因为在学习了一些Typecho的后端设置后,觉得直接把所有自定义功能放在一起,然后通过 functions.php 调用更为方便所以就有了以下教程,虽然也是在其他人那里嫖来的,但是根据自己的理解也进行了举一反三,所以在此记录一下(一)引入自定义配置文件1、创建自定义文件首先在主题根目录或者/public目录下创建一个 custom.php 文件(文件名可自定义)内容包含在 <?php ?>内 2、引入配置文件接着在根目录的 functions.php 文件内引入自定义配置文件{tabs}{tabs-pane label="代码"}// 引入自定义设置 require_once("public/custom.php");{/tabs-pane}{tabs-pane label="添加位置"}放在 functions.php 的倒数第二行,只要放在 function themeConfig($form){} 里面就行了。{/tabs-pane}{/tabs}3、添加tabs最后在根目录的 functions.php 文件的外观设置tabs里再加一个自定义配置{tabs}{tabs-pane label="代码"}<li class="item" data-current="joe_custom">自定义设置</li>{/tabs-pane}{tabs-pane label="添加位置"}以Joe主题为例{/tabs-pane}{/tabs}这样就可以引入自定义配置文件了(二)引入自定义JS和CSS文件1、引入到主题框架直接在 Joe/public/include.php 插入以下代码即可<!--引入自定义模块CSS--> <link rel="stylesheet" href="<?php $this->options->themeUrl('assets/css/custom.min.css'); ?>"> <!--引入自定义模块JS--> <script src="<?php $this->options->themeUrl('assets/js/custom.min.js'); ?>"></script>2、添加自定义JS和CSS文件在 Joe/assets/js 文件夹下创建 custom.min.js 在 Joe/assets/css 文件夹下创建 custom.min.css(三)添加后台自定义功能1、PC端&PE端 侧栏自定义{collapse}{collapse-item label="PC端&PE端 侧栏自定义 "}要添加侧栏或者底栏,只需要在 custom.php 文件里添加相应的ID就行了(ID唯一,切勿重复)例如:// 自定义侧边栏模块 - PC $JCustomAside = new Typecho_Widget_Helper_Form_Element_Textarea( 'JCustomAside', NULL, NULL, '自定义侧边栏模块 - PC', '介绍:用于自定义手机端侧边栏模块 <br /> 格式:请填写前端代码,不会写请勿填写 <br /> 例如:您可以在此处添加一个搜索框、时间、宠物、恋爱计时等等' ); $JCustomAside->setAttribute('class', 'joe_content joe_custom'); $form->addInput($JCustomAside);然后再到侧栏文件 public/aside.php 或者底栏文件 public/footer.php 引用就行了如果是PE端的侧栏,需要到 public/header.php 引用{/collapse-item}{/collapse}2、文章底部端 打赏按钮{collapse}{collapse-item label="文章底部端 打赏按钮 "}(1)添加后台开关及配置首先在 custom.php 文件里添加打赏申明,关闭时可以不显示,默认开启隐藏内容,请前往内页查看详情(2)添加打赏功能然后再在 handle.php 里添加打赏功能代码隐藏内容,请前往内页查看详情我这里把css另外放在了 assets/css/custom.css 里了,方面统一管理如果把样式放在了外部,记得引入相关样式表哦,在 public/include.php 引入样式表{/collapse-item}{/collapse}3、PC端&PE端 登录按钮{collapse}{collapse-item label="PC端&PE端 登录按钮 "}PC端登录Joe主题已经添加上了,而且功能比较完善,直接使用就行PE端的直接在 public/header.php 相应位置添加以下代码就行{tabs}{tabs-pane label="代码"}隐藏内容,请前往内页查看详情{/tabs-pane}{tabs-pane label="添加位置"}放在PE侧栏的最底下,当然,你也可以放在其他位置,你开心就好{/tabs-pane}{/tabs}{/collapse-item}{/collapse}4、PC端 评论弹幕弹幕功能的教程已经设置了后台管理功能,所以直接看教程就行传送门 『教程』Typecho的Joe主题添加评论弹幕功能(限PC)5、关于页 我的追番 页面{timeline}{timeline-item color="#ed4014"}2021.6.21 我的追番功能是一款插件,所以等我空了再水一篇文章,先鸽在这里了{/timeline-item}{timeline-item color="#19be6b"}2021.7.5 教程更新了出来了『插件』B站来源的Typecho追番页插件 {/timeline-item}{/timeline}6、QQ自动跳转浏览器同样的,教程已经设置了后台管理,直接按照教程修改即可传送门 『代码』Typecho的Joe主题新增QQ打开自动跳转到浏览器7、复制内容时添加转载说明{collapse}{collapse-item label=" 复制内容时添加转载说明 " }在post.php最下面添加隐藏内容,请前往内页查看详情{/collapse-item}{/collapse}写在后面本文章不定时更新,主要记录博主修改内容,想到的都会尽量写上
2021年06月21日
26,784 阅读
102 评论
364 点赞
『原创』『代码』Joe主题前台登录链接按钮
自从Joe主题升级5.0以后,就没了登录按钮和链接,每次想登录或者进后台都要输入网址,对于我这种经常前后台切换的人来说,炒鸡炒鸡不方便
2021年04月22日
8,634 阅读
144 评论
27 点赞
2021-04-22
『原创』『代码』给网站添加一个复制弹出版权提醒(授人与渔)
前言最近看到其他博客复制时有一个版权提醒,然后查看教程发现他们的Js全是引用别人的我始终认为自己的才是最好的,因为你永远说不准别人的服务器什么时候就停运了,那引用的东西也就没用了所以授人予鱼不如授人与渔,由我来教你制作一个属于自己的弹窗提示成果展示制作教程一、下载Js首先下载一个弹出层组件,然后解压放在网站的根目录下载地址:{dotted startColor="#ff6c6c" endColor="#1989fa"/}隐藏内容,请前往内页查看详情{dotted startColor="#ff6c6c" endColor="#1989fa"/}在这个网站下载弹出层组件,把解压后的 layer 整个文件夹上传至你网站的根目录如果你输入 你的域名/layer/layer.js 能打开的话就成功了,就像下面这样当然你也可以上传到其他目录,但是你引用的时候记得修改地址二、引用Js和设置弹窗在你的网站所有页脚文件 footer.php 插入以下两段代码引用Js的代码:(可以放在 <head> 里也可以放在 <body> 里)<script src="你的域名/layer/layer.js"></script>如果你懒得自己弄Js,也可以引用我的Js,但是能用多久我不能保证 :@(尴尬)<script src="https://www.fuuuy.cn/pages/layer/layer.js"></script>然后再在 <body> 里加入以下代码:<script type="text/javascript"> document.body.oncopy = function() {layer.msg('复制成功,若要转载请务必保留出处!');};</script>保存后去清除缓存就可以了,复制时就会出现版权提示弹窗了Joe主题应用如果你是使用的Joe主题,那你可以直接把两端代码放在 主题设置-设置外观-全局设置自定义添加<head></head>里内容
2021年03月25日
6,271 阅读
44 评论
19 点赞
2021-03-25
『日记』记一次无缝更换根目录和数据库名称
前言因为昨天建了一个 个人主页 ,为了能直接用域名访问主页,所以我就想把博客地址加上 blog 前缀,在后台发现博客根目录和数据库名称还是 52aill 就想着把根目录名称和数据库名称都换成 blog_52aill ,所以就动手更换,全程摸索,弄了很久才弄好,所以记录一下自己学习和摸索的过程。更换过程给博客加一个前缀更换博客根目录更换博客数据库名一、给博客加前缀添加前缀前必须要进行域名的记录添加,我就在我的域名添加了 blog 记录,其他信息填写参考 把手给我,我来教你搭建自己的个人博客(不用带脑)添加好域名记录后就开始给站点加,以宝塔为例,首先在网站管理 添加站点 然后填写新网站 blog.52aill.xyz ,下面的都可以不填,当然也可以直接填写新的根目录和数据库信息完成后就可以去转移根目录文件了,但是我用了另一种方法,直接修改原站点信息。在原站点里添加 blog.52aill.xyz ,然后删除 52aill.xyz 也可以实现更换前缀。二、更换博客根目录如果是新建站点,那直接去原根目录把所有的文件复制到新的根目录就行了,很简单我就不细讲了这里讲一下如果是在原站点基础上更换了域名的情况,在原站点更换了域名要改根目录前缀,只需要去博客根目录重命名。我这里直接在宝塔的文件管理把博客根目录 52aill 更换成了 blog_52aill 更换之后你的网站肯定打不开了,因为你的站点根目录没了,所以打不开是正常的。别急,只需要在 站点信息 里把原来的 网站目录 更改为 blog_52aill ,你的网站就可以恢复访问了三、更换博客数据库名更换了网站前缀、根目录前缀,如果不更换数据库名的前缀,作为一个强迫症我是绝对受不了的,所以必须要改数据库名首先如果你新建站点的时候新建了数据库,那就很简单了,直接把旧数据库备份再导入新数据库就行如果你新建站点的时候没有创建数据库,那直接在宝塔数据库添加数据库,再将原数据库的数据备份导入新数据库然后重点来了,这个时候你的网站打开时绝对会出现数据错误,像这样那是因为你改了数据库名称,但是你的网站没改数据库地址,参考 把手给我,我来教你搭建自己的个人博客(不用带脑) 网站安装时填写的数据库名称知道原因就很简单了,我们直接去网站目录找到保存数据库信息的文件,然后修改数据库信息就OK了我这里保存数据库信息的是 config.inc.php ,这个文件一般在根目录,名称可能不同,一般为 config.php 直接编辑这个文件,将数据库名称和数据库账号密码修改为新的数据库信息,保存即可。
2021年03月02日
3,052 阅读
2 评论
6 点赞
2021-03-02
『修复』『模板』Typecho后台主题 Fresh模板(修复版)
Fresh主题采用了目前最流行的bootstrap前端开发框架与typecho进行深度适配;主题在继承typecho一贯简单高效风格的同时让其更加贴合现代年轻用户的审美。
2021年02月23日
31,969 阅读
235 评论
868 点赞
2021-02-23
『转载』『教程』Typecho开启Gzip压缩加速网站
GZip压缩,是一种网站速度优化技术,也是一把SEO优化利器,许多网站都采用了这种技术,以达到提升网页打开速度、缩短网页打开时间的目的。
2021年02月22日
1,138 阅读
2 评论
6 点赞
2021-02-22
1
2