首页 > 解决方案 > 从 Woocommerce REST API 获取今天日期的订单列表(默认)

问题描述

我正在使用 Woocmmerce REST API 来制作我们的Vue仪表板。因此,作为一项功能,我正在尝试列出今天的订单和本月的订单。我知道WooCommerce有日期过滤器,比如 after 和 before。

但实际上我需要将日期设置为默认日期(这意味着当前日期),以便我的客户可以在一天结束时(每天)查看今天的订单。 WooCommerce通常的时间戳是这样的2020-09-17T10:56:17。我无法将这个与当前日期和时间从00:00:00to匹配23:59:59,因此我可以检索今天的订单。

我的代码是这样的……我刚刚尝试像下面这样修改时间和日期,我知道这是一个愚蠢的修改,因为我是Vue的新手。

methods: {
    // Extract refresh logic into a method
    refreshData () {
        const today = new Date();
        const date = today.getFullYear()+'-'+(today.getMonth()+1)+'-'+today.getDate();
        const setStartTime = "00" + ":" + "00" + ":" + "00";
        const setCloseTime = "23" + ":" + "59" + ":" + "59";
     
        // Set start time
        const startCombineDateAndTime = date + 'T' + setStartTime; 
        //this.currenttime = dateTime;
        console.log("start" + startCombineDateAndTime);
     
        // Set close time
        const closeCombineDateAndTime = date + 'T' + setCloseTime; 
        //this.currenttime = dateTime;
        console.log("close" + closeCombineDateAndTime);

        axios.get('https://testing.com/wp-json/wc/v3/orders?after=startCombineDateAndTime&before=closeCombineDateAndTime&per_page=40&consumer_key=ck_123&consumer_secret=cs_456')
...

标签: javascriptphpvue.jswoocommerce

解决方案


看起来您没有在 axios 调用中正确应用时间戳。您可以使用 JS 的模板字符串语法来扩展值以调用正确的 URL:

axios.get(`https://testing.com/wp-json/wc/v3/orders?after=${startCombineDateAndTime}&before=${closeCombineDateAndTime}&per_page=40&consumer_key=ck_123&consumer_secret=cs_456`)

推荐阅读