{"id":158,"date":"2026-09-23T19:08:56","date_gmt":"2026-09-23T11:08:56","guid":{"rendered":"https:\/\/annion.kingbig.idv.tw\/wedding\/?page_id=158"},"modified":"2026-09-23T19:08:56","modified_gmt":"2026-09-23T11:08:56","slug":"wedding-budget-calculator","status":"publish","type":"page","link":"https:\/\/wedplan.tw\/?page_id=158","title":{"rendered":"\u5a5a\u79ae\u9810\u7b97\u8a66\u7b97\u5668"},"content":{"rendered":"        <div id=\"wbc-67999\" class=\"wbc-wrap\"\n             data-wbc\n             data-ajax-url=\"https:\/\/wedplan.tw\/wp-admin\/admin-ajax.php\"\n             data-nonce=\"2b1cfda162\">\n            <style>\n            #wbc-67999{\n                --wbc-text:#302725;--wbc-muted:#6d625e;--wbc-line:#eadfd9;\n                --wbc-soft:#f8efeb;--wbc-accent:#9d5e55;--wbc-accent-dark:#7f4942;\n                max-width:960px;margin:24px auto;color:var(--wbc-text);font-size:16px;line-height:1.65\n            }\n            #wbc-67999 *{box-sizing:border-box}\n            #wbc-67999 .wbc-card{background:#fff;border:1px solid var(--wbc-line);border-radius:16px;padding:22px;margin-bottom:18px}\n            #wbc-67999 .wbc-kicker{margin:0 0 5px;color:var(--wbc-accent);font-size:15px}\n            #wbc-67999 h2{font-size:30px;line-height:1.25;margin:0 0 8px}\n            #wbc-67999 h3{font-size:20px;margin:0 0 12px}\n            #wbc-67999 .wbc-lead,#wbc-67999 .wbc-help{color:var(--wbc-muted);font-size:15px}\n            #wbc-67999 .wbc-topgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}\n            #wbc-67999 label span{display:block;margin-bottom:6px;font-size:16px}\n            #wbc-67999 input[type=\"number\"]{width:100%;min-height:46px;border:1px solid #cfc3bd;border-radius:10px;padding:9px 12px;font-size:17px;background:#fff;color:var(--wbc-text)}\n            #wbc-67999 input[type=\"number\"]:focus{outline:3px solid rgba(157,94,85,.13);border-color:var(--wbc-accent)}\n            #wbc-67999 .wbc-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}\n            #wbc-67999 button{min-height:44px;border-radius:10px;padding:9px 16px;font-size:16px;cursor:pointer}\n            #wbc-67999 .wbc-primary{border:1px solid var(--wbc-accent);background:var(--wbc-accent);color:#fff;font-weight:700;box-shadow:0 2px 6px rgba(127,73,66,.16)}\n            #wbc-67999 .wbc-primary:hover{background:var(--wbc-accent-dark);border-color:var(--wbc-accent-dark)}\n            #wbc-67999 .wbc-secondary{border:1px solid #d7c8c0;background:#fff;color:var(--wbc-accent-dark)}\n            #wbc-67999 .wbc-banquet-btn{padding:11px 18px;min-height:48px;font-size:16px}\n            #wbc-67999 .wbc-banquet-btn span{display:inline-block;margin-right:4px;font-size:19px;line-height:1}\n            #wbc-67999 .wbc-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}\n            #wbc-67999 .wbc-stat{background:var(--wbc-soft);border:1px solid var(--wbc-line);border-radius:14px;padding:18px}\n            #wbc-67999 .wbc-stat span{display:block;color:var(--wbc-muted);font-size:15px}\n            #wbc-67999 .wbc-stat strong{display:block;font-size:25px;line-height:1.25;margin-top:3px}\n            #wbc-67999 .wbc-over strong{color:#a13f34}\n            #wbc-67999 .wbc-table{width:100%;border-collapse:collapse}\n            #wbc-67999 .wbc-table th,#wbc-67999 .wbc-table td{padding:11px 8px;border-bottom:1px solid #eee3de;text-align:left;font-size:15px;vertical-align:middle}\n            #wbc-67999 .wbc-table th{color:var(--wbc-muted);font-weight:600}\n            #wbc-67999 .wbc-table td:first-child{width:38%}\n            #wbc-67999 .wbc-table input{min-width:130px}\n            #wbc-67999 .wbc-item-name strong{display:block;font-size:16px}\n            #wbc-67999 .wbc-item-name small{font-size:15px;color:var(--wbc-muted)}\n            #wbc-67999 .wbc-existing{white-space:nowrap;color:var(--wbc-muted);font-size:15px}\n            #wbc-67999 .wbc-status{min-height:1.6em;margin:10px 0 0;color:#356b51;font-size:15px}\n            #wbc-67999 .wbc-note{border:1px dashed #d7c8c0;background:#fbf8f5;border-radius:12px;padding:15px;margin-top:16px;font-size:15px}\n            @media(max-width:760px){\n                #wbc-67999 .wbc-topgrid,#wbc-67999 .wbc-summary{grid-template-columns:1fr}\n                #wbc-67999 .wbc-table,#wbc-67999 .wbc-table tbody,#wbc-67999 .wbc-table tr,#wbc-67999 .wbc-table td{display:block;width:100%}\n                #wbc-67999 .wbc-table thead{display:none}\n                #wbc-67999 .wbc-table tr{padding:12px 0}\n                #wbc-67999 .wbc-table td{border:0;padding:5px 0}\n                #wbc-67999 .wbc-table input{min-width:0}\n                #wbc-67999 h2{font-size:25px}\n            }\n            <\/style>\n\n            <section class=\"wbc-card\">\n                <p class=\"wbc-kicker\">\u5a5a\u79ae\u898f\u5283\u5de5\u5177<\/p>\n                <h2>\u5a5a\u79ae\u9810\u7b97\u8a66\u7b97\u5668<\/h2>\n                <p class=\"wbc-lead\">\u628a\u7e3d\u9810\u7b97\u62c6\u6210 13 \u985e\u5a5a\u79ae\u652f\u51fa\uff0c\u96a8\u6642\u78ba\u8a8d\u9084\u5269\u591a\u5c11\u9810\u7b97\uff1b\u767b\u5165\u5f8c\u53ef\u76f4\u63a5\u8b80\u53d6\u4e26\u5b58\u56de\u300c\u6211\u7684\u5a5a\u79ae\u300d\u3002<\/p>\n\n                <div class=\"wbc-topgrid\">\n                    <label>\n                        <span>\u5a5a\u79ae\u7e3d\u9810\u7b97\uff08NT$\uff09<\/span>\n                        <input type=\"number\" min=\"0\" step=\"1000\" data-total-budget value=\"\" placeholder=\"\u4f8b\u5982 500000\">\n                    <\/label>\n                    <label>\n                        <span>\u9810\u8a08\u684c\u6578<\/span>\n                        <input type=\"number\" min=\"0\" step=\"1\" data-table-count value=\"\" placeholder=\"\u4f8b\u5982 20\">\n                    <\/label>\n                    <label>\n                        <span>\u6bcf\u684c\u9810\u4f30\u9910\u8cbb\uff08NT$\uff09<\/span>\n                        <input type=\"number\" min=\"0\" step=\"100\" data-table-price value=\"\" placeholder=\"\u4f8b\u5982 18000\">\n                    <\/label>\n                <\/div>\n\n                <div class=\"wbc-actions\">\n                    <button type=\"button\" class=\"wbc-primary wbc-banquet-btn\" data-action=\"banquet\">\n                        <span aria-hidden=\"true\">\uff0b<\/span> \u8a08\u7b97\u4e26\u5e36\u5165\u300c\u5a5a\u5bb4\u5834\u5730\uff0f\u9910\u8cbb\u300d\n                    <\/button>\n                    <button type=\"button\" class=\"wbc-secondary\" data-action=\"calculate\">\u91cd\u65b0\u8a66\u7b97<\/button>\n                <\/div>\n                <p class=\"wbc-status\" data-banquet-status aria-live=\"polite\"><\/p>\n\n                <div class=\"wbc-summary\" aria-live=\"polite\">\n                    <div class=\"wbc-stat\">\n                        <span>\u76ee\u524d\u898f\u5283\u652f\u51fa<\/span>\n                        <strong>NT$ <b data-result=\"planned\">0<\/b><\/strong>\n                    <\/div>\n                    <div class=\"wbc-stat\" data-remaining-card>\n                        <span>\u5269\u9918\u53ef\u5206\u914d<\/span>\n                        <strong>NT$ <b data-result=\"remaining\">0<\/b><\/strong>\n                    <\/div>\n                    <div class=\"wbc-stat\">\n                        <span>\u9810\u7b97\u4f7f\u7528\u7387<\/span>\n                        <strong><b data-result=\"percent\">0<\/b>%<\/strong>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <section class=\"wbc-card\">\n                <h3>13 \u985e\u5a5a\u79ae\u652f\u51fa<\/h3>\n                <div style=\"overflow-x:auto\">\n                    <table class=\"wbc-table\">\n                        <thead>\n                            <tr>\n                                <th>\u9805\u76ee<\/th>\n                                <th>\u672c\u6b21\u898f\u5283\u9810\u7b97<\/th>\n                                                            <\/tr>\n                        <\/thead>\n                        <tbody>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u5a5a\u5bb4\u5834\u5730\uff0f\u9910\u8cbb<\/strong>\n                                    <small>\u5a5a\u5bb4<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"venue\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u5a5a\u7d17\u651d\u5f71<\/strong>\n                                    <small>\u5a5a\u7d17<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"wedding_photo\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u5a5a\u79ae\u651d\u5f71<\/strong>\n                                    <small>\u651d\u5f71<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"photographer\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u5a5a\u79ae\u9304\u5f71<\/strong>\n                                    <small>\u651d\u5f71<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"videographer\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u65b0\u5a18\u79d8\u66f8<\/strong>\n                                    <small>\u9020\u578b<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"makeup\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u5a5a\u7d17\u79ae\u670d\uff0f\u897f\u88dd<\/strong>\n                                    <small>\u670d\u88dd<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"dress_suit\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u559c\u9905<\/strong>\n                                    <small>\u559c\u9905<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"cake\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u559c\u5e16\uff0f\u5a5a\u79ae\u5c0f\u7269<\/strong>\n                                    <small>\u7528\u54c1<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"invitation_gifts\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u5a5a\u6212<\/strong>\n                                    <small>\u5a5a\u6212<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"rings\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u5a5a\u79ae\u4f48\u7f6e<\/strong>\n                                    <small>\u4f48\u7f6e<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"decoration\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u4e3b\u6301\uff0f\u6a02\u5718\uff0f\u97f3\u6a02<\/strong>\n                                    <small>\u6d41\u7a0b<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"host_music\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u4ea4\u901a\uff0f\u4f4f\u5bbf<\/strong>\n                                    <small>\u4ea4\u901a\u4f4f\u5bbf<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"transport_hotel\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                    <tr>\n                                <td class=\"wbc-item-name\">\n                                    <strong>\u5176\u4ed6\u8cbb\u7528<\/strong>\n                                    <small>\u5176\u4ed6<\/small>\n                                <\/td>\n                                <td>\n                                    <input\n                                        type=\"number\"\n                                        min=\"0\"\n                                        step=\"100\"\n                                        data-budget-item=\"other\"\n                                        value=\"\"\n                                        placeholder=\"0\"\n                                    >\n                                <\/td>\n                                                            <\/tr>\n                                                <\/tbody>\n                    <\/table>\n                <\/div>\n\n                                    <div class=\"wbc-note\">\u672a\u767b\u5165\u4e5f\u53ef\u4ee5\u8a66\u7b97\uff1b\u767b\u5165\u5f8c\u53ef\u628a\u9810\u7b97\u76f4\u63a5\u5b58\u5165\u300c\u6211\u7684\u5a5a\u79ae\u300d\u3002<\/div>\n                            <\/section>\n\n            <script>\n            (function(){\n                var root = document.getElementById(\"wbc-67999\");\n                if (!root || root.dataset.ready === '1') return;\n                root.dataset.ready = '1';\n\n                function money(n){\n                    n = Number(n || 0);\n                    return Number.isFinite(n) ? Math.max(0,n) : 0;\n                }\n\n                function calculate(){\n                    var total = money(root.querySelector('[data-total-budget]').value);\n                    var planned = 0;\n                    root.querySelectorAll('[data-budget-item]').forEach(function(el){\n                        planned += money(el.value);\n                    });\n                    var remaining = total - planned;\n                    var percent = total > 0 ? (planned \/ total * 100) : 0;\n\n                    root.querySelector('[data-result=\"planned\"]').textContent = Math.round(planned).toLocaleString('zh-TW');\n                    root.querySelector('[data-result=\"remaining\"]').textContent = Math.round(Math.abs(remaining)).toLocaleString('zh-TW');\n                    root.querySelector('[data-result=\"percent\"]').textContent = percent.toFixed(percent >= 100 ? 0 : 1);\n\n                    var card = root.querySelector('[data-remaining-card]');\n                    var label = card.querySelector('span');\n                    if (remaining < 0) {\n                        card.classList.add('wbc-over');\n                        label.textContent = '\u8d85\u51fa\u7e3d\u9810\u7b97';\n                    } else {\n                        card.classList.remove('wbc-over');\n                        label.textContent = '\u5269\u9918\u53ef\u5206\u914d';\n                    }\n                    return {total:total,planned:planned,remaining:remaining};\n                }\n\n                var totalInput = root.querySelector('[data-total-budget]');\n                var tableCountInput = root.querySelector('[data-table-count]');\n                var tablePriceInput = root.querySelector('[data-table-price]');\n                var banquetBtn = root.querySelector('[data-action=\"banquet\"]');\n                var calculateBtn = root.querySelector('[data-action=\"calculate\"]');\n                var saveBtn = root.querySelector('[data-action=\"save\"]');\n                var banquetStatus = root.querySelector('[data-banquet-status]');\n\n                function updateBanquetPreview(){\n                    var tables = money(tableCountInput ? tableCountInput.value : 0);\n                    var price = money(tablePriceInput ? tablePriceInput.value : 0);\n                    if (!banquetStatus) return;\n                    if (tables > 0 && price > 0) {\n                        var amount = Math.round(tables * price);\n                        banquetStatus.textContent =\n                            '\u9810\u8a08\u9910\u8cbb\uff1a' + Math.round(tables).toLocaleString('zh-TW') + ' \u684c \u00d7 NT$ ' +\n                            Math.round(price).toLocaleString('zh-TW') + ' \uff1d NT$ ' +\n                            amount.toLocaleString('zh-TW') +\n                            '\u3002\u6309\u4e0a\u65b9\u7d05\u8272\u6309\u9215\u5373\u53ef\u5e36\u5165\u3002';\n                    } else {\n                        banquetStatus.textContent = '';\n                    }\n                }\n\n                function applyBanquet(){\n                    var tables = money(tableCountInput ? tableCountInput.value : 0);\n                    var price = money(tablePriceInput ? tablePriceInput.value : 0);\n                    var venue = root.querySelector('[data-budget-item=\"venue\"]');\n\n                    if (!venue) {\n                        if (banquetStatus) banquetStatus.textContent = '\u627e\u4e0d\u5230\u300c\u5a5a\u5bb4\u5834\u5730\uff0f\u9910\u8cbb\u300d\u6b04\u4f4d\uff0c\u8acb\u91cd\u65b0\u6574\u7406\u9801\u9762\u3002';\n                        return;\n                    }\n                    if (tables <= 0 || price <= 0) {\n                        if (banquetStatus) banquetStatus.textContent = '\u8acb\u5148\u586b\u5beb\u300c\u9810\u8a08\u684c\u6578\u300d\u8207\u300c\u6bcf\u684c\u9810\u4f30\u9910\u8cbb\u300d\u3002';\n                        return;\n                    }\n\n                    var amount = Math.round(tables * price);\n                    venue.value = String(amount);\n\n                    \/\/ \u4e3b\u52d5\u89f8\u767c input\/change\uff0c\u8b93\u5176\u4ed6\u53ef\u80fd\u7684\u524d\u7aef\u7a0b\u5f0f\u4e5f\u80fd\u6536\u5230\u6b04\u4f4d\u5df2\u66f4\u65b0\u3002\n                    try {\n                        venue.dispatchEvent(new Event('input', {bubbles:true}));\n                        venue.dispatchEvent(new Event('change', {bubbles:true}));\n                    } catch (err) {}\n\n                    calculate();\n\n                    if (banquetStatus) {\n                        banquetStatus.textContent =\n                            '\u5df2\u5e36\u5165\uff1a' + Math.round(tables).toLocaleString('zh-TW') +\n                            ' \u684c \u00d7 NT$ ' + Math.round(price).toLocaleString('zh-TW') +\n                            ' \uff1d NT$ ' + amount.toLocaleString('zh-TW') +\n                            '\uff0c\u5a5a\u5bb4\u5834\u5730\uff0f\u9910\u8cbb\u5df2\u66f4\u65b0\u3002';\n                    }\n\n                    \/\/ \u6372\u5230\u5a5a\u5bb4\u5834\u5730\u6b04\u4f4d\u9644\u8fd1\uff0c\u8b93\u4f7f\u7528\u8005\u7acb\u5373\u770b\u5230 504000 \u5df2\u5beb\u5165\u3002\n                    try {\n                        venue.scrollIntoView({behavior:'smooth', block:'center'});\n                    } catch (err) {}\n                }\n\n                root.querySelectorAll('input[type=\"number\"]').forEach(function(el){\n                    el.addEventListener('input', function(){\n                        calculate();\n                        updateBanquetPreview();\n                    });\n                    el.addEventListener('change', function(){\n                        calculate();\n                        updateBanquetPreview();\n                    });\n                });\n\n                if (banquetBtn) {\n                    banquetBtn.addEventListener('click', function(e){\n                        e.preventDefault();\n                        applyBanquet();\n                    });\n                }\n\n                if (calculateBtn) {\n                    calculateBtn.addEventListener('click', function(e){\n                        e.preventDefault();\n                        calculate();\n                        updateBanquetPreview();\n                    });\n                }\n\n                if (saveBtn) {\n                    saveBtn.addEventListener('click', function(e){\n                        e.preventDefault();\n                        var btn = saveBtn;\n                        var status = root.querySelector('[data-status]');\n                        var total = money(totalInput ? totalInput.value : 0);\n                        if (total <= 0) {\n                            if (status) status.textContent = '\u8acb\u5148\u586b\u5beb\u5a5a\u79ae\u7e3d\u9810\u7b97\u3002';\n                            return;\n                        }\n\n                        var body = new URLSearchParams();\n                        body.set('action','wbc_save_to_my_wedding');\n                        body.set('nonce',root.getAttribute('data-nonce') || '');\n                        body.set('total_budget',String(total));\n\n                        root.querySelectorAll('[data-budget-item]').forEach(function(el){\n                            body.append('items[' + el.getAttribute('data-budget-item') + ']', String(money(el.value)));\n                        });\n\n                        btn.disabled = true;\n                        if (status) status.textContent = '\u5132\u5b58\u4e2d\u2026';\n\n                        fetch(root.getAttribute('data-ajax-url'),{\n                            method:'POST',\n                            credentials:'same-origin',\n                            headers:{'Content-Type':'application\/x-www-form-urlencoded; charset=UTF-8'},\n                            body:body.toString()\n                        })\n                        .then(function(r){return r.json();})\n                        .then(function(json){\n                            if (!json || !json.success) throw new Error(json && json.data && json.data.message ? json.data.message : '\u5132\u5b58\u5931\u6557\u3002');\n                            if (status) status.textContent = json.data.message;\n                        })\n                        .catch(function(err){\n                            if (status) status.textContent = err.message || '\u5132\u5b58\u5931\u6557\u3002';\n                        })\n                        .finally(function(){btn.disabled=false;});\n                    });\n                }\n\n                calculate();\n                updateBanquetPreview();\n            })();\n            <\/script>\n        <\/div>\n        \n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"_links":{"self":[{"href":"https:\/\/wedplan.tw\/index.php?rest_route=\/wp\/v2\/pages\/158"}],"collection":[{"href":"https:\/\/wedplan.tw\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/wedplan.tw\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/wedplan.tw\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wedplan.tw\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=158"}],"version-history":[{"count":0,"href":"https:\/\/wedplan.tw\/index.php?rest_route=\/wp\/v2\/pages\/158\/revisions"}],"wp:attachment":[{"href":"https:\/\/wedplan.tw\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=158"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}