TYPECHO WIKI
每一个作品都值得被记录

敬告读者,感谢您对本站的支持,在今年10月份因Racknerd机房硬盘事故,导致本站静态文件全部丢失,包含主题插件网站图片等文件,TypechoWiki经过几次更换站长,凝结了多位站长的心血,如今因为大意只备份了数据库未及时备份静态文件而导致严重数据丢失事故,现已无力回天,经过深思我决定后续可能永久停更该网站,请各位读者寻求其它Typecho周边下载站,另外如果你对本站感兴趣也欢迎报价,我们愿意出售该站联系邮箱[email protected],目前该站的静态文件仅为2019年以前的版本,2019年以后的各位站长精心维护的插件和主题压缩包以及站内图片全部丢失!

Typecho 标签归类功能插件 tagCat

Typecho维基君插件列表 • 800次浏览 • 发布 2023-06-23 • 更新 2023-06-23

插件简介

大家知道Typecho的标签数据其实和分类用的是同一个表,但是默认只能按照标签的 mid(或标签量)的正反序输出,当博客中创建了很多标签后,标签云的效果就显得比较混乱。插件作者受到启发后写了这个tagCat插件实现按照自定义的分类输出,还可以隐藏不想显示的标签。

1649889825.jpg

实现的原理:分类和标签都具有 order 字段,用于排序,而标签的 order 字段默认被闲置了,所以,把它用起来。

A 涉及文件

var/Widget/Metas/Tag/Edit.php

B 改造文件

作用:给标签云新增分类功能。

打开文件 var/Widget/Metas/Tag/Edit.php 替换两处、新增两处代码:

1. 搜索找到以下代码,有两处:
    $tag = $this->request->from('name', 'slug'
2. 将以上两处代码都替换为以下代码:
    $tag = $this->request->from('name', 'slug', 'order'
3. 搜索找到以下代码:
    $form->addInput($slug);
4. 在以上代码的下一行,添加以下代码:
    /** 标签分类 */
    $order = new Form\Element\Radio(
        'order',
        [
            '0' => _t('默认'),
            '1' => _t('年份'), // 可自定义标签分类名称
            '2' => _t('城市'), // 可自定义标签分类名称
            '3' => _t('作者'), // 可自定义标签分类名称,以此类推,可以继续新增 4、5、6…… 个标签分类,需与调用输出的数量对应
        ],
        '0',
        _t('标签分类'),
        _t('此功能用于分类标签, 在特定调用中它会被显示.')
    );
    $form->addInput($order);
5. 搜索找到以下代码:
    $slug->value($meta['slug']);
6. 在以上代码的下一行,添加以下代码:
    $order->value($meta['order']);
至此,在后台》管理》标签,已经可以看到(标签分类)的功能选项,点击每个标签的编辑按键(铅笔状图标)后,给对应的标签添加分类,提交即可。

C 调用输出

  1. 在需要呈现标签云的文件适当位置,添加以下代码:
    <?php

        $this->widget('Widget_Metas_Tag_Cloud@tagCat', 'ignoreZeroCount=true')->to($tagCat);

        //关键代码已隐藏

    ?>
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,Typecho.Wiki所有文章均包含本声明。
下载地址

  更新时间:2023年06月23日

  软件作者:立云图志

  下载链接: 链接

厂商投放

【腾讯云】🎉五一云上盛惠!云服务器99元/月续费同价!

腾讯云五一劳动节海量产品 · 轻松上云!云服务器首年1.8折起,买1年送3个月!超值优惠,性能稳定,让您的云端之旅更加畅享。快来腾讯云选购吧!

广告
添加新评论 »