get_page_by_title()
get_page_by_title( string $page_title, string $output =…
get_page_by_title( string $page_title, string $output = OBJECT, string|array $post_type = ‘page’ )
根据标题检索页面。
Retrieve a page given its title.
目录锚点:#说明#参数#返回#源码#笔记
说明(Description)
如果多篇文章使用同一标题,则返回ID最小的文章。注意:如果有多篇文章具有相同的标题,它将检查最早的发布日期,而不是最小的ID。
由于此函数使用MySQL“=”比较,$page_title通常与默认排序规则匹配为不区分大小写。
参数(Parameters)
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
$page_title | (string) | 必需 | 页面标题。 |
$output | (string) | 可选 | 所需的返回类型。数组或数组中的一个,分别对应于WP后对象、关联数组或数值数组。 |
$post_type | (string | array) | 可选 | Post类型或Post类型数组。 |
返回(Return)
(WP|Post|array|null)成功时为WP|Post(WP|Post|array|null),失败时为null。
源码(Source)
/** * Retrieve a page given its title. * * @since 2.1.0 * * @global wpdb $wpdb WordPress database abstraction object. * * @param string $page_title Page title * @param string $output Optional. Output type. OBJECT, ARRAY_N, or ARRAY_A. * Default OBJECT. * @param string|array $post_type Optional. Post type or array of post types. Default 'page'. * @return WP_Post|array|void WP_Post on success or null on failure */ function get_page_by_title( $page_title, $output = OBJECT, $post_type = 'page' ) { global $wpdb; if ( is_array( $post_type ) ) { $post_type = esc_sql( $post_type ); $post_type_in_string = "'" . implode( "','", $post_type ) . "'"; $sql = $wpdb->prepare( " SELECT ID FROM $wpdb->posts WHERE post_title = %s AND post_type IN ($post_type_in_string) ", $page_title ); } else { $sql = $wpdb->prepare( " SELECT ID FROM $wpdb->posts WHERE post_title = %s AND post_type = %s ", $page_title, $post_type ); } $page = $wpdb->get_var( $sql ); if ( $page ) { return get_post( $page, $output ); } }
更新版本 | 源码位置 | 使用 | 被使用 |
---|---|---|---|
3.0.0 | wp-includes/post.php:5024 | 0 | 4 |
笔记(Notes)
如何按标题查找WordPress页面ID,然后替换内容()
必须指出的是,该函数将忽略任何post_状态,因此如果它发现旧post是草稿,它将显示该结果。因此,如果需要根据post状态进行筛选,最好构建自己的查询。
如何按标题查找WordPress自定义文章类型
类别:WordPress 函数手册、
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
还没有任何评论,赶紧来占个楼吧!