in_the_loop()
云策文档标注
概述
in_the_loop() 是一个 WordPress 条件函数,用于检查当前代码执行是否在主循环(The Loop)内部。它返回布尔值,帮助开发者基于循环状态进行条件控制。
关键要点
- 函数返回 bool 类型:true 表示在循环内,false 表示循环未开始或已结束。
- 内部实现依赖于全局变量 $wp_query 的 in_the_loop 属性。
- 常用于主题开发中,结合其他条件标签(如 is_singular())来修改循环内的内容输出。
代码示例
function wpdocs_modify_single_post_entry_titles( $title ) {
if ( is_singular( 'post' ) && in_the_loop() ) {
/* Modify $title */
}
return $title;
}
add_filter( 'the_title', 'wpdocs_modify_single_post_entry_titles' );
原文内容
Determines whether the caller is in the Loop.
Description
For more information on this and similar theme functions, check out the Conditional Tags article in the Theme Developer Handbook.
Source
function in_the_loop() {
global $wp_query;
if ( ! isset( $wp_query ) ) {
return false;
}
return $wp_query->in_the_loop;
}
Changelog
| Version | Description |
|---|---|
| 2.0.0 | Introduced. |
Skip to note 2 content
Codex
Modify Single Post Entry Titles
For use in your functions file, this code example enables you to modify the default output of your entry titles.
function wpdocs_modify_single_post_entry_titles( $title ) { if ( is_singular( 'post' ) && in_the_loop() ) { /* Modify $title */ } return $title; } add_filter( 'the_title', 'wpdocs_modify_single_post_entry_titles' );