點擊「所有主題」進入空白頁問題

點閱:978 平均評分:10.00 (1票) 迴響:1
作者:睡蓮 來源:池水間
  XForum 模組“最新討論話題”區塊底部靠右的三個並排連結「所有文章」、「所有主題」和「討論區首頁」,其中的「所有主題」存在點擊後進入空白頁問題,有使用 5.75 版本者可以修改如下兩個檔案來解決:

在/modules/xforum/viewall.php 下約 40 行加上註解
$xoopsOption['template_main'] = 'xforum_viewall.html';
/*
if(!empty($GLOBALS['xoopsModuleConfig']['rss_enable'])){
	$GLOBALS['xoTheme']->addLink('alternate', XOOPS_URL.'/modules/'.$xoopsModule->getVar('dirname').'/rss.php', array('type'=>"application/rss+xml", 'title' => $GLOBALS['xoopsModule']->getVar('name')));
}
*/

include XOOPS_ROOT_PATH."/header.php";


然後在後面加上兩段:
$xoopsOption['template_main'] = 'xforum_viewall.html';
/*
if(!empty($GLOBALS['xoopsModuleConfig']['rss_enable'])){
	$GLOBALS['xoTheme']->addLink('alternate', XOOPS_URL.'/modules/'.$xoopsModule->getVar('dirname').'/rss.php', array('type'=>"application/rss+xml", 'title' => $GLOBALS['xoopsModule']->getVar('name')));
}
*/

if (!empty($xoopsModuleConfig['rss_enable'])) {
    $xoops_module_header .= '<link rel="alternate" type="application/xml+rss" title="' . $xoopsModule->getVar('name') . '" href="' . XOOPS_URL . '/modules/' . $xoopsModule->getVar('dirname', 'n') . '/rss.php" />';
}

include XOOPS_ROOT_PATH."/header.php";
$xoopsTpl->assign('xoops_module_header', $xoops_module_header);


至此空白頁問題便解決,但是接下來會看到討論區標題下盡是一串網址,所以要將它修正為顯示討論區名稱,請在/modules/xforum/class/forum.php 下 533 行加上雙斜槓,然後在下一行加入如下綠字:
                'topic_last_poster_uid' => $myrow['uid'],
                'topic_last_poster_name' => $myts->htmlSpecialChars( ($myrow['last_poster_name'])?$myrow['last_poster_name']:$xoopsConfig['anonymous']),
                //'topic_forum_link' => $forum_obj->getURL(),
                'topic_forum_link' => '<a href="' . $forum_obj->getURL() . '" title="' . $forum_obj->getVar('forum_name') . '">' . $forum_obj->getVar('forum_name') . '</a>',
                'topic_excerpt' => $topic_excerpt,
                'stick' => empty($myrow['topic_sticky']),
                "stats" => array($myrow['topic_status'], $myrow['topic_digest'], $myrow['topic_replies']),
                );


討論區標題下的一串網址修正後,還有另一個跟此篇一樣的問題是進入「所有主題」頁面後,除首頁之外的所有頁數下點擊討論區名稱時會進入沒有主題列表的空內容,所以請繼續下面的修改。

在同一個檔案的 /modules/xforum/class/forum.php 下找第 73 行,加上如下的註解並在後面加入一行如下的綠字便可。
		if ($GLOBALS['xoopsModuleConfig']['htaccess']) {
    		return urldecode($this->getVar('domain')) . '/' . $GLOBALS['xoopsModuleConfig']['baseurl'] . $this->getSUBPath() . '/' . $this->getVar('forum_id') . ",$since,$start,$sortorder,$sortname,$mode,$type" . $GLOBALS['xoopsModuleConfig']['endofurl'];
    	} else {
    		/*return urldecode($this->getVar('domain')) . '/modules/xforum/viewforum.php?forum='.$this->getVar('forum_id') . "&type=$type&mode=$mode&since=$since&start=$start&sortorder=$sortorder&sortname=$sortname";*/
            return urldecode($this->getVar('domain')) . '/modules/xforum/viewforum.php?forum='.$this->getVar('forum_id');
    	}