这是我第一次在这里发帖,所以如果我做错了什么,请告诉我!
我正在使用 Wordpress 和 Xenforo,使用 WP 作为门户页面。他们都有自己的数据库。我正在使用一个多年来没有继续支持的 WP 插件,专门为 Xenforo 设计。
问题:插件从 Xenforo 论坛中提取最新帖子(或最新帖子)并将它们显示在 WP 的侧边栏小部件中。但是帖子链接指向 THREAD 而不是特定的 POST。
我查看了插件的代码,试图找出我必须修改代码的哪一部分来纠正这个问题。我不知道要寻找什么。
这是插件的代码:
<?php
//------------------------------------------------------------------------------------
//status: CHECKED IN
//------------------------------------------------------------------------------------
/**
* qry_lastposts.php: run the query to get the last posts
* @package plugins_lastposts
* @version version 1.4.0
* @copyright EIP Software LLC - eipSoftware_Copyright.php
*/
//------------------------------------------------------------------------------------
/**
* Get Last Posts --> run the queries to get the latest forum posts
* @return string last post query
*/
function qry_LastPostList($userOptions)
{
try
{
$qry_sql = " SELECT thread.thread_id,
thread.title,
thread.username as threadstarter,
thread.user_id as threadstarterid,
thread.reply_count as replies,
thread.last_post_id as lastpostid,
thread.last_post_username as lastposter,
thread.last_post_user_id as lastposteruserid,
thread.last_post_date as lastpostdate,
usr.avatar_date as lastposteravatardate,
TRUNCATE(usr.user_id, -3)/1000 as lastposteravatardir
FROM xf_thread as thread
inner join xf_user as usr
on thread.last_post_user_id = usr.user_id
WHERE thread.discussion_state = 1
AND usr.message_count >= " . $userOptions['forumUserPosts'] . "
AND node_id NOT IN (" . $userOptions['excludeNodes'] . ")
AND thread.last_post_date >=UNIX_TIMESTAMP(DATE_SUB(NOW(),INTERVAL " . $userOptions['forumLookBack'] . " DAY))
AND usr.user_group_id NOT IN (" . $userOptions['forumUserGroup'] .")
ORDER BY last_post_date DESC
";
$qry_sql .= ($userOptions['forumPosts']>=1 && $userOptions['forumPosts']<=100) ?
" LIMIT 0," . $userOptions['forumPosts']
:" LIMIT 0,10";
return($qry_sql);
}
catch(ExceptionHandler $e)
{
$e->ParseError($qry_sql);
}
}
?>
我在想这里有些东西与帖子 ID 无关。例如,当我单击列表中的第一个帖子时:
我看到它针对线程 index.php?threads/ORCHESTAL-TOOLS-ANNOUNCES-SOLOISTS-SERIES--new-TECH-DEMOS
即使帖子 ID 在那里:#46965
当我点击它时,它确实到达了该线程的第一个帖子,而不是我期望找到的那个。所以这就像它向我展示了看到新帖子的最新线程,而不是把我带到帖子本身。
有没有人理解这些... :) 我可以进行更正、修改或添加来解决这个问题吗?
原始插件可以在这里找到: https ://www.dropbox.com/s/4jzfpfpcccjtrj6/eipSoftwareOnlineUsers_v1.2.5b.zip?dl=0
我在上面发布的代码来自文件:qry_lastposts.php,位于 eipSoftware\lastposts\qry。
感谢您的任何帮助!
问候,
安德烈