【发布时间】:2017-04-24 16:09:11
【问题描述】:
我在 Wordpress 上有一个自定义管理页面,允许以某种需要的方式显示帖子。
每个帖子都表示为一张卡片,其中包含一个垃圾箱图标,用于将帖子发送到垃圾箱。这很容易:
<?php $trash_link = get_delete_post_link( $id ); ?>
<a href="<?= $trash_link ?>"><span class="dashicons dashicons-trash"></span></a>
当我目前正在查看已删除的帖子时,我想将此图标/链接替换为恢复图标/链接,但我无法弄清楚如何获取该链接,因为它似乎不存在 get_undelete_post_link() 或 @ 987654325@.
垃圾链接如下所示:
http://example.com/wp-admin/post.php?post=8459&action=trash&_wpnonce=937a7ccb5d
虽然取消垃圾链接看起来像:
http://example.com/wp-admin/post.php?post=8459&action=untrash&_wpnonce=53facd85e3
所以我尝试了:
<?php
$trash_link = get_delete_post_link( $id );
if ( $post->post_status == 'trash' ):
$restore_link = str_replace( 'trash', 'untrash', $trash_link );
endif;
这给出了一个明显正确的链接,但当然,它不起作用,因为 nonce 不验证。
我想我可以使用wp_create_nonce() 和wp_untrash_post() 构建自己的系统,但有没有更简单的方法?
【问题讨论】:
标签: wordpress