WordPress 主循环和全局变量

   
西安做网站 西安做网站 西安做网站

    

当我们制作 WordPress 插件的时候,首先必须要了解 WordPress 主循环和全局变量。这样,我们在制作插件的时候,就可以知道可以访问哪个变量,不能访问哪个变量。

对于特定的 WordPress Action 和 Filters,你可以很容易知道它们在主循环中哪里执行了。然而有时你在主循环中不想使用 action 或者 filter 而只想调用模板函数(template tag )。这时候,你需要非常了解你想访问的全局变量和可能得到的结果。

下面我将讲解 WordPress 主循环,以便你能更好理解哪些全局变量可以被主循环中的模板函数调用。

WordPress 主循环 — The WordPress Loop

WordPress 主循环是用来在一些页面上显示日志列表和在单篇日志页面页显示留言列表的。

在默认主题的 index.php 中,主循环是以下面这些代码开始的:

have_posts()和 the_post()这两个函数都是属性函数,它们可以访问到类 WP_Query 中的方法

have_posts 这个函数去查看当前显示的日志数是否达到了在 WordPress 后台设置的要显示的日志数,这个主循环将会继续直到达到为止。

如果你研究过 the_post 函数,你会发现它会搜索 $post 这个全局变量。 the_post 函数获取第一篇日志(随后的日志通过每次循环迭代获取),并设置日志的数据(如作者,多重-页面,等等),这些数据是 WordPress 全局的赋给 $post 这个变量,所以可以访问它。

在 the_post()函数被调用之后,你就可以使用许多模板函数和全局变量。

下面就是现在可用的模板函数的一些例子:

the_author:获取作者的名字。

the_title:显示当前日志的标题。

the_content:显示日志的内容。

the_permalink:显示日志的永久链接的 URL。

the_ID:显示日志的 ID。

下面是现在可用的全局变量:

全局变量 authordata,你可以使用以下代码调用它:      

                                                             global $authordata;

                                                   echo $authordata->display_name

通过 authordata 这个全局变量还可以让你获取:last_name,first_name,ID,user_email,user_url,user_login,description 和其他。

全局变量 post,你可以使用以下代码调用它:

 
global $post;
echo $post->post_title;

通过post这个全局变量还可以让你获取:ID,post_author,post_date,post_excerpt,comment_count 和其他。

全局变量 post ,你可以通过在一个函数中使用以下代码调用它:
 

通过这种方法获取的日志内容是没有经过过虑的。z


如global $post;

echo $post->post_content;

果你想按照你自己喜好去操纵日志的内容,比如自己设置日志内容的显示方式,通过这种方式获取的日志内容非常有用。

虽然没有快速的全局访问,但是 the_permalink 这个函数作的就是输出函数 get_permalink 在 $id 这个变量已经被设定情况下的结果。

全局变量 id ,你可以使用以下代码调用它:

 
global $id;
echo $id

一个模板函数的例子

假设你写了一个叫做 get_my_trackback 自定义的模板函数,它能够在留言循环中每次侦测到 trackback 的时候做出反应。我们将把这个函数放入 comment.php 模板文件的 foreach 留言循环中。

get_my_trackback 函数代码如下:

global $comment;
    if (empty($comment))
        return;
    if ($comment->comment_type != 'comment') {
        //do trackback stuff
    }
}

?>

comments 这个全局变量能够让你访问到当前留言的详细数据,所以可以让你对留言做任何事情。

结论

在这篇文章中,详细解析了 WordPress 主循环已和全局变量,所以在以后制作插件或者修改主题的时候可以非常灵活的使用它们。

 
上一篇:网络营销不单单是SEO 下一篇:西安网络公司-摩高互动科技有限公司
 
相关文章
我也要个 查看更多案例

最新案例

最新案例

上线新闻

品牌创意网站建设 上市公司网站建设 大型门户类网站建设 全方位网站运营代理
企业官方网站建设 电子商务网站建设 专题活动网站(MINISITE)

联系我们

业务电话:029/8882700613474510258

业务 QQ:  89775699传真: 029-88827006

E-mail:  89775699@qq.com售后QQ : 89775699

我们的认知

当对手还在将注意力停留在碎片化的互联网设计或程序实现时,畅网科技早已开始将数字品牌的建设和传播进一步整合。只有通过整体的互联网品牌分析,帮助品牌建立互联网品牌传播价值,并围绕价值建立品牌粘性,提升品牌与用户的互动,更好的帮助品牌传播,触发用户的行动力才是我们工作的终极目标,这正是一流品牌的成功秘诀。
不可否认,建立互联网品牌传播价值的确是门艺术,但互联网不同于艺术涂鸦,企业投资品牌绝不是希望品牌成为某个艺术家的实验品。互联网传播的对象是用户,用户拥有自己的文化体系,群落共性才是互联网品牌传播创意的源头,如果我们不能帮助企业激发目标用户的共鸣,产生购买冲动,那将是品牌的悲剧! 因此,互联网传播必须建立品牌传播价值,为梦想者创造梦想品牌,畅网科技与您同行!

Hi,Are you ready?

准备好开始了吗?
那就与我们取得联系吧

有一个互联网项目想和我们谈谈吗?您可以填写右边的表格,让我们了解您的项目需求,这是一个良好的开始,我们将会尽快与你取得联系。当然也欢迎您给我们写信或是打电话,让我们听到你的声音!

西安畅网科技 互联网整合营销

地址:西安市高新区科技二路77号光电园B座4单元302室 网址:www.xazuowangzhan.com

业务热线:029-88827006

大客户专线:13474510258

传真:029-88827006

E-mail:89775699@qq.com

合作意向表

您需要的服务

现有网站改版
我需要做微信营销
建设全新的企业网站
要找长期合作公司,需要年度服务
我需要做购物商城
我需要做系统平台

您最关注的地方

对功能要求比较高
对设计创意要求比较高
需要可以购物支付
搜索引擎排名

预算

3-5千 5-7千 7-9千 1万以上 大型项目需要招标

业务QQ 029/88827006 提交需求 西安网站建设畅网科技官网微信