使用 SMF 的 SSI.php相關教學:
SSI (Server Side Includes) 入門教學讓 SMF 論壇跟你的網址整合並不簡單, 但是如果你使用 SMF 提供的 SSI.php 或許會幫你
消除一些困擾.
這篇教學會教你簡單的 SSI 用法, 和一些較高難度的用法.
什麼是 SSI?好問題. SSI, 或 Server Side Includes, 是讓你在網頁顯示其他資料的技術. SSI 語法通常
是放在 .shtml 檔, 語法是:
<!--#include virtual="some_other_file.html" -->
上面的語法簡單來說就是告訴你的主機去複製檔案內容 (在這裡是 some_other_file.html) 然後
貼到有上面語法的檔案內.
SSI 也有其他用途非常有幫助. 你可以寫一個標題檔 (譬如說 header.html) 然後包括在全部的網頁內.
相同的, 你也可以用 SSI 來讀取 SMF 的動態資料.
我可以用 SSI 嗎?很可惜, 要用 SSI 來做動態網頁, 你的主機必須是 Apache. IIS 沒有辦法使用. 不過,
還有其他辦法可以製作動態網頁, 也是更好的辦法, 那就是用 PHP.
PHP 是比較有效率的辦法. 唯一可惜的是比較難懂. 但是說不定這篇教學能夠讓你對
PHP 有進一步的了解.
開始動手使用 SSI.php 的第一個步驟就是用 PHP. 也就是說你的檔案可以啟動 PHP - 可以是用 .php
副檔名, 或是告訴 PHP 檔案 .html 是 PHP 檔. 這篇教學會假設你的所有檔案會是 something.php.
現在你可以準備使用 SSI.php 在你的網頁內. 你可以在 SMF 的根目錄內找到 ssi_examples.php,
它會告訴你在網頁上方該加上什麼. 範例: (記住, <?php ... ?> 必須出現在檔案的最上方)
<?php include('/home/yoursite/public_html/forum/SSI.php'); ?>
<html>
<head><title>Test</title>
</head>
<body>
Test.
</body>
</html>
目前來說上面的檔案沒有什麼作用. 不過你已經告訴 PHP 上面的檔案會包括 SSI.php 裡面的功能.
現在你可以用 SSI.php 提供的功能來加上最新文章, 會員登入等等.
加上小東西SSI.php 有許多的函式功能, 你可以在 ssi_examples.php 裡面看他的使用方法. 譬如說你要
用 ssi_menubar(), 你可以在網頁內加上這個:
<?php ssi_menubar();?>
上面如果成功的話, 我想你應該急的想知道還有什麼功能吧? 繼續看下去吧.
設定 SSI.php一些更複雜的特色就是 SSI.php 本身的設定. 你可以用 gzip 來輸出, 使用特殊的佈景, 和顯示其他
的佈景層面. 當然你也可以阻擋你討厭的人進入到你的網頁內.
上面的功能需要你在包括 SSI.php 前先指派一些變數. 做法是在 include('/... 前面加上 $ssi_gzip = true;
你可以設定變數的有:
$ssi_gzip
是否要用 gzip 輸出, 可以是 true 或 false.
$ssi_ban
是否使用阻擋功能, 可以是 true 或 false.
$ssi_theme
使用的佈景編號, 可以是任何有效的佈景編號.
$ssi_layers
顯示層面的前後, 必須是佈景的陣列.
也許這看起來有點複雜, 但是會越來越簡單. 你只需要建立兩個子佈景 - 譬如說 site_above 和
site_below - 然後在 include('/... 前加上 $ssi_layers = array('site');. 這是
一個在你網頁內使用佈景系統的方法.
基本驗證方法另一個 SSI.php 功能是會員驗證. 有很多方法可以使用, 但是最簡單的就是
檢查使用者是不是管理員, 或是不是訪客. 要確定使用者是位會員, 你可以在
include('/... 的後面加上:
is_not_guest();
你也可以用相關的功能來確定使用者是不是管理員:
is_admin();
還有很多的功能等你發掘, 希望這篇教學能對你有所幫助.
來源: http://unknown.network32.net/tutorial.smf_using-ssi