Php 如何从一页到另一页获取帖子ID

Php 如何从一页到另一页获取帖子ID,php,wordpress,Php,Wordpress,我已经在wordpress中创建了一个消息系统。每个用户都有一个咨询页面,还有一个带有特定菜单的边栏。当点击提交按钮时,管理员审查问题并回答。该消息将显示在同一咨询页面的收件箱侧栏菜单中 但是无论我尝试什么,都没有得到相应用户的回复消息。我的问题是,当我为收件箱定义链接时,没有传递id。稍后,在特定的页面中,无论哪个id调用它,只显示页面id,不显示其他内容 这是侧边栏代码: <li> <a href="<?php echo site_url();?>/in

我已经在wordpress中创建了一个消息系统。每个用户都有一个咨询页面,还有一个带有特定菜单的边栏。当点击提交按钮时,管理员审查问题并回答。该消息将显示在同一咨询页面的收件箱侧栏菜单中

但是无论我尝试什么,都没有得到相应用户的回复消息。我的问题是,当我为收件箱定义链接时,没有传递id。稍后,在特定的页面中,无论哪个id调用它,只显示页面id,不显示其他内容

这是侧边栏代码:

<li>
    <a href="<?php echo site_url();?>/inbox/?id=<?php echo get_current_user_id();?>"><i class="fa fa-sort-alpha-asc " aria-hidden="true"> </i> <span style="margin-left:10px;">Inbox</span>  </a>
</li>
  • 现在它带来了id=1。无论它是哪个用户

    这是收件箱代码:

    <?php
    global $post;
    $idd= $post->ID;
    
    $title= $post->post_title;
    var_dump($title);
    
    echo "<div class= 'col-lg-4'><table style='width:500px;'><tr><td><b>Reply:</b>&nbsp;".get_post_meta( $idd, 'docreply', true)."</td></tr></div>";
    
    echo "<div class= 'col-lg-4'><table style='width:500px;'><tr><td><b>Amount:</b>&nbsp;".get_post_meta( $idd, 'amount', true)."</td></tr></div>";
    

    您可以使用get_the_id()函数获取帖子id

    <?php
    echo get_the_ID();
    ?>
    

    您可以使用get\u the\u id()函数获取帖子id

    <?php
    echo get_the_ID();
    ?>
    

    消息数据保存在哪里

    我看到您使用当前登录用户的ID调用页面URL

    稍后,您将使用页面的ID,然后获取两个元数据并显示它们

    如果您使用的是post meta,请使用登录用户的ID,并使用get_user_meta-


    更多代码有助于更轻松地解决此问题:)

    消息数据保存在哪里

    我看到您使用当前登录用户的ID调用页面URL

    稍后,您将使用页面的ID,然后获取两个元数据并显示它们

    如果您使用的是post meta,请使用登录用户的ID,并使用get_user_meta-


    更多的代码将有助于更轻松地解决此问题:)

    最后,我找到了解决问题的方法。我将post_meta值更新到我的user_meta,在我需要显示数据的页面中,我调用了当前用户id并调用了user_meta

    最后我找到了问题的解决方案。我将post_meta值更新到我的用户_meta中,在我需要显示数据的页面中,我调用了当前用户id并调用了用户_meta

    感谢yu的帮助,但它只带来了当前页面id。我想在相应用户单击“收件箱”时传递其post id。您正在传递用户id。您可以获取不同的用户id,而不是帖子id。无论我尝试什么,我都无法获取包含管理员回复帖子元数据的帖子id\您可以创建
  • ,因为您的页面是收件箱,所以无法获取。所以每次它都会获得收件箱的帖子id。谢谢你的帮助,但它只会带来当前页面id。我想在相应用户单击“收件箱”时传递其帖子id。您正在传递用户id。您可以获取不同的用户id,而不是帖子id。无论我尝试什么,我都无法获取包含管理员回复帖子元数据的帖子id\您可以创建
  • ,因为您的页面是收件箱,所以无法获取。因此,每次它都会获得收件箱帖子id。如果与当前用户没有关系,那么所有用户在获取元数据时都会看到相同的信息。您应该将消息与用户关联,然后在页面上显示它们。我不确定post_meta是否会在这种情况下帮助你。我刚刚注意到你对下面答案的评论:“我的用户id是1,对应的post_id是13”你是否将此关系保存在数据库中的某个位置?不,我没有保存此关系,我正在尝试实现这一点。当管理员回答问题时,您可以向用户添加一个包含其收件箱页面ID的元。或者用其他方式分配。那么,我想你知道事情将如何发生。通过以用户ID作为参数访问inbox页面,您将获得相应的inbox ID(通过使用之前保存到的元),并在获取元时使用该ID。最好将每个问题保存为一个独立的帖子,而不是一个帖子类型——“问题”。这样,当用户发送一个问题时,你将把他们的ID添加到帖子中,然后在他们的收件箱页面上使用。如果与当前用户没有关系,所有用户在获取元数据时都会看到相同的信息。您应该将消息与用户关联,然后在页面上显示它们。我不确定post_meta是否会在这种情况下帮助你。我刚刚注意到你对下面答案的评论:“我的用户id是1,对应的post_id是13”你是否将此关系保存在数据库中的某个位置?不,我没有保存此关系,我正在尝试实现这一点。当管理员回答问题时,您可以向用户添加一个包含其收件箱页面ID的元。或者用其他方式分配。那么,我想你知道事情将如何发生。通过以用户ID作为参数访问inbox页面,您将获得相应的inbox ID(通过使用之前保存到的元),并在获取元时使用该ID。最好将每个问题保存为一个独立的帖子,而不是一个帖子类型——“问题”。这样,当用户发送问题时,您将把他们的ID添加到帖子中,然后在他们的收件箱页面上使用它。