问题描述

当我只知道 s lug 弦时,我正在尝试获取页面内容。

是否有一个功能,或一个简单的方法来做到这一点,或者这是通过 SQL 做的这种情况?

非常感谢

最佳解决方案

使用 get_posts()和参数 name 这是 slug:

$page = get_posts( array( 'name' => 'your-slug' ) );

if ( $page )
{
    echo $page[0]->post_content;
}

请注意,get_posts()中的帖子类型默认为'post'。如果你想要一个页面使用…

$page = get_posts(
    array(
        'name'      => 'your-slug',
        'post_type' => 'page'
    )
);

如果您希望所有公共帖子类型 (附件除外) 将帖子类型参数设置为'any'。然后,您可以获得多个结果,因为不同帖子类型的 s are 不是唯一的。

次佳解决方案

您可以使用 get_page_by_title()功能获取其标题的页面。

你可以这样使用 (假设你想显示内容):

$page = get_page_by_title('Your Title');
$content = apply_filters('the_content', $page->post_content);
echo $content;

BTW,使用 slug 获取页面:

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

$page = get_post(get_page_id_by_slug('my-slug'));

第三种解决方案

如果在有问题的 s 子的页面上

conditional tags 上阅读:is_page()也将 slug 作为参数。

因此,

if( is_page( 'your-slug' ) ) {
     // fetch content
}

会做你想要的

如果在另一页

如果您对如何在不在页面上的情况下基于 s to f etch 。 be be be be be be be be be be be be be be be be,,,,,,,,,,,,,,,,,,这在法典中没有记载。

以下将从 s will 中获取 ID:

$args = array(
    'name' => 'your-slug'
);
$posts_from_slug = get_posts( $args );

// echo fetched content
echo $posts_from_slug[0]->post_content;

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。