自定義新增 widget(模組)

WordPress有很多方便且人性化的功能,像是後台的外觀 ► [ 模組 ] 功能就是可以很方便的自定義哪些功能區塊要顯示要如何排版等等,可以很人性化的直接拖移的方式來達成,如果嫌目前使用的主題的widget不夠用該怎辦? 再換一個主題? 到不如自己新增 widget 吧!! 還可以決定要顯示在哪個位置上,趕快來看教學讓自己的主題也有多個 widget 吧!!!

首先開啟主題目錄下的functions.php檔案並且在裡面最後一行的 ?> 之前一行加入以下程式碼:

if ( function_exists('register_sidebar') )
{
	register_sidebar(array('name' => 'widget1','before_widget' => '','after_widget' => '','before_title' => '','after_title' => ''));
}

程式碼解說:

'name' => 'widget1' // widget的名稱,用來識別後台的widget名稱,限英數字。
'before_widget' => '' // widget的內容前段HTML定義
'after_widget' => '' // widget的內容後段HTML定義
'before_title' => '' // widget的標題前段HTML定義
'after_title' => '' // widget的標題後段HTML定義

 

然後在index.php or sidebar.php這些檔案上加入以下程式碼:

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar(1) ) : ?>
<?php endif; ?>

當然不是隨便插入就可以,要約略看一下檔案程式碼後再插入,一般來說都是插在div標籤內。 如果你是要新增多個widget的話,照下面這樣新增就可,name的數值部份記得別重覆了。

if ( function_exists('register_sidebar') )
{
	register_sidebar(array('name' => 'widget1','before_widget' => '','after_widget' => '','before_title' => '','after_title' => ''));
	register_sidebar(array('name' => 'widget2','before_widget' => '','after_widget' => '','before_title' => '','after_title' => ''));
	register_sidebar(array('name' => 'widget3','before_widget' => '','after_widget' => '','before_title' => '','after_title' => ''));
}

如果你嫌 Arras Theme 這主題的widget不夠多或是想增加新的位置的話,
functions.php要改開啟arras-theme / library / launcher.php才找得到它預設的widget程式碼喔~

0 0 votes
Article Rating
Subscribe
Notify of
1 Comment
Inline Feedbacks
View all comments
阿勳
阿勳
11 years ago

若是想有格式性質呢?
例如:
產品名稱:
產品圖片:
產品優惠: