Discuz提示“帖子不存在”

在Discuz中提示帖子不存在有多种可能的情况,今天遇到一种,整理如下:

现象:
1. 帖子列表显示该帖子
2. 点击帖子提示“帖子不存在”
3. forum_thread displayorder为0
4. forum_post invisible为-1
5. forum_threadmod 有限时置顶、删除操作

结论:在删除帖子前执行过限时置顶操作,限时置顶到期后,计划任务(cron_threadexpiry_hourly.php)会自动重置 displayorder字段为 0 ,导致帖子出现在列表中,但是点击提示“帖子不存在”

解决方案:最直接的是更新mysql该行记录displayorder为-1 ,因为此贴本身应该是删除状态(如果有memcache缓存,为了实时生效,需要后台内存管理里更新相应tid fid缓存)。但是最佳优化方案还是要避免次类问题发生,后面抽时间补上方案。


相关资料:

Discuz pre_forum_thread displayorder字段

Discuz pre_forum_threadmod action字段

Discuz pre_forum_post invisible字段

Discuz! X2.5 的 forum_thread 和 forum_post 表的各标记位字段对应的值的说明


3
Feb 2017
AUTHOR WiFeng
CATEGORY Web
COMMENTS No Comments

Discuz pre_forum_thread displayorder字段

  • displayorder : 0  正常
  • displayorder : -1  回收站
  • displayorder : -2 待审核
  • displayorder : -4 草稿帖

3
Feb 2017
AUTHOR WiFeng
CATEGORY Web
COMMENTS No Comments

Discuz pre_forum_post invisible字段

  • invisible :0 正常
  • invisible :-3  已忽略
  • invisible :-2  待审核
  • invisible :-5  回收站
  • invisible : -1 主题帖在回收站中

3
Feb 2017
AUTHOR WiFeng
CATEGORY Web
COMMENTS No Comments

Discuz pre_forum_threadmod action字段

pre_forum_threadmod action字段定义了主题帖相关的操作,可以在这个文件中找到中文描述,source/language/forum/lang_modaction.php。

这里直接贴出来,方便直接查看

$lang = array
(

	'EDT' => '编辑',

	'DEL' => '删除',
	'DLP' => '删除回复',
	'DCM' => '删除点评',
	'PRN' => '批量删帖',
	'UDL' => '反删除',

	'DIG' => '加入精华',
	'UDG' => '解除精华',
	'EDI' => '限时精华',
	'UED' => '解除限时精华',

	'CLS' => '关闭',
	'OPN' => '打开',
	'ECL' => '限时关闭',
	'UEC' => '解除限时关闭',
	'EOP' => '限时打开',
	'UEO' => '解除限时打开',

	'STK' => '置顶',
	'UST' => '解除置顶',
	'EST' => '限时置顶',
	'UES' => '解除限时置顶',

	'SPL' => '分割',
	'MRG' => '合并',

	'HLT' => '设置高亮',
	'UHL' => '解除高亮',
	'EHL' => '限时高亮',
	'UEH' => '解除限时高亮',

	'BMP' => '提升',
	'DWN' => '下沉',

	'MOV' => '移动',
	'CPY' => '复制',
	'TYP' => '分类',

	'RFD' => '强制退款',

	'MOD' => '审核通过',

	'ABL' => '加入文集',
	'RBL' => '移除文集',

	'PTS' => '推送主题',
	'RFS' => '解除推送',
	'RMR' => '取消悬赏',
	'BNP' => '屏蔽帖子',
	'UBN' => '解除屏蔽',

	'REC' => '推荐',
	'URE' => '解除推荐',

	'WRN' => '警告',
	'UWN' => '解除警告',

	'SPA' => '添加图章',
	'SPD' => '撤销图章',

	'SLA' => '添加图标',
	'SLD' => '撤销图标',

	'REG' => '群组推荐',

	'PTA' => '生成文章',

	'MAG' => '道具',

	'REB' => '推送',

	'LIV' => '直播',
	'LIC' => '取消直播',

);


3
Feb 2017
AUTHOR WiFeng
CATEGORY Web
COMMENTS No Comments