WP:如何按标题获取某些帖子的ID

时间:2016-05-13 09:50:31

标签: php wordpress

我想通过标题获取帖子的 id
下面的脚本按ID显示帖子的内容。

  $content_post = get_post($postID);
  $content = $content_post->post_content;

  return apply_filters('the_content', $content);

我的目标是使用标题作为参数,以获取相关的ID。

3 个答案:

答案 0 :(得分:0)

您可以使用get_page_by_title。您可能有多个具有相同名称的帖子,因此可能会返回多个条目。

答案 1 :(得分:0)

请查看此代码吗?

$page = get_page_by_title(' Your page title '); // enter your page title

$pageID = $page->ID; 

echo $pageID;

有关详细信息,请参阅此链接get_page_by_title

答案 2 :(得分:0)

<强>描述

检索给定标题的帖子。如果多个帖子使用相同的标题,将返回ID最小的帖子。

因为这个函数使用MySQL&#39; =&#39;比较$ page_title通常会与默认整理匹配为不区分大小写。 使用

<?php 
 get_page_by_title( $page_title, $output, $post_type );
?>

<强>参数

$page_title
(string) (required) Page title
Default: None 

 $output
 (string) (optional) Output type. OBJECT, ARRAY_N, or ARRAY_A.
 Default: OBJECT 

$post_type
(string) (optional) Post type like 'page', 'post', 'product' etc.
Default: page 

返回值

(mixed) 
OBJECT, ARRAY_N, or ARRAY_A. 
找不到帖子时

为NULL。

wordpress codex 上查看。

另一种方法是:

问题

该功能可将帖子/页面名称转换为帖子/页面ID。

function get_id_by_post_name($post_name)
{
    global $wpdb;
    $id = $wpdb->get_var("SELECT ID FROM $wpdb->posts WHERE post_name = '".$post_name."'");
    return $id;
}

函数调用

在主题中的某处调用该函数。

<?php echo get_id_by_post_name('my-post-name'); ?>