如何锁定在管理区域上创建的WooCommerce日期

问题描述 投票:-2回答:2

你好有人帮助我,关于我在woocommerce上的案例,我想锁定在后端区域添加订单时在woocommerce后端区域创建的日期。

我在这里找到了相同的案例 - link here

是否有任何可用的代码段不需要任何JavaScript

wordpress woocommerce code-snippets
2个回答
0
投票

我通过这个简单的CSS解决了我的问题,以便在订单后端禁用该日期...

.date-picker {pointer-events: none}

0
投票

我们去了。首先需要在子主题中创建一个admin.js文件。您可以将其放入名为js的文件夹中:

- ChildTheme
   - js
    - admin.js

在此之后,我们需要将此文件包含到WordPress中。为此,您需要将这部分代码放入functions.php文件中:

/**
 * Add ressources to dashboard page
 */
add_action( 'admin_enqueue_scripts', 'admin_enqueue_styles' );
function admin_enqueue_styles() {
    wp_enqueue_script( 'admin-js', get_stylesheet_directory_uri() . '/js/admin.js' );
}

现在你的admin.js在WordPress后端是已知的。现在打开文件并将其放入您的文件中以禁用WooCommerce订单的datetime输入:

jQuery(document).ready(function () {
    jQuery(".order_data_column .date-picker, .order_data_column .hour, .order_data_column .minute").prop('disabled', true);
});

保存并上传到您的服务器上。清理cookie并重新加载页面。现在应禁用日期和时间输入。请让我知道这对你有没有用。

UPDATE

如果要使用CSS,则不应仅禁用所有日期选择器类。我会在这里更具体,只是禁用你真正想要禁用的日期选择器:

.order_data_column .date-picker,
.order_data_column .hour,
.order_data_column .minute {
    pointer-events: none;
}

为了使它更加花哨,你可以将包装器的光标设置为不允许:

#order_data .order_data_column .form-field {
    cursor: not-allowed;
}

这进入你的admin.css文件。

Bot解决方案正在运行。它们都有优点和缺点。

JS解决方案基于HTML,因为它为每个指定的输入字段设置了disabled参数。这是一个后端代码解决方案。

CSS解决方案根本不会禁用输入。您只需禁用光标单击此特定字段。所以这是一个基于视图的解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.