我只需要在bbpress中的特定论坛中显示“最新鲜”的3个主题。
有一种简单的方法吗?因为我试图加入桌子而疯了。所以这是我的mysql解决方案(仍然无法编码)....
所以我立即进入数据库检查那里发生了什么,但我找不到解决方案。按post_modified排序没有用。那么如何在特定论坛下获取FRESHEST主题并显示它们呢?
以下是bbpress如何存储数据:
论坛 - >主题 - >回复主题。一切都进入了wp_posts表。
回复主题有一个post_parent的主题和主题有post_parent的论坛。所以我绝对不能使用post_parent作为选择。
所以我在考虑这个问题(如果有人可以编码,我会感激甚至捐款,因为我被困在某处)。
从wp_posts表中选择post_type列为'reply'的所有帖子。然后检查表wp_postmeta是否具有1263的meta_value(这是我的父论坛)另外可以检查来自wp_postmeta的meta_key是否为“_bbp_forum_id”。这就是我将如何选择所有的答案。
在获得FORUM下的所有回复后,我想检查哪3个回复最新(获取post_date值)并显示其父主题。而且我必须确保我没有重复,因为最新的3个回复可以来自同一个主题。
上午我很复杂??? :)))更简单的方法?
谢谢!答案 0 :(得分:1)
“我只需要在bbpress的特定论坛下显示”最新鲜“的3个主题。”
听起来你正试图走很长的路线,看看这里描述的小部件已经做了什么:
http://codex.bbpress.org/widgets/
如果您的需求与此处列出的小部件不同,请详细说明原因,我们希望能够缩小范围。
答案 1 :(得分:-1)
试试这个:
SELECT my_id, my_title, max(my_date) order_date
FROM
(
SELECT
replace(post_title,'Antwort zu: ','') my_title,
post_date my_date,
if(strcmp(post_type,'topic'),post_parent,ID) my_id
FROM wp_posts
where post_type in ('topic', 'reply')
and post_status = 'publish'
) my_temp_table
group by my_id, my_title
order by order_date desc
limit 3
将'Antwort zu:'替换为字符串,具体取决于您的论坛语言。