Extend Screen Options

时间:2014-06-09 作者:davidcondrey

我正在自定义WP管理员,并希望添加一个切换按钮,以在自定义管理员和默认管理员之间切换。我想把这个按钮放在屏幕选项下拉选项卡中。

有没有办法扩大这个地区?

在wp admin/includes/屏幕中。我找到的php

public function render_screen_meta() {
并试图将该函数复制到我的仪表板中。包含所有仪表板自定义项的php文件

function render_screen_meta() {
并将我所做的更改附加到默认函数中,但它可以工作。它没有导致错误,但无法更改函数。我尝试在我的仪表板中将其创建为公共功能。php文件,但PHPStorm不断给我一个错误,说“expecting语句”。我不太熟悉public的用法。

我正在尝试创建按钮,如下面的屏幕截图所示:enter image description here

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

为了改变或扩展WordPress核心的功能,WordPress在很大程度上依赖于操作和过滤器。我假设你对这方面有基本的了解,如果你不了解,你会的reading up on it in the Codex.

render_screen_metaWP_Screen 对象您不能通过在其他地方定义函数来覆盖is。public 确定类上下文中方法或属性的范围。如果您想了解这方面以及类和对象,我建议查看PHP manual 在他们身上。

有许多过滤器可用于修改WordPress核心行为的行为,包括用于更改屏幕选项内容的过滤器。此筛选器被称为screen_settings, 它位于wp-admin/includes/screen.php:990.

基本上,它允许您完全修改屏幕选项的内容。使用它,您可以自己添加交换机:

add_filter( \'screen_settings\', \'wpse148978_screen_settings\', 10, 2 );

function wpse148978_screen_settings( $screen_settings, $screen_instance ) {
    $screen_settings .= \'Wow, a button! <a href="#" class="button button-primary">Switch!</a>\';

    return $screen_settings;
}

结束