BigCoke

Plugin DirectoryTree For Typecho发布
前言  大概是因为要开学了,所以就想作死搞事情了吧(喂喂,开学要考试,你复习那么一点点就够了吗...
扫描右侧二维码阅读全文
21
2019/02

Plugin DirectoryTree For Typecho发布

前言

  大概是因为要开学了,所以就想作死搞事情了吧(喂喂,开学要考试,你复习那么一点点就够了吗
  闲的没事,改了一位大佬的代码,然后倒腾了好久(主要是PHP的转义字符、插件设置、还有一个弹窗),最终在一顿乱敲之中写出了这个插件,也算是我人生中写的第一个插件吧

原代码来自:黑冰技术站,自己有做修改,还搞了PHP的转义字符、插件设置、还有一个弹窗,累死

介绍

  DirectoryTree用于Typecho的目录树插件,只需一些小小的配置就能给你的文章加上目录。专为那些没有目录的的主题而做。

使用方法

先进入仓库:https://github.com/BigCoke233/DirectoryTree

  1. Star本项目(凑不要脸)
  2. Clone或者DownLoad,并把插件名称改为DirectoryTree
  3. 在后台启用本插件。
  4. post.phppage.php中找到<?php $this->content(); ?>的父元素,例如:
    <div class="post">
    <h2 class="entry_title"><a href="<?php $this->permalink() ?>"><?php $this->title() ?></a></h2>
    <div class="entry_data">
        Published by <a href="<?php $this->author->permalink(); ?>"><?php $this->author(); ?></a> on <?php $this->date('F j, Y'); ?> in <?php $this->category(','); ?>.
        <?php $this->commentsNum('%d Comments'); ?>.
    </div>
    <div class="entry_text">//这个是它的父元素的起始标签,entry_text即为它的class
        <?php $this->content(); ?>//这里是输出文章内容的变量
    </div>
    </div>

然后将找到的class的值填入设置中。

  1. 选择一下任意一种方法输出目录

    • 弹窗目录: 将一个可点击元素的onclick属性设置为OpenDirectoryWindow(),然后点击这个元素即可呼出一个有文章目录的窗口。(例如:<button onclick="OpenDirectoryWindow()">点我打开目录</button>
    • 列表目录: 勾选插件设置-高级设置中的 “文章目录以文字列表形式出现” ,然后在你要输出目录的地方加上这一句<ul class="widget-list" id="AnchorContent"> </ul>
  2. 若有bug请立即反馈给我,蟹蟹

勾选 “文章目录以文字列表形式出现” 后,弹窗列表会失效,不勾选则无法输出文字列表。

定义样式

通过以下class来书写目录的样式,弹窗和列表目录通用:

class 定义对象
.widget-list 整个目录(ul)
.widget-list-item 一个项目(ul>li)
.newh2 ~ .newh5 插件解析出来h2~h5分别所代表的a标签

卖萌打滚求star~


本文由 BigCoke 所撰,未注明内容均为原创,
并采用 CC BY 4.0 进行授权许可,转载请注明源地址
原文地址:https://cokewithice.com/p/146.html

Last modification:February 21st, 2019 at 06:07 pm

Leave a Comment

3 comments

  1. 左岸

    糟了,是大佬的感觉

    1. BigCoke
      @左岸

      我觉得我写得很烂emmm

  2. BigCoke

    表情测试