通过在Wordpress中使用元键获取另一篇文章的post-id

时间:2017-10-02 09:39:00

标签: php wordpress

问题:如何使用get_post_meta()从其他帖子中访问post-id?

您好,我目前正在使用Wordpress网站,在这个网站上我想从另一个帖子访问post-id,我打算使用get_post_meta()数组,但我不知道如何使用它。我不确定在哪里可以找到$ key以及如何使用它?

到目前为止,这是我的代码......

发布1(我希望“回复”post-id的帖子。)

<?php
     $educator_meta= get_post_meta(get_the_id(), 'educator_id');
?>
<html>
      <div class="container">
             <?php 
                  echo "This is the post-id of the educator post: ", $educator_meta[0];
                  echo "This is the current posts post-id: ", get_the_ID();
             ?>
       </div>
</html>

发布2(我希望获得post-id的页面)。

    <?php
$current_educator_id = get_the_id();
$course_lessons = new WP_Query( array(
    'post_type'     => 'educator',
    'order'           => 'asc',
    'posts_per_page' => -1,
    'meta_query' => array(
        array(
            'key'     => 'educator_id',
            'value'   => $current_educator_id,
            'compare' => 'IN',
        ),
    ),
) );?>

2 个答案:

答案 0 :(得分:0)

用户第3个参数
$ key_1_value = get_post_meta(get_the_ID(),'key_1',true);
因为其默认值为false。

答案 1 :(得分:0)

如果你知道标题或slug,你可以使用其他更简单的方法。

$post = get_page_by_title( 'Your post title', OBJECT, 'post' );
$post_id = $post->ID;

如果您知道网址,也可以使用此网址:

$url = "whatever-url-to-post-here";
$postid = url_to_postid( $url );

两者都将为您返回ID - 第一种方法为您提供整个对象,因此您可以从中获取所有内容。

通过var_dump($ post);

查看

编辑:如果你真的想使用后元键,你可以通过这样做看到所有:

highlight_string("<?php\n\$data =\n" . var_export(get_post_meta(get_the_id()), true) . ";\n?>");

这将提供所有元键的易于阅读的概述。