Sử dụng WP_Screen
lớp mới giúp dễ dàng thêm văn bản trợ giúp vào màn hình.
<?php
add_action( "load-{$somepage}", 'wpse_load_reading' );
function wpse_load_reading()
{
get_current_screen()->add_help_tab( array(
'id' => 'my-help-tab',
'title' => __( 'My Title' ),
'content' => __( 'Help Content' )
) );
}
Điều này là tuyệt vời cho các trang tùy chỉnh. Nhưng khi thêm một tab trợ giúp vào một màn hình hiện có, giả sử options-reading.php
, một số điều kỳ lạ xảy ra.
Các load-options-reading.php
vụ cháy móc trước khi xây dựng trong trang WP thêm tab giúp đỡ của riêng mình. Nói cách khác, việc thêm một tab trợ giúp vào một màn hình hiện có sẽ đưa tất cả các tab trợ giúp tích hợp vào cuối danh sách.
Đây là một số mã, nếu bạn muốn dùng thử:
<?php
add_action( "load-options-reading.php", 'wpse_load_reading2' );
function wpse_load_reading2()
{
get_current_screen()->add_help_tab( array(
'id' => 'my-help-tab',
'title' => __( 'My Title' ),
'content' => __( 'Why is this tab above the built in tab?' )
) );
}
Có cách nào để sắp xếp lại các tab trợ giúp trên màn hình không?
BIÊN TẬP:
Tìm thấy một cách xung quanh này. Các tab trợ giúp mặc định được thêm vào trước khi admin-header.php
tập tin được bao gồm.
Vì vậy, bạn có thể nối vào load-{$built_in_page}
và từ đó móc một chức năng admin_head
chăm sóc thiết lập các tab trợ giúp của bạn.
<?php
add_action( 'load-options-reading.php', 'wpse45210_load' );
function wpse45210_load()
{
add_action( 'admin_head', 'wpse45210_add_help' );
}
function wpse45210_add_help()
{
get_current_screen()->add_help_tab( array(
'id' => 'my-help-tab',
'title' => __( 'My Title' ),
'content' => __( 'This tab is below the built in tab.' )
) );
}
Có vẻ giống như một hack. Có cách nào tốt hơn?
WP_Screen::$_help_tabs
là riêng tư. Thật không thể truy cập trực tiếp. Xem chỉnh sửa của tôi, tôi đã đề nghị thứ ba của bạn!