仅获取更改产品可见性的时间戳



在WooCommerce中,当管理员已更改了产品的可见度(可见 - 隐藏)时,我想获得日期( timestamp )。

有什么想法如何做到这一点?

我尝试了上次编辑时间戳,但我想拥有 timestamp 仅此特定更改。

谢谢。

没有特定的时间戳仅可见性更改值。如果您更改产品中的其他内容,则最后一个编辑时间戳也将更改。

有一个解决方案在 'save_post' WordPress后端挂钩中挂接一个函数,您将在其中测试 $_REQUEST['visibility'] (或其他 $_POST['visibility'] 。/p>

如果为产品可见性设置了新值,我们创建/更新一个自定义 POST_META key 'visibility_timestamp' 使用修改时间戳 value

这是该代码:

add_action( 'save_post', 'custom_datestamp_for_product_visibility', 1, 1 );
function custom_datestamp_for_product_visibility( $post_id ){
    // Get the post object
    $post = get_post( $post_id );
    if( $post->post_type == 'product' ) {
        $visibility = $_REQUEST['visibility'];
        if(!empty($visibility))
        {
            // Current timestamp (now)
            $now = date('y-m-d H:i:s'); 
            // Creating (or updating) your visibility change timestamp 
            update_post_meta( $post_id, 'visibility_change', $today );
        }
    }
}

此代码已测试并且功能齐全。

代码在您的活动子主题(或主题)的function.php文件中。或在任何插件PHP文件中。

在您的代码中使用(使用产品ID获取可见性时间戳值):

$visibility_timestamp_change = get_post_meta( $product_id, '_visibility_change', true);

您还可以在自定义字段Metabox 中的管理产品编辑模式视图中访问此自定义字段值,在其中您将看到 visibility_change 自定义字段的值。<<<<<<<<<<<<<<<<<</p>

最新更新