昨天簡單介紹了 Question2Answer 開源免費的 PHP 問答系統,上班時把公司的問答系統重新設計了,與產品網站風格統一。 Question2Answer 問答系統使用很簡單,但不簡單,很強大的,唯一不足的就是頁面設計的太差了,相應的主題也少,好在主題的設計不是很複雜,一天的時間把整個頁面重新設計好了。 Question2Answer 問答系統安裝很簡單,就略過了,我們來看下怎麼把 Question2Answer 和 WordPress 整合安裝在一起:
一、下載最新中文版 Question2Anwrer,解壓到文件
二、在解壓的目錄找到 qa-config-example.php,把他重命名成 qa-config.php
三、用編輯器 (推薦 Notepad 、 Sublime Text) 打開 qa-config.php,插入一個新行指向 WordPress 所在的目錄:define('QA_WORDPRESS_INTEGRATE_PATH', '/PATH/TO/WORDPRESS');這時候不用在 qa-config.php 中配置數據庫信息,因為此時 Question2Answer 和 WordPress 公用同一個數據庫。
四、將所有文件上傳到服務器上
五、確保 WordPress 的 cookie 配置和重定向配置兼容 Question2Answer;
1 、如果 Question2Answer 安裝在 WordPress 目錄下,那麼不用做任何修改。
2 、如果 Qustion2Anser 和 WordPress 在同一個域名下,但是 Question2Answer 不在 WordPress 的子目錄,那麼需要在 WordPress 的配置文件 wp-config.php 中加入:define('COOKIEPATH', '/');
3 、如果 Question2Answer 和 WordPress 使用不同的子域名 (比如 q2a.yfdxs.com 和 blog.yfdxs.com), 那麼需要進行如下配置:
(1) 在 WordPress 的 wp-config.php 中加入如下的兩行,將 test.com 替換成自己實際的域名信息
- define('COOKIEPATH', '/');
- define('COOKIE_DOMAIN', '.yfdxs.com');
(2) 在 WordPress 的 wp-config.php 的最後加入下面代碼,注意把 qa.yfdxs.com 替換成自己的真實域名信息
- add_filter('allowed_redirect_hosts', 'qa_WordPress_redirect_hosts');
- function qa_WordPress_redirect_hosts($content) {
- $content[] = 'qa.yfdxs.com';
- return $content;
- }
六、打開 Question2Answer 安裝的對應域名 (例如:子域名 http://q2a.XXX.com, 子目錄 http://blog.XXX.com/qa) 打開瀏覽器,找屏幕説明進行 Question2Answer 的安裝。
簡單強大的 Question2Answer 問答系統與簡單強大的 CMS 系統 WordPress 就整合在一起。
經過筆者的使用,感覺整合在一起優缺點都很明顯:
優點:
- 1 、數據庫可以共用,在任一系統註冊都可以在另一系統使用;
- 2 、兩系統的登錄與註冊頁面共用 WordPress 的;
- 3 、 Question2Answer 會自動在頁面中添加 WordPress 的鏈接;
- 4 、一個系統登錄,另一個系統自動登錄。
缺點:
- 1 、 Question2Answer 登錄欄輸入了用户名和密碼,點擊登錄還是跳轉到 WordPress 的後台登錄界面,Question2Answer 自身的登錄與註冊頁面就沒有了;
- 2 、在 Question2Answer 任何頁面登出後,都會跳轉到 WordPress 的後台登錄頁面;
筆者
個人覺得還是放在同一目錄下單獨使用,具體什麼樣的效果,還是自己親自體驗才知道。