在设计模板下载用的帖子内容页样式时,我遇到一个挑战:分类信息默认显示在帖子内容上方,但我希望将其独立出来,在内容页的其他位置调用特定分类字段。为了实现这一目标,我计划使用以下代码片段来调用所需字段: ```php $_G['forum_option']['字段']['value'] ``` 值得注意的是,这个变量在帖子列表页中无法直接使用,这在逻辑上是可以理解的。经过一番搜索和测试,我发现网上普遍推荐的调用方法是: ```php {$_G['optionvaluelist'][$sortid][$thread['tid']]['字段']['value']} ``` 然而,在X3.2版本中,这种方法似乎并不奏效,可能是适用于旧版本的解决方案。 为了找出问题所在,我详细检查了`$_G['optionvaluelist']`数组的结构: ```php ( [1] => Array ( [1] => Array ( [zd1] => Array ( [title] => 字段1 [unit] => [value] => 光电鼠标 ) ) ) ) ``` 从数组结构来看,该数组本身并无问题。问题的关键在于`$sortid`变量未能正确获取分类信息ID。由于帖子列表数据使用了`pre_forum_thread`表,其中包含`sortid`字段,因此正确的做法应是使用`$thread['sortid']`来获取分类信息ID。据此,我修正了调用方式: ```php {$_G['optionvaluelist'][$thread['sortid']][$thread['tid']]['字段']['value']} ``` 这样修改后,即可成功调用分类信息字段。 这一过程不仅解决了当前的问题,还为我之前编写的DB调用帖子列表功能提供了新的思路和应用可能性。通过深入理解分类信息数组、分类信息ID、帖子ID以及字段之间的关系,我们可以更灵活地处理和展示数据。 |