C'est La Vie

    人生无彩排,每一天都是现场直播!

    WordPress 模板及目录函数整理

    WordPress 是目前世界上使用最广泛的博客系统,是一款开源的PHP软件,下面整理了一下制作WordPre […]

    WordPress 是目前世界上使用最广泛的博客系统,是一款开源的PHP软件,下面整理了一下制作WordPress主题的相关知识。

    WordPress主题加载顺序

    WP_CheatSheet_TemplateMap

    WordPress主题模板层次

    首页

    home.php
    index.php

    文章页

    single-{post_type}.php – 如果文章类型是videos(即视频),WordPress就会去查找single-videos.php(WordPress 3.0及以上版本支持)
    single.php
    index.php

    页面

    自定义模板 – 在WordPress后台创建页面的地方,右侧边栏可以选择页面的自定义模板
    page-{slug}.php – 如果页面的缩略名是news,WordPress将会查找 page-news.php(WordPress 2.9及以上版本支持)
    page-{id}.php – 如果页面ID是6,WordPress将会查找page-6.php
    page.php
    index.php

    分类

    category-{slug}.php – 如果分类的缩略名为news,WordPress将会查找category-news.php(WordPress 2.9及以上版本支持)
    category-{id}.php -如果分类ID为6,WordPress将会查找category-6.php
    category.php
    archive.php
    index.php

    标签

    tag-{slug}.php – 如果标签缩略名为sometag,WordPress将会查找tag-sometag.php
    tag-{id}.php – 如果标签ID为6,WordPress将会查找tag-6.php(WordPress 2.9及以上版本支持)
    tag.php
    archive.php
    index.php

    作者

    author-{nicename}.php – 如果作者的昵称为rami,WordPress将会查找author-rami.php(WordPress 3.0及以上版本支持)
    author-{id}.php – 如果作者ID为6,WordPress将会查找author-6.php(WordPress 3.0及以上版本支持)
    author.php
    archive.php
    index.php

    日期页面

    date.php
    archive.php
    index.php

    搜索结果

    search.php
    index.php

    404 (未找到)页面

    404.php
    index.php

    附件页面

    MIME_type.php – 可以是任何MIME类型 (image.php, video.php, audio.php, application.php 或者其他).
    attachment.php
    single.php
    index.php


    WordPress主题中对页面的判断

    <?php
    is_home()		// 是否为主页
    is_single()		// 是否为内容页(Post)
    is_page()		// 是否为内容页(Page)
    is_category()	 	// 是否为Category/Archive页
    is_tag()		// 是否为Tag存档页
    is_date()		// 是否为指定日期存档页
    is_year()		// 是否为指定年份存档页
    is_month()		// 是否为指定月份存档页
    is_day()		// 是否为指定日存档页
    is_time()		// 是否为指定时间存档页
    is_archive()		// 是否为存档页
    is_search()		// 是否为搜索结果页
    is_404()		// 是否为 “HTTP 404: Not Found” 错误页
    is_paged()		// 主页/Category/Archive页是否以多页显示
    ?>

    判断Tag在WordPress主题里常用于侧边栏(sidebar.php)模板文件


    WordPress模板header中常用函数

    <?php
    bloginfo('name')		// 博客名称(Title)
    bloginfo('stylesheet_url')	// CSS文件路径
    bloginfo('pingback_url')	// PingBack Url
    bloginfo('template_url')	// 模板文件路径
    bloginfo('version')		// WordPress版本
    bloginfo('atom_url')		// Atom Url
    bloginfo('rss2_url')		// RSS 2.o Url
    bloginfo('url')			// 博客 Url
    bloginfo('html_type')		// 博客网页Html类型
    bloginfo('charset')		// 博客网页编码
    bloginfo('description')		// 博客描述
    wp_title()			// 特定内容页(Post/Page)的标题
    ?>

    WordPress主题模板常用的函数

    <?php
    get_header()			// 调用Header模板
    get_sidebar()			// 调用Sidebar模板
    get_footer()			// 调用Footer模板
    the_content()			// 显示内容(Post/Page)
    the_time('字符串')		// 显示时间,时间格式由“字符串”参数决定,具体参考PHP手册
    comments_popup_link()		// 正文中的留言链接。如果使用 comments_popup_script,则留言会在新窗口中打开,反之,则在当前窗口打开
    the_title()			// 内容页(Post/Page)标题
    the_permalink()			// 内容页(Post/Page) Url
    the_category(',')		// 特定内容页(Post/Page)所属Category
    the_author()			// 作者
    the_ID()			// 特定内容页(Post/Page) ID
    edit_post_link()		// 如果用户已登录并具有权限,显示编辑链接
    get_links_list()		// 显示Blogroll中的链接
    comments_template()		// 调用留言/回复模板
    wp_list_pages()			// 显示Page列表
    wp_list_categories()	// 显示Categories列表
    next_post_link('%link')		// 下一篇文章链接
    previous_post_link('%link')	// 上一篇文章链接
    get_calendar()			// 日历
    wp_get_archives()		// 显示内容存档
    posts_nav_link()		// 导航,显示上一篇/下一篇文章链接
    include(TEMPLATEPATH . '/文件名')		// 嵌入其他文件,可为定制的模板或其他类型文件
    
    if(have_posts()):		// 检查是否存在Post/Page
    	while(have_posts()): the_post();	// 如果存在Post/Page则予以显示
    	endwhile;		// While 结束
    endif;				// If 结束
    ?>

    WordPress主题中与模板相关的其他函数

    <?php
    _e('Message')			// 输出相应信息
    wp_register()			// 显示注册链接
    wp_loginout()			// 显示登录/注销链接
    timer_stop(1)			// 网页加载时间(秒)
    echo get_num_queries()	// 网页加载查询量
    
    <!–next page->			// 将当前内容分页
    <!–more–>				// 将当前内容截断,以不在主页/目录页显示全部内容
    ?>

     

     

    发表回复

    您的电子邮箱地址不会被公开。 必填项已用*标注