问题描述

我正在开发一个插件,它将一个网站转换为反馈类型的门户。我创建了一个新的对象页面,’Feedbacks’ 显示所有的反馈是一个表格格式,我正在使用 register_column_headers($array_of_column_headers)来制作我的表。我想知道是否可以将自己的页面行操作添加到此表中,我的意思是在列表中的每个反馈下,像’approve’,’delete’,’blacklist’ 等操作。

我读了代码和几张门票,发现这样做:为了发布其 post_row_actionspost_row_actions,对 comment_row_actions 的评论,media_row_actions 的媒体等。有没有一个过滤器,让我做,my-page-slug_row_actions

最佳解决方案

使用自定义帖子类型时,请使用 post_row_actions 过滤器钩子,并检查帖子类型以仅修改它:

add_filter('post_row_actions','my_action_row', 10, 2);

function my_action_row($actions, $post){
    //check for your post type
    if ($post->post_type =="feedbacks"){
        /*do you stuff here
        you can unset to remove actions
        and to add actions ex:
        $actions['in_google'] = '<a href="http://www.google.com/?q='.get_permalink($post->ID).'">check if indexed</a>';
        */
    }
    return $actions;
}

快速更新:

感谢 somatic 如果你自定义帖子类型是”hierarchical” 那么你的动作钩是:page_row_actions

参考文献

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