在 wordpress 中默认启用 woocommerce 操作屏幕选项
Enable woocommerce actions screen option by default in wordpress
我正在构建一个插件,向订单页面上的 woocommerce 订单操作列添加一个新选项。为确保正确使用它,我想以编程方式确保呈现操作屏幕选项(如列中所示)。我进行了广泛的搜索,但在这个方向上找不到任何东西。将不胜感激。
我试过:
"unhiding" 操作选项卡添加一些 javascript。这不是方法,因为有很多动态内容,这只会弄乱界面。
安装 Simply Show Hooks 并尝试找到我可以挂钩的挂钩或过滤器。这也没有任何成功。
这个钩子也不起作用:default_hidden_meta_boxes
我认为这是一件很简单的事情,这让事情变得更加令人沮丧。
提前致谢:)
ps。用于说明我正在尝试启用的内容的屏幕截图
我的解决方案更多是基于希望取消选中的屏幕选项,但同样适用于要选中的选项,只是不包括这些选项。
将以下内容放入您的 functions.php 文件中,它将完美运行。如果用户已经设置了他们的首选项,请记住暂时删除条件。
// add_action('user_register', 'set_user_screen_options');
// This function will only fire when a new user is registered
add_action('admin_init', 'set_user_screen_options');
// Use this if you want it to work for users that already exist, just go to admin and reload once, then you can use only the function 'user_register'
function set_user_screen_options() {
$meta_key['hidden'] = 'manageedit-shop_ordercolumnshidden';
$meta_value = array(
'billing_address',
'shipping_address',
);
// set the default hiddens if it has not been set yet, you can remove this for testing, so it will work no matter the preferences saved
if ( ! get_user_meta( $user->ID, $meta_key['hidden'], true) ) {
update_user_meta( $user->ID, $meta_key['hidden'], $meta_value );
}
}
我发现的 $meta_key
值正在执行以下查询:
SELECT * FROM wp_usermeta WHERE meta_key LIKE '%hidden%'
本例中的 $meta_value
是每列的 ID 值,wc_actions
元值是不包括的值。
您可以在这里找到更多信息:How to set default screen options?
我正在构建一个插件,向订单页面上的 woocommerce 订单操作列添加一个新选项。为确保正确使用它,我想以编程方式确保呈现操作屏幕选项(如列中所示)。我进行了广泛的搜索,但在这个方向上找不到任何东西。将不胜感激。
我试过:
"unhiding" 操作选项卡添加一些 javascript。这不是方法,因为有很多动态内容,这只会弄乱界面。
安装 Simply Show Hooks 并尝试找到我可以挂钩的挂钩或过滤器。这也没有任何成功。
这个钩子也不起作用:default_hidden_meta_boxes
我认为这是一件很简单的事情,这让事情变得更加令人沮丧。 提前致谢:)
ps。用于说明我正在尝试启用的内容的屏幕截图
我的解决方案更多是基于希望取消选中的屏幕选项,但同样适用于要选中的选项,只是不包括这些选项。
将以下内容放入您的 functions.php 文件中,它将完美运行。如果用户已经设置了他们的首选项,请记住暂时删除条件。
// add_action('user_register', 'set_user_screen_options');
// This function will only fire when a new user is registered
add_action('admin_init', 'set_user_screen_options');
// Use this if you want it to work for users that already exist, just go to admin and reload once, then you can use only the function 'user_register'
function set_user_screen_options() {
$meta_key['hidden'] = 'manageedit-shop_ordercolumnshidden';
$meta_value = array(
'billing_address',
'shipping_address',
);
// set the default hiddens if it has not been set yet, you can remove this for testing, so it will work no matter the preferences saved
if ( ! get_user_meta( $user->ID, $meta_key['hidden'], true) ) {
update_user_meta( $user->ID, $meta_key['hidden'], $meta_value );
}
}
我发现的 $meta_key
值正在执行以下查询:
SELECT * FROM wp_usermeta WHERE meta_key LIKE '%hidden%'
本例中的 $meta_value
是每列的 ID 值,wc_actions
元值是不包括的值。
您可以在这里找到更多信息:How to set default screen options?