因為要學Joomla!樣版,翻譯了這篇教學,順便貼上來給英文真的破到不行的人參考XD,轉載無料。
原文: Hazman
出處 : xtremeOpenSource
Joomla! 1.0.12版及較舊版本 樣板教學
在這個教程中,你會學習到如何製作一個相當簡單的Joomla樣版,然而,很多HTML和CSS的細節沒談到,如果你希望更深層了解HTML和CSS,我建議你在Google搜尋HTML和CSS的教學,你會找到無數的資源。
編輯器
這個教程只用來使用製作Joomla!1.0.X版本的樣版,你可以使用任何你喜歡使用的文字編輯器,如DreamWeaver或FrontPage,我使用
1stPage 2000,我過去一直是使用這個軟體,它是開源軟體(免費)。但是,我必須警告你,這個編輯器不是WYSIWYG(所見即所得)編輯器,所以事先的HTML和CSS的了解是必要的,才能用這個編輯器製作出一個有效的樣版。
開頭
創建一個樣板的資料夾和檔案
建立一個資料夾,命名為
simple。這也會是我們樣板的名稱。
打開新建立的
simple資料夾,在這裡面增加建立兩個資料夾,命名其中一個資料夾為
css,另一個為
images,這兩個資料夾都是以小寫英文字母命名,
css資料夾用來存放css檔案,
images資料夾是用來存放這個樣版所使用的全部圖片,但就這個教學來說,我們還不會使用任何圖片,所以保留這個空資料夾。
好的,讓我們開始吧-用編輯器開一個空白的頁面,把檔案存在
simple資料夾,命名為
index.php。然後我們開啟另一個空白頁面,命名為
template_css.css,存放在
css資料夾。
樣版的index.php標頭程式碼
這幾行程式碼是保護你的網站。這防止其他人因為任何理由直接存取樣版的檔案,也給PHP檔案定義,讓它只能被Joomla!識別。在你的樣版裡放置這些程式碼是很重要的。
<?php defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );
// needed to seperate the ISO number from the language file constant _ISO
$iso = split( '=', _ISO );
// xml prolog
echo '<?xml version="1.0" encoding="'. $iso[1] .'"?' .'>'; ?>
樣版說明
在樣版說明裡,我們增加個人的說明,譬如說樣版的名稱、作者、作者的信箱、版權聲明等等。你不想這麼做的話,也可以不在你的css裡放置這些訊息。我這麼做是為了讓程式碼更有條理。
/**
* @version - Template version goes here
* @package - Name of the template goes here
* @author - Author's name goes here
* @email - Your email goes here
* @website - Your website goes here
* @copyright (C) - Your copyright goes here
* @license - Type of license goes here
*/
Meta標籤程式碼聲明Joomla!的版權,還有你在管理後台裡輸入的資訊,這也讓你的動態頁面的標題隨著頁面的內容變化
<meta http-equiv="Content-Type" content="text/html; <?php echo _ISO; ?>" />
編輯程式碼這段程式碼叫出Joomla!內建的文字內容編輯器,這個功能可以讓使用者透過樣版(前台)來改變這個網站,取代透過管理員的控制面版(後台)。
<?php if ( $my->id ) { initEditor(); } ?>
CSS程式碼這段程式碼定義樣版呈現所需要的CSS(Cascading Style Sheet)樣式表 。
<?php
echo "<link rel=\"stylesheet\"
href=\"$GLOBALS[mosConfig_live_site]/templates/$GLOBALS[cur_template]/css/template_css.css\"
type=\"text/css\"/>" ; ?>
我們的樣版的 index.php標頭現在看起來應該跟下面所列的程式碼一樣。
我們把它複製進去樣版的
index.php檔案。
<?php
/**
* @version - Template version goes here
* @package - Name of the template goes here
* @author - Author's name goes here
* @email - Your email goes here
* @website - Your website goes here
* @copyright (C) - Your copyright goes here
* @license - Type of license goes here
*/
defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );
// needed to seperate the ISO number from the language file constant _ISO
$iso = split( '=', _ISO );
// xml prolog
echo '<?xml version="1.0" encoding="'. $iso[1] .'"?' .'>'; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<?php mosShowHead(); ?>
<?php if ( $my->id ) { initEditor(); } ?>
<meta http-equiv="Content-Type" content="text/html; <?php echo _ISO; ?>" />
<?php
echo "<link rel=\"stylesheet\"
href=\"$GLOBALS[mosConfig_live_site]/templates/$GLOBALS[cur_template]/css/template_css.css\"
type=\"text/css\"/>" ; ?>
</head>
那我就大發慈悲的告訴你吧 XD
-----------------------------------------------------------
1.錯版問題:
你說的錯版是指圖層重疊,或是div跑位吧?
如果你裝的版型是對應到正確的版本,基本上HTML是不會有問題的,有可能是因為你內文的圖或字超出設定的範圍,你可以修改圖片的大小或文章的長度,或是修改CSS的設定。另外在IE7、Firefox下正常,IE6跑掉,可能就是Box Model的問題。
2.空白畫面:
你指的是文章處空白,或是整頁空白呢?
文章處空白有可能跟錯版一樣,是內容大小超過容器(div)的長寬。整頁空白的話,可能是白頁的問題,解決方式可以看
Autoit的相關討論
-----------------------------------------------------------
其實Joomla!應該是因為比較新,所以很少人用吧。Joomla!的版型設計自由度很高,像我只懂XHTML+CSS,也可以自行設計Joomla!的版型,不像其他的CMS,程式碼跟版型很難分離,純美工的就很難入手去修改。不過CSS跟XHTML還是要會滴,
完全W3C手冊可以去逛逛,一起加油推廣Joomla! ^_^