其實現在的 WordPress 部落格主題作者製作 WordPress 主題的時候都會給主題新增上支援 Widget 功能效果,也僅有極少部分是不支援的,既然作者不讓它支援,但作為主題使用者可以為其新增支援 Widget 功能。部落格吧介紹下如果實現 WordPress 部落格支援 Widget(小工具) 功能。

兩欄 (單側欄) 主題 Widget 功能:

1. 登陸部落格後臺,點選 「外觀」 選項卡下的 「編輯」 選項進入當前主題編輯介面

2. 選擇主題支援函式檔案 functions.php,在<?php 和?> 之間新增以下函式程式碼

<?php
if(function_exists('register_sidebar')){
register_sidebar(array(
'before_widget'=>'<li >',// widget 的開始標籤
'after_widget'=>'</li>',// widget 的結束標籤
'before_title'=>'<h3>',// 標題的開始標籤
'after_title'=>'</h3>'// 標題的結束標籤
));
}
?>

3. 更新 functions.php 檔案後,選擇邊欄模板 sidebar.php,在其中新增以下程式碼

<div id="sidebar">
	<ul >
<?php// 如果沒有使用 Widget 才顯示以下內容, 否則會顯示 Widget 定義的內容if(!function_exists('dynamic_sidebar')||!dynamic_sidebar()):?>
	<!-- widget 1 -->
	<li >
		<h3> 標題 1</h3>
		<ul>
			<li> 條目 1.1</li>
			<li> 條目 1.2</li>
			<li> 條目 1.3</li>
		</ul>
	</li>
	<!-- widget 2 -->
	<li >
		<h3> 標題 2</h3>
		<ul>
			<li> 條目 2.1</li>
			<li> 條目 2.2</li>
			<li> 條目 2.3</li>
		</ul>
	</li>
<?phpendif;?>
	</ul>
</div>

4. 更新檔案後,主題就支援 Widget 了。

三欄 (兩側欄,如部落格吧當前主題) 主題 Wideget 功能:

1. 登陸部落格後臺,點選 「外觀」 選項卡下的 「編輯」 選項進入當前主題編輯介面

2. 選擇主題支援函式檔案 functions.php,在<?php 和?> 之間新增以下函式程式碼

<?phpif(function_exists('register_sidebar')){
	register_sidebar(array('name'=>'Sidebar_1',// 側邊欄 1 的名稱'before_widget'=>'<li >',// widget 的開始標籤'after_widget'=>'</li>',// widget 的結束標籤'before_title'=>'<h3>',// 標題的開始標籤'after_title'=>'</h3>'// 標題的結束標籤
 
	));
 
	register_sidebar(array('name'=>'Sidebar_2',// 側邊欄 2 的名稱'before_widget'=>'<li >',// widget 的開始標籤'after_widget'=>'</li>',// widget 的結束標籤'before_title'=>'<h3>',// 標題的開始標籤'after_title'=>'</h3>'// 標題的結束標籤
 
	));}?>

3. 更新 functions.php 檔案後,選擇其中一個邊欄模板 sidebar_l.php,在其中新增以下程式碼

<div id="sidebar_1">
	<ul >
<?php// 如果沒有在側邊欄 1 中使用 Widget 才顯示以下內容, 否則會顯示 Widget 定義的內容if(!function_exists('dynamic_sidebar')||!dynamic_sidebar('sidebar_1')):?>
	<!-- widget 1 -->
	<li >
		<h3> 標題 1</h3>
		<ul>
			<li> 條目 1.1</li>
			<li> 條目 1.2</li>
			<li> 條目 1.3</li>
		</ul>
	</li>
<?phpendif;?>
	</ul>
</div>

4. 選擇另一個邊欄模板 sidebar_r.php,在其中新增以下程式碼

<div id="sidebar_2">
	<ul >
<?php// 如果沒有在側邊欄 2 中使用 Widget 才顯示以下內容, 否則會顯示 Widget 定義的內容if(!function_exists('dynamic_sidebar')||!dynamic_sidebar('sidebar_2')):?>
	<!-- widget 2 -->
	<li >
		<h3> 標題 2</h3>
		<ul>
			<li> 條目 2.1</li>
			<li> 條目 2.2</li>
			<li> 條目 2.3</li>
		</ul>
	</li>
<?phpendif;?>
	</ul>
</div>

5. 更新檔案後,兩側欄主題就實現了 Wideget 功能了。

提示:如果實在不懂得怎麼新增的話,可以找一個支援 Wideget 的 WordPress 部落格主題開啟相關幾個主題檔案,檢視下程式碼的位置,然後效仿新增即可。

/div>

2012-11-10T15:30:13+08:00發表於:2012-11-10|WordPress|