站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
▼
建站程序
开发
服务器
办公软件
开发教程
▼
服务器教程
软件使用教程
运营教程
热门电子书
▼
CSS教程
WordPress教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
热点词条
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
WordPress:运转的The Loop
”(章节)
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
==默认的Loop== 下面内容是关于按部就班地查看Loop的使用,这个Loop伴随在WordPress1.5版本的标准安装的''默认'' 和''经典''主题。 ===开始 Loop=== 在默认<tt>index.php</tt>模板文件的顶端是[[WordPress:The Loop|The Loop]]的开始代码。 <pre><?php if (have_posts()) : ?><br /> <?php while (have_posts()) : the_post(); ?></pre> #首先它检查了文章是不是用这个<tt>have_posts()</tt>函数收集了。 #如果有文章,一个PHP<tt>[http://www.php.net/while while]</tt> loop就会开始运转。只要括号中的条件在逻辑上是真的,那么一个<tt>while</tt> loop就会继续执行。只要函数<tt>have_posts()</tt>返回了一个真值,Loop就会继续运行。 #函数<tt>have_posts()</tt>在文章收集的时候,只会检查下一篇文章:如果有下一篇文章,就会返回真;如果没有下一篇文章,就会返回假。 ===产生文章=== 函数<tt>the_post()</tt>在收集文章的时候,拿着当前的文章,并且使得当前的文章在Loop的反复中能够使用。没有了<tt>the_post()</tt>,你的主题中使用的许多的[[WordPress:Template Tags|模板标签]]都不能运行。 ====标题,日期和作者==== 下面的[[WordPress:Template Tags|模板标签]]得到了当前文章的标题,文章发表的时间,以及谁发表了这篇文章。 <pre> <h2 id="post-<?php the_ID(); ?>"> <a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"> <?php the_title(); ?></a></h2> <small><?php the_time('F jS, Y') ?> <!-- by <?php the_author() ?> --></small> </pre> ====文章内容==== <tt>[[WordPress:Template_Tags/the_content|the_content()]]</tt>模板标签显示了文章的内容。这是通过Loop的每篇文章的最重要的部分。 <pre> <div class="entry"> <?php the_content('Read the rest of this entry &raquo;'); ?> </div> </pre> 如果你包含了称作'''更多的'''[[WordPress:Write_Post_SubPanel#Quicktags|Quicktag]]按钮,而且这个按钮在你的文章主体显示为<tt>[[WordPress:Customizing_the_Read_More|<!--more-->]]</tt>,只有那一行<em>上面</em>的部分才会显示给访客。因此,如果你只想首页显示每篇文章的第一句话,或者前两句话,只要在你所写的文章中的第一行后插入<tt><!--more--></tt>,就可以了。 当你阅读一篇单一的文章的时候,<tt><!--more--></tt>分隔符就被跳过了。因此在你所有的文章中放入<tt><!--more--></tt>分隔符,如果读者想阅读所有的内容的话,这个分隔符会迫使读者来点击每篇单个的文章。 ====额外的详细信息==== 在<tt>index.php</tt>模板文件中的每篇文章的内容下面,有一个位置可以显示文章的更多的信息,例如类别,数据,评论信息。称作[[WordPress:Post_Meta_Data_Section|文章 meta 数据 部分]],如果你是一个注册过的用户,拥有足够的特权(或者文章的作者),你就会看见一个"编辑这个"链接,感谢<tt>[[WordPress:Template_Tags/edit_post_link|edit_post_link()]]</tt> 模板标签函数。 <pre> <p class="postmetadata"> Posted in <?php the_category(', ') ?> <strong>|</strong> <?php edit_post_link('Edit','','<strong>|</strong>'); ?> <?php comments_popup_link('No Comments »', '1 Comment »', '% Comments »'); ?></p> </pre> 如果写评论得到了激活,或者如果文章拥有评论,<tt>[[WordPress:Template_Tags/comments_popup_link|comments_popup_link()]]</tt>模板标签就会显示一个连接到评论的链接。如果你正在使用[[WordPress:Template_Tags/comments_popup_script|评论弹出窗口]],这个链接会打开评论窗口,否则的话,它就会跳到这篇关于这篇文章的评论。 如果访客正在访问文章的索引(''例如:'' Loop中有几篇文章), <tt>comments_popup_link()</tt>链接会将读者带到这篇文章的单个的网页。 ====Trackback 自动查找==== <tt>[[WordPress:Template_Tags/trackback_rdf|trackback_rdf]]</tt>模板标签的功能是要产出用于[[WordPress:Glossary#Trackback|trackback]]自动查找的,机器能够识别的代码。 <pre> <!-- <?php trackback_rdf(); ?> --> </pre> '''注:''' <tt>trackback_rdf()</tt>标签使用时,周围应该有[[WordPress:Commenting_Code|评论]]。 ===编辑Loop=== 以下的函数结束了Loop。这个函数执行之后,不同的与文章相关的模板标签,就不会像期望地那样运行(或者如果这些模板运行的话,它们会使用Loop中的最后一篇文章)。这意味着,如果你要使用一个模板标签,这个标签在''' Loop内部'''运行,你就要将这个标签放在这一点之前。 <pre> <?php endwhile; ?> </pre> 这个部分,就在结束Loop的后面,显示了通过每个网页而前进或者后退的导航控制。 <pre> <div class="navigation"> <div class="alignleft"><?php posts_nav_link('','','&laquo; Previous Entries') ?></div> <div class="alignright"><?php posts_nav_link('','Next Entries &raquo;','') ?></div> </div> </pre> 如果博客被设置为每个网页显示十篇文章,而且Loop使用的条件收集了25篇文章,那么会有三个网页需要导航:其中两个网页,每个网页有十篇文章,还有一个网页有五篇文章。导航链接能够使访客在收集的文章中,向前或者向后翻看。 The navigation controls are included <em>outside</em> The Loop, but <em>inside</em> the <tt>if</tt> condition, so that they only show up if there are any posts. The navigation functions themselves also check whether or not there is anything to which they will link, based on the current Loop, and only display links if there's something to link. 导航控制<em>不</em>包含在Loop中,但是包含<em>在</em><tt>假设</tt>条件中,因此只有有文章的时候,导航控制才会出现。导航函数本身也会以当前的Loop为基础,查看有没有它们可以链接的内容,而且只有在有一些可以链接的内容的情况下,导航函数才会显示链接。 <pre> <?php else : ?> <h2 class="center">Not Found</h2> <p class="center"> <?php _e("Sorry, but you are looking for something that isn't here."); ?></p> </pre> <tt>其它的 :</tt>字句决定了如果<tt>有_文章()</tt>(在顶端上方)是假的,应该执行什么。这就是说,只有Loop中没有文章的时候,'''其它的'''后面的内容才会得到执行/显示。例如,如果访客需要某天的文章,但是这一天没有文章,或者经过了搜索,但是没有产生结果,没有显示文章。 <pre> <?php endif; ?> </pre> 这个结束了条件测试"如果有文章,这样执行,如果没有文章,那样执行"。一旦条件测试结束了,默认的index.php模板然后包含工具条,最后包含页脚。
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)