对于很多WordPress新手来说,不懂任何代码的情况下去瞎改WordPress主题,得出的效果往往会出现语法错误之类的东西或效果不尽人意。想要修改 WordPress主题模板文件最基本的当然要懂得HTML代码,熟悉DIV+CSS布局,PHP代码也得略懂一二。

不过一些比较简单易懂的代码和函数,学习起来并不难,用多改多了你就会记得它,同时这些基本的代码和函数对于一个WordPress 修改主题新手来说尤其重要,当然,我这里说所的是相对有兴趣修改WordPress主题模板的新手,注重网站内容的新手可以怀着学习的态度看这篇文章。

国内的一些WordPress主题大部分都是修改国外一些早期的英文主题,也有很多朋友喜欢汉化主题。修改这些主题当然离不开我上面提到的一些基本代码和函数,所以骆恒安特意搜索了一些平时在WordPress 主题模板文件里常遇到的基本代码与函数,借此分享给大家。

WordPress主题 – 基本模板文件

一套完整的WordPress主题应至少具有如下模板文件:

style.css : CSS(样式表)文件

index.php : 主页模板

archive.php : Archive/Category模板

404.php : Not Found 错误页模板

comments.php : 留言/回复模板

footer.php : Footer模板

header.php : Header模板

sidebar.php : 侧栏模板

page.php : 内容页(Page)模板

single.php : 内容页(Post)模板

searchform.php : 搜索表单模板

search.php : 搜索结果模板

当然,特指某个WordPress主题(现在的英文主题已经发展到了更加多元化的主题元素),可能不止这些文件,但一般而言,这些文件是每个WordPress主题基本必备的。

WordPress主题 - 判断Tag

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主题里常常应用于侧边栏(sidebay)模板文件,就比如 is_home()  ,例如你放了一段广告代码在侧边栏上,而又只想在主页上显示这个广告,那么就可以用到这个判断Tag了。

WordPress主题 – 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)的标题

WordPress主题 - 模板常用的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 . '/文件名'); ?> : 嵌入其他文件,可为定制的模板或其他类型文件

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

<?php _e('Message'); ?> : 输出相应信息

<?php wp_register(); ?> : 显示注册链接

<?php wp_loginout(); ?> : 显示登录/注销链接

<!–next page-> : 将当前内容分页

<!–more–> : 将当前内容截断,以不在主页/目录页显示全部内容

<?php timer_stop(1); ?> : 网页加载时间(秒)

<?php echo get_num_queries(); ?>: 网页加载查询量

搞懂上面的一些基本Tag和PHP代码对你修改WordPress起到很大的帮助,建议大家可以备份一下这篇文章,往后有需要用上可以拿来参考一下。当然,如果你是HTML老手,DVI+CSS高手,PHP圣手的话,就没有这个必要咯!

转自:http://www.cnblogs.com/tr550352743/archive/2012/08/08/2629173.html

(转)WordPress常用模板函数 修改或自制WordPress主题必备的更多相关文章

  1. WordPress主题模板层次和常用模板函数

    首页: home.php index.php 文章页: single-{post_type}.php – 如果文章类型是videos(即视频),WordPress就会去查找single-videos. ...

  2. wordpress教程之如何修改与制作wordpress的作者页面

    一.如何使用与创建作者页面 一般情况下,多数主题下都有author.php这个文件,这既是作者展示页面.如果发现自己正在使用的主题中没有author.php这个文件的话, Wordpress 会默认寻 ...

  3. wordpress教程之函数讲解

    wordpress函数收集 is_home() : 是否为主页is_single() : 是否为内容页(Post),   是否是单篇文章  is_page() : 是否为内容页(Page),   是否 ...

  4. NDK(10)Android.mk各属性简介,Android.mk 常用模板

    参考 : http://blog.csdn.net/hudashi/article/details/7059006 本文内容: Android.mk简介, 各属性表, 常用Android.mk模板 1 ...

  5. wordpress常用插件汇总

    WordPress之所以能成为目前最具人气的独立博客程序,除了无数爱好者为它开发的主题外,源源不断的插件支持也是重要的原因之一.wordpress的强大,也是在于无数爱好者源源不断的主题和插件. wo ...

  6. WP主题模板制作修改教程

    WP主题模板制作修改教程 实际上,当我们打开某个主题的文件夹时,看到的并不止这两个文件,而是更多.但一般来说,在一个完整的 WP 主题文件夹中都应该包含下列文件(也称为模板文件):页面 模板文件 用途 ...

  7. NDK(10)Android.mk各属性简介,Android.mk 常用模板--未完

    参考 : http://blog.csdn.net/hudashi/article/details/7059006 1. Android.mk简介 Android.mk文件是GNU Makefile的 ...

  8. 模板函数(template function)出现编译链接错误(link error)之解析

    总的结论:    将template function 或者 template class的完整定义直接放在.h文件中,然后加到要使用这些template function的.cpp文件中. 1. 现 ...

  9. WordPress的body_class()函数详解

    wordpress的body_class()函数,顾名思义,这个函数根据不同的页面类型为body标签生成class选择器,从而让设计人员可以各方便灵活的控制不同页面中的各个元素.本文对这一函数进行了详 ...

随机推荐

  1. 以json格式打印实体类信息

    1.pom.xml <dependency> <groupId>com.google.code.gson</groupId> <artifactId>g ...

  2. java反射简单实例

    这篇博友的总结的反射知识点是比较全面的 http://www.cnblogs.com/rollenholt/archive/2011/09/02/2163758.html 下面介绍我用反射做的两个功能 ...

  3. mongodb-win32-i386-3.0.6 使用常见错误

    1.Error parsing YAML config file: yaml-cpp: error at line 3, column 28: unknown escape character: m ...

  4. nohup、&、setsid、fork和fg、bg究竟有啥区别?

    目录 目录 1 1. 名词解释 1 2. 什么是守护进程? 2 2.1. 后台运行 2 2.2. 解释关系 2 3. 以"&"方式运行有何问题? 2 4. fork 2 5 ...

  5. 4D(DLG,DRG,DOM,DEM)

    基于“倾斜+LiDAR+车载”的实景三维建模实现:链接 MapGIS数据可不可以做到数据融合 遥感影像

  6. SDK管理利器——sdkman

    SDK管理利器--sdkman 项目使用java的开发者一定会为新配环境变量而头大,sdkman很好的解决了系统sdk管理的痛点,仅需简单的几行命令就可以完成sdk的安装,更改默认版本.再也不用担心环 ...

  7. CORS 跨域请求

    一.简介 CORS需要浏览器和服务器同时支持.目前,所有浏览器都支持该功能,IE浏览器不能低于IE10. 整个CORS通信过程,都是浏览器自动完成,不需要用户参与.对于开发者来说,CORS通信与同源的 ...

  8. MyBatis高级及其SSM框架搭建

    代码生成器 首先meaven项目中导入支持包 <dependencies> <!-- https://mvnrepository.com/artifact/mysql/mysql-c ...

  9. Python脱产8期 Day15 2019/4/30

    一 生成器send方法 1.send的工作原理# 1.send发生信息给当前停止的yield# 2.再去调用__next__()方法,生成器接着往下指向,返回下一个yield值并停止 2.例: per ...

  10. java学习笔记—实现一个类MyInputStream(28)

    1 实现一个类MyInputStream读取文件,且不能抛出异常 public class TestDemo { public static void main(String[] args) thro ...