Рядкові дії для користувацьких типів публікацій?


16

Я працюю над плагіном, який перетворює сайт у портал зворотного зв’язку. Я створив нову сторінку об’єктів, "Відгуки", на якій відображаються всі відгуки, є табличний формат, і я використовую register_column_headers($array_of_column_headers)для створення своєї таблиці. Мені хотілося дізнатись, чи можна додати до цієї таблиці дії власних рядків на сторінці, я маю на увазі під кожним відгуком у списку такі дії, як "затвердити", "видалити", "чорний список" тощо.

Я прочитав код і пару квитків, і виявив, що це зроблено так: для публікацій, його post_row_actions, для коментарів comment_row_actions, для медіа media_row_actionsта ін. Чи є фільтр, який дозволяє мені це робити my-page-slug_row_actions?

Відповіді:


19

Під час використання спеціального типу публікації ви використовуєте 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;
}

Швидке оновлення:

завдяки соматичним , якщо ви призначеному для користувача посту типу «ієрархічна» , то ви дія гак: page_row_actions.


Чи $postє сфера застосування? hint hint ;)
t31os

@ t310s Виправлено @Bainternet сподіваюся, що ви не заперечуєте,)
kaiser

2
@kaiser: І покращили виправлення!
Ян Фабрі

Привіт, я вже використовував "post_row_action" для додавання посилання у спеціальні рядки публікацій. Але я хочу зробити це для своєї сторінки меню, яка додається за допомогою гака "add_object_page" (який схожий на "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") Мені було цікаво, чи можу я зробити "feedbacks-menu_row_action (...)" (так само, як це робиться для інших сторінок, таких як "Публікації", "Коментарі" тощо, використовуючи куточок сторінки з дії рядків).
Rutwick Gangurde

6
для тих з вас , б'ється голова на столі цікаво , чому цей код здається нічого не робити з призначеним для користувача типом поста, примітка: якщо ваш СРТ «ієрархічний», то ваш фільтр гачок "page_row_actions"і НЕ "post_row_actions" [треться голова]
соматичний
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.