用户可选择的页面删除

时间:2014-09-25 作者:sunil

在我的WP多用户项目中,我正在设计一个从前端删除页面的模板(只有超级管理员才能访问后端管理面板)

我几乎达到了预期的效果,但当我按“Delete”时,该功能会删除所有页面。我只想删除所选页面。以下是我创建的代码:

<?php  $pages = get_pages(); 
  foreach ( $pages as $page ) {
 $option = \'<li>\';
$option .= \'<a href="\' . wp_delete_post( $page->ID ) . \'">\';
$option .= $page->post_title;
$option .= \'</a>\';
$option .= \'</li>\';
echo $option; }   ?>   
编辑2抱歉,我错过了一些更改

     <?php   $pages = get_pages();foreach ( $pages as $page ) {
 $option = \'<li>\';
$option .= $page->post_title;
// $option .= \'<a href="\' . wp_delete_post( $page->ID ) . \'">\';
$option .= \'Delete</a>\';
$option .= \'</li>\';
echo $option;  }   ?>   

1 个回复
最合适的回答,由SO网友:Diogo Gomes 整理而成

您正在删除包含该代码的所有页面,因为您正在触发函数wp\\u delete\\u post()。

您应该构建url来删除页面(或帖子),如下所示:

$delLink = wp_nonce_url( get_bloginfo(\'wpurl\') . "/wp-admin/post.php?action=delete&post=" . $page->ID, \'delete-post_\' . $page->ID);
因此,您的代码应该是:

$pages = get_pages(); 
foreach ( $pages as $page ) {
    $delLink = wp_nonce_url( get_bloginfo(\'wpurl\') . "/wp-admin/post.php?action=delete&post=" . $page->ID, \'delete-post_\' . $page->ID);
    $option = \'<li>\';
    $option .= \'<a href="\' . $delLink . \'">\';
    $option .= $page->post_title;
    $option .= \'</a>\';
    $option .= \'</li>\';
    echo $option;
}
干杯

结束

相关推荐

All pages lead to home

我最近从linux转到了windows主机,现在我所有的永久链接都重定向到了主页。我在“设置”->“永久链接”中选择了正确的结构,并在我的网站中显示了以下内容。配置。希望我犯了个愚蠢的错误-有什么想法吗? <rewrite> <rules> <!--rule name=\"Convert to lower case\" stopProcessing=\"true\">