介紹下wordpress載制作主題過程中需要常用到的一些函數,這些函數在主題開發過程中出現的頻率最高,也是個人在制作wordpress主題過程中的一些總結
今天介紹下wordpress載制作主題過程中需要常用到的一些函數,這些函數在主題開發過程中出現的頻率最高,也是個人在制作wordpress主題過程中的一些總結。
wordpress基本模版文件
先讓我們來看下wordpress主題開發需要的一些基本文件,
基本模板文件
文件名 | 描述 |
---|
style.css | 主題樣式文件 |
index.php | 首頁模板文件 |
header.php | 頭部模板文件 |
single.php | 單篇文章模板文件 |
archive.php | 存檔/分類模板文件 |
searchform.php | 搜索表單模板文件 |
search.php | 搜索模板文件 |
404.php | 404 模板文件 |
comments.php | 留言模板文件 |
footer.php | 底部模板文件 |
sidebar.php | 側邊欄模板文件 |
page.php | 靜態頁面模板文件 |
front-page.php | 靜態首頁模板文件 |
tag.php | 標簽存檔模板文件 |
category.php | 分類存檔模板文件 |
WordPress主題分類、文章、頁面、文章類型等模版都有規定的繼承規則和自定義方法
常用主題頭部函數
函數名 | 描述 |
---|
<?php bloginfo('url'); ?> | 站點根鏈接 |
<?php wp_title(); ?> | 文章或者靜態頁面標題 |
<?php bloginfo(‘name’); ?> | 站點名稱 |
<?php bloginfo(‘description’); ?> | 站點描述 |
<?php get_stylesheet_directory(); ?> | 樣式文件所在目錄 |
<?php bloginfo(‘stylesheet_url’); ?> | 樣式文件鏈接 |
<?php bloginfo(‘pingback_url’); ?> | pingback 鏈接 |
<?php bloginfo(‘template_url’); ?> | 模板文件所在目錄鏈接 |
<?php bloginfo(‘version’); ?> | WordPress 版本 |
<?php bloginfo(‘atom_url’); ?> | atom 鏈接 |
<?php bloginfo(‘rss2_url’); ?> | rss2 鏈接 |
<?php bloginfo(‘url’); ?> | 網站根鏈接 |
<?php bloginfo(‘html_type’); ?> | html 版本 |
<?php bloginfo(‘charset’); ?> | 字符集 |
常用主題導航菜單函數
//調用默認導航菜單
<?php wp_nav_menu(); ?>
//調用指定的導航菜單
<?php wp_nav_menu( array(‘menu’ => ‘Project Nav’ )); ?>
//基于分類的導航
<ul id=”menu”>
<li <?php if(is_home()) { ?> <?php } ?>>
<a href=”<?php bloginfo(‘home’); ?>”>Home</a></li>
<?php wp_list_categories(‘title_li=&orderby=id’);?>
</ul>
//基于頁面的導航
<ul id=”menu”>
<li <?php if(is_home()) { ?> <?php } ?>>
<a href=”<?php bloginfo(‘home’); ?>”>Home</a></li>
<?php wp_list_pages(‘sort_column=menu_order&depth=1&title_li=’);?>
</ul>
判斷函數
函數名 | 描述 |
---|
is_home() | 判斷是否為主頁 |
is_single() | 判斷是否為內容頁 |
is_category() | 判斷是否為Category/Archive頁 |
is_tag() | 判斷是否為Tag存檔頁 |
is_date() | 判斷是否為指定日期存檔頁 |
is_year() | 判斷是否為指定年份存檔頁 |
is_month() | 判斷是否為指定月份存檔頁 |
is_day() | 判斷是否為指定日存檔頁 |
is_time() | 判斷是否為指定時間存檔頁 |
is_archive() | 判斷是否為存檔頁 |
is_search() | 判斷是否為搜索結果頁 |
is_404() | 判斷是否為404錯誤頁 |
is_paged() | 主頁/Category/Archive頁是否以多頁顯示 |
is_user_logged_in() | 判斷用戶是否已登錄 |
header.php常用函數
<?php bloginfo('name'); ?> //博客名稱(Title)
?
<?php bloginfo('stylesheet_url'); ?> //CSS文件路徑
?
<?php bloginfo('pingback_url'); ?> // PingBack Url
?
<?php bloginfo('template_url'); ?> //模板文件路徑
?
<?php bloginfo('version'); ?> // WordPress版本
?
<?php bloginfo('atom_url'); ?> // Atom Url
?
<?php bloginfo('rss2_url'); ?> // RSS 2.o Url
?
<?php bloginfo('url'); ?> // 博客 Url
?
<?php bloginfo('html_type'); ?> // 博客網頁Html類型
?
<?php bloginfo('charset'); ?> // 博客網頁編碼
?
<?php bloginfo('description'); ?> : 博客描述
?
<?php wp_title(); ?> // 特定內容頁(Post/Page)的標題
復制
常用模板函數
函數名 | 描述 |
---|
<?php the_content(); ?> | 文章內容 |
<?php if(have_posts()): ?> | 檢查是否有文章 |
<?php while(have_posts()): the_post(); ?> | 顯示文章 |
<?php endwhile; ?> | 結束循環 |
<?php endif; ?> | 結束判斷 |
<?php get_header(); ?> | 頭部模板內容 |
<?php get_sidebar(); ?> | 側邊欄模板內容 |
<?php get_footer(); ?> | 底部模板內容 |
<?php the_time(‘m-d-y’); ?> | 顯示時間,格式為:’08-18-07′ |
<?php comments_popup_link(); ?> | 顯示到文章留言的鏈接 |
<?php the_title(); ?> | 文章標題 |
<?php the_permalink(); ?> | 文章鏈接 |
<?php the_category(); ?> | 文章分類 |
<?php the_author(); ?> | 文章作者 |
<?php the_ID(); ?> | 文章 ID |
<?php edit_post_link(); ?> | 文章編輯鏈接 |
<?php wp_list_bookmarks(); ?> | 友情鏈接列表 |
<?php comments_template(); ?> | 留言模板內容 |
<?php wp_list_pages(); ?> | 所有頁面列表 |
<?php wp_list_categories(); ?> | 所有分類列表 |
<?php next_post_link(‘%link’); ?> | 下一篇文章鏈接 |
<?php previous_post_list(‘%link’); ?> | 上一篇文章鏈接 |
<?php get_calendar(); ?> | 顯示文章日歷 |
<?php wp_get_archives(); ?> | 存檔鏈接列表 |
<?php posts_nav_link(); ?> | 上一篇和下一篇文章鏈接 |
<?php rewind_posts(); ?> | 重回開頭開始第二個循環 |
<?php get_permalink(); ?> | 獲取文章頁面固定鏈接 |
常用的PHP函數
<?php get_header(); ?>// 調用Header模板
?
<?php get_sidebar(); ?>// 調用Sidebar模板
?
<?php get_footer(); ?>// 調用Footer模板
?
<?php the_content(); ?>// 顯示內容(Post/Page)
?
<?php if(have_posts())// ?>// 檢查是否存在Post/Page
?
<?php while(have_posts())// the_post(); ?>// 如果存在Post/Page則予以顯示
?
<?php endwhile; ?>// While 結束
?
<?php endif; ?>// If 結束
?
<?php the_time('字符串') ?>// 顯示時間,時間格式由“字符串”參數決定,具體參考PHP手冊
?
<?php comments_popup_link(); ?>// 正文中的留言鏈接。如果使用 comments_popup_script() ,則留言會在新窗口中打開,反之,則在當前窗口打開
?
<?php the_title(); ?>// 內容頁(Post/Page)標題
?
<?php the_permalink() ?>// 內容頁(Post/Page) Url
?
<?php the_category(',') ?>// 特定內容頁(Post/Page)所屬Category
?
<?php the_author(); ?>// 作者
?
<?php the_ID(); ?>// 特定內容頁(Post/Page) ID
?
<?php edit_post_link(); ?>// 如果用戶已登錄并具有權限,顯示編輯鏈接
?
<?php get_links_list(); ?>// 顯示Blogroll中的鏈接
?
<?php comments_template(); ?>// 調用留言/回復模板
?
<?php wp_list_pages(); ?>// 顯示Page列表
?
<?php wp_list_categories(); ?>// 顯示Categories列表
?
<?php next_post_link('%link'); ?>// 下一篇文章鏈接
?
<?php previous_post_link('%link'); ?>// 上一篇文章鏈接
?
<?php get_calendar(); ?>// 日歷
?
<?php wp_get_archives() ?>// 顯示內容存檔
?
<?php posts_nav_link(); ?>// 導航,顯示上一篇/下一篇文章鏈接
?
<?php include(TEMPLATEPATH . '/文件名'); ?>// 嵌入其他文件,可為定制的模板或其他類型文件
復制
其他常用函數介紹
<?php _e('Message'); ?>// 輸出相應信息
?
<?php wp_register(); ?>// 顯示注冊鏈接
?
<?php wp_loginout(); ?>// 顯示登錄/注銷鏈接
?
<!–next page–>// 將當前內容分頁
?
<!–more–>// 將當前內容截斷,以不在主頁/目錄頁顯示全部內容
?
<?php timer_stop(1); ?>// 網頁加載時間(秒)
?
<?php echo get_num_queries(); ?>// 網頁加載查詢量