Acciones de fila para tipos de contenido personalizados
Estoy trabajando en un plugin que convierte un sitio en un portal de retroalimentación. Creé una nueva página de objeto, 'Feedbacks', que muestra todos los comentarios en formato tabular, y estoy usando register_column_headers($array_of_column_headers)
para crear mi tabla. Quisiera saber si es posible añadir mis propias acciones de fila a esta tabla, es decir, bajo cada comentario en la lista, acciones como 'aprobar', 'eliminar', 'lista negra', etc.
Leí el código y algunos tickets, y descubrí que se hace de esta manera: para entradas es post_row_actions
, para comentarios es comment_row_actions
, para medios es media_row_actions
y así sucesivamente. ¿Existe un filtro que me permita hacer algo como my-page-slug_row_actions
?

Cuando usas un tipo de entrada personalizado (custom post type), utilizas el hook de filtro post_row_actions
y verificas el tipo de entrada para modificarlo solo:
add_filter('post_row_actions','my_action_row', 10, 2);
function my_action_row($actions, $post){
//verifica tu tipo de entrada
if ($post->post_type =="feedbacks"){
/*haz lo que necesites aquí
puedes usar unset para eliminar acciones
y para añadir acciones ej:
$actions['in_google'] = '<a href="http://www.google.com/?q='.get_permalink($post->ID).'">verificar si está indexado</a>';
*/
}
return $actions;
}
Actualización rápida:
Gracias a somatic
si tu tipo de entrada personalizado es "jerárquico" entonces tu hook de acción es:
page_row_actions
.

Hola, ya utilicé 'post_row_actions' para agregar un enlace en las filas de publicaciones personalizadas. Pero quiero hacerlo para mi página de menú, que se agrega usando el hook 'add_object_page' (que es similar a 'add_menu_page').
add_object_page("Feedbacks", "Feedbacks", 10, "feedbacks-menu", "FeedbackMenuFunction");
add_submenu_page("feedbacks-menu", "Pending Feedbacks", "Pending", 10, "pending-feedbacks-menu", "PendingFeedbackMenuFunction")
Me preguntaba si podría hacer 'feedbacks-menu_row_actions(...)' (como se hace para otras páginas como 'Posts', 'Comments' etc. usando el slug de la página con row actions).

¿Es Feedback un tipo de publicación personalizada? Si es así, lee mi respuesta nuevamente.

¡No! 'Feedback' es un comentario sobre una publicación personalizada, junto con muchos metadatos para ese comentario. Estoy construyendo una sección completamente nueva con todos estos 'Feedbacks' listados en un solo lugar, desde donde el usuario puede previsualizarlos, aprobarlos, desaprobarlos y eliminarlos. Es similar a la página de 'Comentarios', pero diseñada personalmente solo para mostrar 'Feedbacks'.
Y descubrí cómo agregar row_actions a estas filas. Es solo el marcado, <td><div class='row-actions'><span class='edit'><a...>Tu Enlace</a></span></div></td>
. ¡WP agrega el CSS y jQuery y tienes el menú de acciones listo!

para aquellos que se están golpeando la cabeza contra el escritorio preguntándose por qué este código parece no hacer nada con su tipo de publicación personalizado, nota: si tu CPT es "jerárquico", entonces tu hook de filtro es "page_row_actions"
y NO "post_row_actions"
[se frota la cabeza]

Había probado page_row_actions con el slug de mi página de menú personalizado, pero no funciona, o tal vez me faltó algo. Pero revisé el código de un plugin premium muy famoso que añade acciones personalizadas a las filas de páginas, y vi que están añadiendo el marcado directamente a la tabla. Hice lo mismo y funciona perfectamente.
