站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
▼
建站程序
开发
服务器
办公软件
开发教程
▼
服务器教程
软件使用教程
运营教程
热门电子书
▼
CSS教程
WordPress教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
热点词条
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
WordPress:The Loop in Action
”(章节)
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
==默认 Loop== 接下来是一步一步的来看WordPress v1.5标准安装,默认情况下,''默认'' 和 ''经典''主题中loop用法。 === Loop开始=== 在默认<tt>index.php</tt>模板文件的顶部,是[[WordPress:The Loop|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>简单的在文章集合中检查下一个项目:如果有另外一个项目,返回true,如果没有下一个项目,返回false . ===生成文章=== <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> 如果你把'''more'''这个按钮包含到[[WordPress:Write_Post_SubPanel#Quicktags|Quicktag]],然后象这样<tt>[[WordPress:Customizing_the_Read_More|<!--more-->]]</tt>显示出来, 在你的文章的正文部分,只有<em>above</em>这部分才会显示给访问者。这样,如果你只是想让你的首页面显示每篇文章的第一句或者前两句话的话,只需要简单的在每篇文章的第一行之后插入 <tt><!--more--></tt>就可以了。 当查看某个单一的文章的时候,<tt><!-- more --></tt>分隔符会被忽略。这样如果读者想阅读全部内容,而又在所有的文章中都加如<tt><!-- more --></tt>分隔符的话,会迫使读者点击每个单独的文章。 ====详细资料附==== 在每个文章内容下边,在<tt>index.php</tt>模板文件中,是显示有关这个文章更多信息的地方,如分类,日期和评论信息。大家知道的[[WordPress:Post_Meta_Data_Section|文章meta数据部分]],如果你是一个已经登陆的有充分权限的使用者,你可会看见"Edit This"连接,这多亏了<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|评论弹出窗口]],这个连接就会打开评论窗口,否则它就会直接跳转到这篇文章的评论内容。 如果访问者在浏览文章索引(''i.e.:'' 在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> 如果blog设置成每页显示10篇文章,而且Loop收集到了25篇文章,这就会产生三个页面:两个10篇文章的页面,还有一个五篇的页面。导航连接允许访问者通过文章收集跳转到上一页还是下一页。 导航控制是<em>不包含</em>在Loop内的,但是<em>包含在</em><tt>if</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>else :</tt>语句决定了如果<tt>have_posts()</tt>返回false时做些什么。那就是说,'''else'''之后的部分只能在Loop没有文章时才会被显示。没有文章显示出来,举例来说,访问者要求某个特殊日子的内容,但是那天没有文章,或者是搜索但是没有结果。 <pre> <?php endif; ?> </pre> 这个语句结束了这样的条件句:"如果有文章这样,如果没有文章那样".一旦条件语句结束了,默认的index.php模板包括了边栏,最后是页脚。
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)