关于主题
这个主题折腾的就很莫名其妙。
原来只是想着似乎该给这个 typecho 网站换个主题了,然后网上随意溜达一下刚好看到 @半日闲 的仿百度搜索主题 Xaink。一开始就是觉得这思路有点猎奇,满下载下来瞅瞅就没打算用。
本地安装后浏览了一下代码,发现居然不整齐,强迫症发作,整理了一下代码。
整理完代码的时候看到主题在用 jQuery 和不熟悉的 Tailwind 框架,就把 jQuery 有关的代码都删除了,并换上了以前折腾过的 bootstrap,并补上需要的 javascript(没有歧视 jQuery 的意思,纯粹个人喜好)。
在替换 Tailwind 为 bootstrap...
话题typecho共有相关文章 16 篇。
Typecho 非插件后台适配暗色模式

Typecho 后台没有暗色模式,没搜到可以通过钩子来实现挂载后台样式链接的,找到的插件好像也是覆盖对应文件来实现,于是就让 AI 推荐了一下配色,自己手动给后台添加了个暗色模式,昏暗的环境下眼睛舒服多了。
下面是修改方法,跟随操作系统,无法手动切换,如果有缺失的地方可以自己补齐 CSS 代码:
找到 admin/css/style.css 文件
添加下面的 CSS 代码,:root 部分可添加在文件顶部 @charset "UTF-8"; 的下面,其他的 @media (prefers-color-scheme: dark) 开始部分可添加在文件最末尾:
:root {
-...
Typecho 通过短代码无插件实现友情链接页面功能

Typecho 默认没有友情链接功能,虽然可以通过插件 Links 来实现,但我目前愣是没找到这个插件靠谱的出处(也或许是插件作者没发布到 Github 所以一直心理不想承认出处),所以,最后选择了通过短代码的方式来实现友情链接页面功能。
添加解析短代码函数
在主题 functions.php 文件中添加以下代码
/**
* 解析友情链接短代码
* 新格式:
* {blogroll}
* {名称,URL,描述}
* {名称2,URL2,描述2}
* {/blogroll}
* 不解析 <pre></pre> 内的短代码
*/
function ox...
使用自定义字段无插件实现typecho文章置顶功能

添加文章置顶选项
functions.php 添加以下代码,实现文章撰写和编辑页面右侧添加置顶选项确认按钮。该按钮使用文章自定义字段,确认置顶后,会在文章编辑框下面自动添加自定义字段,所以需要通过 javascript 同步操作。
function oxcat_addStickyCheckbox() {
$post = Typecho_Widget::widget('Widget_Contents_Post_Edit');
$isChecked = ($post->fields->isSticky == 1) ? 'checked' : '';
$ht...
Typecho 评论者链接新窗口打开

方法一
functions.php
function CommentAuthor($obj, $autoLink = NULL, $noFollow = NULL) { //后两个参数是原生函数自带的,为了保持原生属性,我并没有删除,原版保留
$options = Helper::options();
$autoLink = $autoLink ? $autoLink : $options->commentsShowUrl; //原生参数,控制输出链接
$noFollow = $noFollow ? $noFollow : $options-&g...
Typecho 评论 @ 父级用户名

这鸟毛东西不知道怎么加到评论内容 <p> 里面最前面,只能将就用了。
functions.php 里加
function at_parent_comment($coid){
$db = Typecho_Db::get();
$row = $db->fetchRow($db->select('parent')->from('table.comments')->where('coid = ? AND STATUS = ?', $coid, 'approved'));//当前评论
if(isset($row['parent']))...
Typecho 自定义模板头部信息

于主题模板文件夹中的 header.php 文件
<?php $this->header(); ?>
设置以下参数
keywords:关键词
description:描述、摘要
rss1:feed rss1.0
rss2:feed rss2.0
atom:feed atom
generator:程序版本等
template:模板名称
pingback:文章引用
xmlrpc:离线写作
wlw:m$的离线写作工具
commentReply:评论回复
不想显示的在 = 后面留空即可,如:
<?php $this->header('generator=&...
Tyepcho 输出当前文章所属分类的所有子分类

$this->widget('Widget_Metas_Category_List')->to($categories);
while($categories->next()):
if($this->category == $categories->slug && ($this->is("post") || $this->is("category"))){
$childrens = $this->widget('Widget_Metas_Category_List')->getAllChildr...
Tyepcho 自定义文章标签输出

Typecho 默认标签输出:
$this->tags(', ', true, 'none');
以下代码放入 funcitons.php 文件中。
function oxcat_tags($obj) {
if (count($obj->tags) > 0):
foreach($obj->tags as $tag){
echo '<a href="'.$tag['permalink'].'" class="tag" rel="category">'.$tag['name'].'</a>';
...
Typecho 自定义标签页模板

设置 Typecho 标签页模板,并按标签所属文章数量从多到少排列输出。
<?php
$this->widget('Widget_Metas_Tag_Cloud', 'sort=count&ignoreZeroCount=1&desc=1')->to($tags);
if($tags->have()):
echo '<div class="tags-list">';
while ($tags -> next()):
echo '<a href="'.$tags->permalink.'...
最新评论