discuz帖子模組用到的表:
帖子表:pre_forum_post
帖子表pid最大值設定表:pre_forum_post_tableid
帖子列表表:pre_forum_thread
帖子所在板塊表:pre_forum_forum
這幾個表之間的關係是,帖子表pre_forum_post存放帖子的詳細資訊,其pid通過pre_forum_post_tableid表獲得。帖子列表pre_forum_thread表決定了該條記錄是否顯示在列表中,如果此表中沒有相應的記錄帖子也就無法顯示在列表中了。帖子所在板塊表pre_forum_forum存放了對應板塊的發帖數量,今日發帖數以及最近發帖的標題等資訊。
好了,了解了這幾張表之間的關係後有了下面這個函式和測試例子。
<?phpaddthread引數需要提供幾個必要的引數板塊id、標題、使用者名稱、使用者id和訊息內容。如果你想往哪個板塊自動生成乙個帖子,儘管呼叫addthread函式即可。if(!defined('in_discuz'))
echo "11111111111111111111111";
require_once discuz_root . './source/class/class_core.php';
$discuz->cachelist = $cachelist
;
$discuz->init();
$subject = '自行寫入帖子';
$message = '自行寫入帖子的訊息訊息訊息';
$thread['fid'] = 86;
$thread['subject'] = $subject
;
$thread['message'] = $message
;
$thread["authorid"]= 1;
$thread["author"]=$_g['member'][username];
$tid = addthread($thread
);
echo "*********** $tid **************";
/** 新增帖子
* @data 帖子陣列
* array('fid' => '板塊id',
'subject' => '標題',
'message' => '具體內容',
'authorid' => '使用者id',
'author' => '使用者名稱');
*/function addthread($data
)
return
$tid
; }
?>
如果是外掛程式這裡有個需要特別注意的地方。
1、forum_thread表,必須將special欄位的值設為127($thread["special"]= 127;)2、forum_post表的message欄位。如果你的是外掛程式的話,最後面一定要加上
chr(0).chr(0).chr(0) . "外掛程式名稱"否則,外掛程式的模板將無法呼叫。這是為什麼呢?這涉及到discuz外掛程式模板設計的問題。
原因分析:
./source/module/forum/forum_viewthread.php,大概700行左右,有這麼一段
if($_g['forum_thread']['special'] > 0 && (empty($_get['viewpid']) || $_get['viewpid'] == $_g['forum_firstpid'])) }}原因就出在這。}break
; }
}
1、special為127是才執行外掛程式的內容
2、由於外掛程式有很多,真麼知道是哪個外掛程式呢?因此,請看這行
$sppos = strpos($postlist[$_g['forum_firstpid']]['message'], chr(0).chr(0).chr(0));
discuz採用了chr(0).chr(0).chr(0)進行分割,獲取外掛程式名。如果無法獲取外掛程式名,則無法呼叫相應的模板,因而也就呼叫預設的系統模板了。
discuz 帖子模組用到的表及自動發帖函式
discuz帖子模組用到的表 帖子表 pre forum post 帖子表pid最大值設定表 pre forum post tableid 帖子列表表 pre forum thread 帖子所在板塊表 pre forum forum 這幾個表之間的關係是,帖子表pre forum post存放帖子的...
Z blog呼叫Discuz論壇最新帖子的方法
最近,我在子目錄下面安裝了乙個discuz論壇程式。大家都知道zblog是程式設計客棧asp,discuz是php,那麼asp的zblog應該如何實現在首頁呼叫php的discuz論壇最新帖子呢?經過湖南seo的努力,終於找到解決辦法 湖南seo使用的discuz x2 版本,下面將分為discuz...
Discuz 帖子重新整理後閱讀數增加隨機值的方法
有些站長對於帖子閱讀數增長緩慢的狀況很不滿足,希望能增加的快一些,本文就介紹一種閱讀數增加隨機值的方法!找到 source module forum forum viewthread.php檔案 搜尋 function viewthread updateviews tableid 將function...