浏览话题的天数总是不增加是怎么回事呢?

Leon 2026-06-05 17:15 1


如图,这个天数眼看着从四百多天掉到三百七十,昨天三百三十,稳步下降。

虽然每天也没有一直泡在论坛,但是每天也有打开几十个帖子看,这个天数为啥不增加呢?


至于其他的浏览帖子啥的增加都很正常,就是浏览话题这个每天都不增加一直往下降。

有没有别人遇到过这个问题?正确观看帖子的姿势是什么?

最新回复 (10)
  • zealken 06-05 17:16
    1

    别新开窗口,那样好像不算,我之前也是,现在都是只开一个网页,新话题点进去看完后点返回或者左上角话题刷新帖子

  • Grogu 06-05 17:22
    2

    以 Connect 数据为准,数据是百日滚动的,读话题不要新开窗口,读帖子要看右侧小蓝点消失


    https://connect.linux.do/

  • finillusion 06-05 17:27
    3

    佬友好,最好不要新标签打开,这个是论坛的特性,新标签打开可能不计算

    如果习惯新标签打开

    可以使用站内佬友分享的这个插件试试


    起因:之前看到很多人浏览话题不添加(如图),且自己想要精确统计浏览过的话题
    [image]
    [image]
    LINUXDO MiddleclickFix-1.0.user.txt (4.1 KB)
    注意:脚本理论上不会造成高并发请求操作,但由于脚本完全由opus4.7开发,仅做了简单测试,可能在极端情况/不当使用情况下会违反社区条例,脚本默认支持L站,其他discourse论坛请自行修…
  • 三三 06-05 17:34
    4

    可以看看我的脚本,已经解决这个问题了。



    起因 天塌了,我一直是使用右键打开帖子,难怪话题浏览数酷酷往下掉。 - 搞七捻三 - LINUX DO



    因为习惯使用新标签打开每一个L站的帖子浏览,最近突然发现自己的浏览话题数居然不达标了,但是我基本都是高强度猛猛刷L站的,这下可难受了,3级要不保了。于是使用AI把自己的油猴脚本更新了一下,目前可以正常增加话题浏览数了。


    // ==UserScript==
    // @name Linux.do 新标签打开话题并记录浏览量
    // @namespace local-linuxdo
    // @version 3.0.0
    // @description Linux.do 话题强制新标签打开,并在后台标签页补发 Discourse 浏览追踪请求
    // @author sansan048
    // @match https://linux.do/*
    // @match https://idcflare.com/*
    // @run-at document-start
    // @grant none
    // ==/UserScript==

    (() => {
    "use strict";

    /**
    * Part 1:
    * 在列表页、搜索页、通知菜单等位置,强制话题链接从新标签打开
    */
    document.addEventListener(
    "click",
    function (e) {
    const selector = `
    .topic-list a.title,
    .topic-list a.raw-topic-link,
    .search-results .topic-title,
    .user-menu .notification a,
    .user-menu .quick-access-panel li a
    `;

    const link = e.target.closest(selector);
    if (!link) return;

    // 排除菜单里的 tab / button,避免点通知分类按钮也新开标签
    if (link.classList.contains("btn")) return;

    const href = link.href;
    if (!href) return;

    // 只处理 linux.do 内部链接
    if (!href.startsWith("https://linux.do/")) return;

    // 只处理话题页链接,避免用户菜单里的设置、个人页等也被新开
    const url = new URL(href);
    if (!url.pathname.startsWith("/t/")) return;

    e.preventDefault();
    e.stopPropagation();
    e.stopImmediatePropagation();

    window.open(href, "_blank", "noopener");
    },
    true
    );

    /**
    * Part 2:
    * 如果当前页面本身是话题页,并且是后台新标签打开,
    * 则补发 Discourse track view 请求。
    */
    const topicId = getTopicId(location.pathname);
    if (!topicId) return;

    const storageKey = `linuxdo-track-view:${topicId}:${location.pathname}`;

    function isBackgroundTab() {
    return document.visibilityState === "hidden" || !document.hasFocus();
    }

    function trackTopicViewOnce() {
    // 已补发过就不再重复请求
    if (sessionStorage.getItem(storageKey)) return;

    // 前台标签页交给 Discourse 原生逻辑,不干预
    if (!isBackgroundTab()) return;

    sessionStorage.setItem(storageKey, String(Date.now()));

    fetch(`/t/${topicId}.json?track_visit=true&forceLoad=true`, {
    method: "GET",
    credentials: "include",
    cache: "no-store",
    headers: {
    Accept: "application/json, text/javascript, */*; q=0.01",
    "X-Requested-With": "XMLHttpRequest",

    // 关键请求头:让 Discourse 识别这是一次话题浏览追踪
    "Discourse-Present": "true",
    "Discourse-Track-View": "true",
    "Discourse-Track-View-Topic-Id": topicId
    }
    })
    .then((response) => {
    const info = {
    topicId,
    status: response.status,
    trackView: response.headers.get("x-discourse-trackview"),
    browserPageView: response.headers.get("x-discourse-browserpageview")
    };

    console.debug("[linux.do track view patch]", info);

    // 请求失败时允许后续重试
    if (!response.ok) {
    sessionStorage.removeItem(storageKey);
    }
    })
    .catch((error) => {
    sessionStorage.removeItem(storageKey);
    console.error("[linux.do track view patch]", error);
    });
    }

    // document-start 时尝试一次
    trackTopicViewOnce();

    // 后台标签页 visibilityState 有时初始化较慢,延迟再试几次
    setTimeout(trackTopicViewOnce, 300);
    setTimeout(trackTopicViewOnce, 1200);
    setTimeout(trackTopicViewOnce, 2500);

    function getTopicId(pathname) {
    const parts = pathname.split("/").filter(Boolean);

    // /t/12345
    if (parts[0] === "t" && /^\d+$/.test(parts[1] || "")) {
    return parts[1];
    }

    // /t/slug/12345
    if (parts[0] === "t" && /^\d+$/.test(parts[2] || "")) {
    return parts[2];
    }

    return null;
    }
    })();


    可以继续愉快的猛猛刷L站了 ^-^


  • 二手内裤 06-05 18:00
    5



    问一下事,这个 举报用户是指的什么? 我被举报了,还是我举报了别人?

  • 二手内裤 06-05 18:03
    6

    感谢, 怎么有人天天举报我啊?我也没有收到被举报的成功的消息

  • Leon 楼主 06-06 04:43
    7

    佬现在这个规则是什么时候开始的呢?

    我记得以前都开新窗口是没事的,最近突然看到话题数往下掉才觉得不太正常。

  • 三三 06-06 09:13
    8

    我也是最近才发现的,估计是Discourse框架的变动导致的

  • 跟我走吧 06-09 11:02
    9

    终于知道原因了,我说我天天刷帖子,高强度使用,怎么还掉了

  • 341 06-13 07:08
    10



    我说呢,平均一天10几个话题是有的,看着数据越来越少 ^-^

* 帖子来源Linux.do
返回