修改Xoops佈景結構增加一個入口首頁的方法!!-教學撰寫:徐嘉裕Neil hsu

之所謂客戶百百款,每個客戶對於網站的需求都不一樣,最近就遇到一個客戶需要再Xoops網站的首頁前面再加一層入口首頁,如果用原本的作法是用html做個頁面丟到網站根目錄然後指定伺服器預先讀取html即可,但是這樣做變成是獨立頁面,離開Xoops系統了,如果要使用Xoops的模組或區塊功能就不可行了,所以解決的方法還是修改佈景結構比較實在。

這是修改好之後的佈景樣式,如果輸入網址會出現入口頁面,



點進入網站按鈕則會顯示原本的Xoops預設首頁跟11個區塊!






修改方法如下:

1、先在佈景根目錄建立一個config.php檔
2、於佈景theme.tpl中引入config.php檔
<{include_php file="$xoops_rootpath/themes/$xoops_theme/config.php"}>
3、於config.php檔中增加以下的php code

<?php
$types=isset($_REQUEST['types'])?$_REQUEST['types']:"";

if(!empty(trim($this->_tpl_vars['xoops_contents'])) ){
$contentstrue=true;
}

$this->assign('contentstrue', $contentstrue);
$this->assign('types', $types);

?>

4、然後在佈景的tpl資料夾建立一個index.tpl檔,這個樣板就是用來放入口首頁內容的,包括區塊程式也能在這裡運作,index.tpl檔裡面要做個按鈕連到Xoops預設首頁。

<a title='前往首頁'  href="<{xoAppUrl /}>?types=index" >前往首頁</a>

5、修改佈景的結構樣板檔,加上以下的判斷
<body>


<{if !$types eq index && !$contentstrue}>
<{includeq file="$theme_name/index.tpl"}>  //讀取入口首頁樣板

<{else}>

//放置原本Xoops內建的11個區塊程式內容區

<{/if}>
</body> 

這樣就可以了,如果網址types沒有變數,那就是讀入口首頁樣板,如果types有變數或是tpl_vars['xoops_contents']有值,則讀內容首頁程式。


有需要的朋友可以參考看看!!

教學撰寫: 徐嘉裕 Neil hsu


留言

  1. 作者已經移除這則留言。

    回覆刪除
  2. 老師您好
    依據您的教學修改布景school 2015但是好像沒有起作用?!

    回覆刪除

張貼留言

這個網誌中的熱門文章

Xoops免費佈景:neilambilight2.5正式版釋出-佈景設計開發:徐嘉裕Neil hsu

在CentOS7上安裝XAMPP並設定允許外部連線phpmyadmin的方法-教學撰寫:徐嘉裕Neil hsu

jquery.datepicker下拉月曆只顯示年-月的設定方法-教學撰寫:徐嘉裕Neil hsu