怎样让typecho在首页的文章只显示摘要?

warning: 这篇文章距离上次修改已过1008天,其中的内容可能已经有所变动。

登录到后台-控制台-外观-编辑当前外观:
编辑文件 archive.php
编辑文件 index.php

修改两处分别找到:
/ 默认显示的是全文 /

<?php $this->content('- 阅读剩余部分 -'); ?>

替换成(概要取300字):
/ 自定义输出,如 300个字符 /

<?php $this->excerpt(300,'- 阅读剩余部分 -'); ?>

修改typecho首页显示文章的数量:
编辑文件 functions.php
在末尾添加:

/* 自定义首页文章分布数量,如 10 */function themeInit($archive) {if ($archive->is('index')) {
$archive->parameter->pageSize = 10;
}
}

官方用法

Typecho 默认的逻辑是用户自己决定摘要的内容。

首先在后台打开阅读设置,仅摘要输出,然后发布文章的时候在摘要结尾添加标识符(编辑器上有此功能) <!--more-->


根据长度截取摘要

如果文章不是自己编辑,通过采集或者复制过来的,就不能保证文章具有摘要标识,这时候就需要运维人员修改主题模板自定义输出。为了兼容官方的逻辑同时能截取摘要长度,可以做一个逻辑判断。

// 将原主题文件 archive.php 中的<?php $this->content('- 阅读剩余部分 -'); ?>// 替换成<?php
    $length = 100;              // 截取长度
    $more = "- 阅读剩余部分 -";  // 显示符
    $more = "<p class=\"more\"><a href=\"{$this->permalink}\" title=\"{$this->title}\">{$more}</a></p>";    false !== strpos($this->text, '<!--more-->') ?    echo $this->excerpt . $more : $this->excerpt($length, $more);?>


none
最后修改于:2022年07月17日 12:09

添加新评论