:::

8. 前台檔案結構

一、 前台結構

  1. 前台的結構如下:
    <?php
    /*
    index.php 是模組的預設首頁(入口)。
    若前台還有需要別的檔案,可以直接複製此檔然後改名即可。
    */
    
    
    /*------------------ 檔頭(引入檔案) ------------------*/
    
    //引入共同檔案設定檔及共同函數檔 function.php(必要)
    include "header.php";
    //使用樣板檔
    $xoopsOption['template_main'] = "前台樣板檔.html";
    //引入XOOPS前台檔案檔頭(必要)
    include_once XOOPS_ROOT_PATH."/header.php";
    
    
    
    /*------------------ 流程判斷(告訴程式現在要做什麼) -----------------*/
    
    //$op 為XOOPS常用之動作變數,用來告知程式欲執行之動作
    $op=isset($_REQUEST['op'])?$_REQUEST['op']:"";
    
    //判斷目前動作該執行哪一個
    switch($op){
      //當 $op 的值等於「動作1」時,欲執行的動作
      case "動作1":
      do_something();
      break;
    
      //預設動作
      default:
    
      break;
    }
    
    /*------------------ 所有函數(實際執行動作) ------------------*/
    
    //當 $op 的值等於「動作1」時,欲執行的函數
    function do_something(){
    
    }
    
    
    
    /*------------------ 檔尾(輸出內容到樣板) ------------------*/
    
    //套用工具列的程式碼到樣板檔(toolbar_bootstrap()來自tadtools函式庫)
    $xoopsTpl->assign( "toolbar" , toolbar_bootstrap($interface_menu)) ;
    //套用 bootstrap 的引入語法到樣板檔(get_bootstrap()來自tadtools函式庫)
    $xoopsTpl->assign( "bootstrap" , get_bootstrap()) ;
    //套用 jquery 的引入語法到樣板檔(get_jquery()來自tadtools函式庫)
    $xoopsTpl->assign( "jquery" , get_jquery(true)) ;
    //將「是否為該模組管理員」的變數傳送到樣板檔($isAdmin來自header.php檔)
    $xoopsTpl->assign( "isAdmin" , $isAdmin) ;
    
    //引入XOOPS前台檔案檔尾(必要)
    include_once XOOPS_ROOT_PATH.'/footer.php';
    ?>
  2. 一定要引入:include_once '../../mainfile.php'; (已包含在 header.php 中)
  3. 頁首:include_once XOOPS_ROOT_PATH."/header.php";
  4. 頁尾:include_once XOOPS_ROOT_PATH.'/footer.php';
  5. 其餘結構可比照後台頁面結構。

二、 前台主選單設定

  1. 有前台時,記得到xoops_version.php去加入 $modversion['hasMain'] = 1;
  2. 若前台有好幾個子功能,可以在主選單中加入子選項:
  3. $modversion['sub'][1]['name'] = '子選項名稱';
  4. $modversion['sub'][1]['url'] = '連結位置';

三、前台樣板檔

  1. 前台樣板檔作法和後台沒兩樣,所以可以將後台樣板語法複製到前台,修改後(例如拿掉管理工具)使用。
  2. 也可以把抓取資料內容的部份做成共同函數放到 function.php,如此,前後臺便可共用函數。

:::

搜尋


書籍目錄

展開 | 闔起

線上使用者

18人線上 (2人在瀏覽線上書籍)

會員: 0

訪客: 18

更多…