{"id":5717,"date":"2026-08-31T12:09:39","date_gmt":"2026-08-31T04:09:39","guid":{"rendered":"https:\/\/rubasseroasters.com\/?page_id=5717"},"modified":"2026-08-31T16:49:48","modified_gmt":"2026-08-31T08:49:48","slug":"previous-exhibitions-kaohsiung-enexhibition-en","status":"publish","type":"page","link":"https:\/\/rubasseroasters.com\/zh\/previous-exhibitions-kaohsiung-enexhibition-en\/","title":{"rendered":"Previous Exhibitions Kaohsiung Exhibition"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u5c55\u540d\uff1aKAOHSIUNG EXHIBITION<br>\u82f1\u6587\uff1a<br>\u5206\u985e\uff1aTaiwan<br>\u5730\u9ede\uff1aKaohsiung<br>\u7c21\u4ecb\uff1aA record of our past exhibitions in southern Taiwan, featuring coffee roaster showcases, hands-on operation, live roasting, and coffee tasting.<br>\u4e3b\u5716\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgxkFJ3c.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgxkFJ3c.webp<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4ecb\u7d39\uff1aKaohsiung Exhibition is an important opportunity for us to connect with the coffee market in southern Taiwan and engage directly with local caf\u00e9 owners, entrepreneurs, roasters, and coffee professionals.<br>\u4ecb\u7d39\uff1aEach year, we showcase our coffee roasters and roasting technologies, along with hands-on demonstrations, live roasting, coffee tasting, product introductions, and professional consultations.<br>\u4ecb\u7d39\uff1aThrough continued participation, we bring our coffee roasters closer to local users while gaining a better understanding of market needs, roasting applications, and user preferences in southern Taiwan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u91cd\u9ede\uff1aHands-on Coffee Roaster Experience<br>\u91cd\u9ede\uff1aLive Roasting &amp; Coffee Tasting<br>\u91cd\u9ede\uff1aEvent-Exclusive Offers<br>\u91cd\u9ede\uff1aOne-on-One Professional Consultation<br>\u91cd\u9ede\uff1aNew Coffee Roaster Showcase &amp; Latest Technology<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5217\u8868\uff1a<a href=\"https:\/\/rubasseroasters.com\/previous-exhibitions-en\/\">https:\/\/rubasseroasters.com\/previous-exhibitions-en\/<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5e74\u4efd\uff1a2026<br>\u5834\u5730\uff1a<br>\u8aaa\u660e\uff1a<br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgdn238J.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgdn238J.webp<\/a><br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgJ1WAbq.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgJ1WAbq.webp<\/a><br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgHZIs2F.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgHZIs2F.webp<\/a><br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgjauYo2.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgjauYo2.webp<\/a><br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimg3xSbpg.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimg3xSbpg.webp<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5e74\u4efd\uff1a2024<br>\u5834\u5730\uff1a<br>\u8aaa\u660e\uff1a<br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgxkFJ3c.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgxkFJ3c.webp<\/a><br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgbgbQLN.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgbgbQLN.webp<\/a><br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgtHAKAC.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgtHAKAC.webp<\/a><br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgyJ5Ao3.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgyJ5Ao3.webp<\/a><br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgcehsNk.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgcehsNk.webp<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5e74\u4efd\uff1a2018<br>\u5834\u5730\uff1a<br>\u8aaa\u660e\uff1a<br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgg4Z9SR.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgg4Z9SR.webp<\/a><br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgbHSFeu.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgbHSFeu.webp<\/a><br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimg6yenZx.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimg6yenZx.webp<\/a><br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgbDrg0E.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgbDrg0E.webp<\/a><br>\u7167\u7247\uff1a<a href=\"https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgWPU4v8.webp\">https:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgWPU4v8.webp<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     \u55ae\u4e00\u5c55\u89bd\u8a73\u60c5\u9801 \u986f\u793a\u7a0b\u5f0f\uff5c\u8cbc\u9032 WordPress \u7684\u300c\u81ea\u8a02 HTML \/ Custom HTML\u300d\u5340\u584a\n     \u9019\u500b\u5340\u584a\u8981\u653e\u5728\u300c\u6587\u5b57\u5340\u584a\u300d\u7684\u4e0b\u9762\u3002\u8a2d\u5b9a\u4e00\u6b21\u5c31\u597d\uff0c\u4e4b\u5f8c\u90fd\u4e0d\u7528\u518d\u52d5\u5b83\u3002\n     \u8981\u6539\u5167\u5bb9\u8acb\u6539\u4e0a\u9762\u90a3\u500b\u6587\u5b57\u5340\u584a\uff08\u7bc4\u672c\uff1adetail-text-content.txt\uff09\u3002\n     \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<style>\n.rbxd{--rbxd-c:#b58650;--rbxd-d:#202020;--rbxd-m:#77716a;--rbxd-l:#ded9d1;--rbxd-s:#eee7dd;max-width:1240px;margin:0 auto;padding:34px 22px 90px;color:var(--rbxd-d);font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",\"Noto Sans TC\",\"Microsoft JhengHei\",sans-serif}\n.rbxd *{box-sizing:border-box}\n.rbxd button{font:inherit}\n\n\/* \u5171\u7528\u5143\u4ef6 *\/\n.rbxd .rbxd-kicker{margin:0 0 8px;color:#76502d;font-size:12px;font-weight:700;letter-spacing:.16em}\n.rbxd .rbxd-title{margin:0;font-size:clamp(34px,5vw,58px);line-height:1.08}\n.rbxd .rbxd-lead{max-width:680px;margin:16px 0 0;color:var(--rbxd-m);line-height:1.8}\n.rbxd .rbxd-pill{display:inline-block;padding:6px 10px;border-radius:99px;background:var(--rbxd-s);color:#76502d;font-size:11px;font-weight:700;letter-spacing:.08em}\n.rbxd .rbxd-btn{display:inline-flex;align-items:center;gap:7px;color:var(--rbxd-d);font-size:14px;font-weight:700;text-decoration:none}\n.rbxd .rbxd-btn:hover{color:#76502d}\n.rbxd .rbxd-photo{position:relative;overflow:hidden;border-radius:20px;background:linear-gradient(135deg,rgba(181,134,80,.16),rgba(255,255,255,.25)),repeating-linear-gradient(45deg,#ece8e1,#ece8e1 14px,#e3ded6 14px,#e3ded6 28px)}\n.rbxd .rbxd-photo.is-empty::after{content:\"\u7167\u7247\u9810\u7559\u5340\";position:absolute;top:14px;right:14px;padding:6px 10px;border-radius:99px;background:rgba(255,255,255,.86);color:var(--rbxd-m);font-size:11px}\n.rbxd .rbxd-photo .rbxd-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;margin:0;max-width:none;border-radius:inherit}\n\n\/* Hero *\/\n.rbxd .rbxd-hero{display:grid;grid-template-columns:1fr 1.05fr;gap:34px;align-items:center}\n.rbxd .rbxd-hero .rbxd-photo{min-height:420px}\n.rbxd .rbxd-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}\n\n\/* \u4e8b\u5be6\u5217 *\/\n.rbxd .rbxd-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:38px 0 0;border:1px solid var(--rbxd-l);border-radius:18px;background:var(--rbxd-l);overflow:hidden}\n.rbxd .rbxd-fact{padding:20px 22px;background:#fff}\n.rbxd .rbxd-fact dt{margin:0 0 7px;color:var(--rbxd-m);font-size:12px;letter-spacing:.06em}\n.rbxd .rbxd-fact dd{margin:0;font-size:20px;font-weight:700}\n\n\/* \u5340\u6bb5\u6a19\u982d *\/\n.rbxd .rbxd-sec{margin-top:62px}\n.rbxd .rbxd-sec-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--rbxd-l)}\n.rbxd .rbxd-sec-head h2{margin:0;font-size:26px;line-height:1.3}\n.rbxd .rbxd-sec-head p{margin:0;color:var(--rbxd-m);font-size:13px}\n\n\/* \u4ecb\u7d39\u6587\uff0b\u5074\u6b04 *\/\n.rbxd .rbxd-intro{display:grid;grid-template-columns:1fr 320px;gap:34px;margin-top:24px}\n.rbxd .rbxd-intro.is-solo{grid-template-columns:1fr}\n.rbxd .rbxd-intro p{margin:0 0 16px;line-height:1.9;color:#3c3a36}\n.rbxd .rbxd-side{padding:22px;border:1px solid var(--rbxd-l);border-radius:18px;align-self:start}\n.rbxd .rbxd-side h3{margin:0 0 14px;font-size:15px}\n.rbxd .rbxd-side ul{margin:0;padding-left:18px;color:var(--rbxd-m);line-height:1.9;font-size:14px}\n\n\/* \u5e74\u4efd\u5207\u63db *\/\n.rbxd .rbxd-years{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0 22px}\n.rbxd .rbxd-years button{padding:9px 16px;border:1px solid var(--rbxd-l);border-radius:99px;background:#fff;color:var(--rbxd-d);cursor:pointer}\n.rbxd .rbxd-years button:hover{border-color:var(--rbxd-c);color:#76502d}\n.rbxd .rbxd-years button.is-on{border-color:var(--rbxd-c);background:var(--rbxd-c);color:#fff}\n\n\/* \u55ae\u4e00\u5e74\u4efd\u5167\u5bb9 *\/\n.rbxd .rbxd-year-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px}\n.rbxd .rbxd-year-head h3{margin:0;font-size:22px;line-height:1.3}\n.rbxd .rbxd-venue{color:var(--rbxd-m);font-size:14px}\n.rbxd .rbxd-note{margin:0 0 22px;max-width:760px;color:var(--rbxd-m);line-height:1.85}\n\n\/* \u7167\u7247\u7246\uff1a\u4e00\u5f35\u4e3b\u5716 + \u56db\u5f35\u5c0f\u5716 *\/\n.rbxd .rbxd-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}\n.rbxd .rbxd-gallery .rbxd-photo{min-height:180px}\n.rbxd .rbxd-gallery .rbxd-photo:first-child{grid-column:span 2;grid-row:span 2;min-height:374px}\n\n\/* \u9801\u5c3e\u5c0e\u89bd *\/\n.rbxd .rbxd-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:56px;padding-top:26px;border-top:1px solid var(--rbxd-l)}\n.rbxd .rbxd-go{display:inline-block;padding:12px 20px;border-radius:99px;background:var(--rbxd-d);color:#fff;text-decoration:none;font-size:13px;font-weight:700}\n.rbxd .rbxd-go:hover{background:#000;color:#fff}\n.rbxd .rbxd-nav-side{display:flex;flex-wrap:wrap;gap:18px}\n\n.rbxd-warn{max-width:1240px;margin:0 auto;padding:18px 22px;border-left:4px solid #c0392b;background:#fdf1f0;color:#7a2018;font-family:-apple-system,BlinkMacSystemFont,\"Noto Sans TC\",sans-serif;line-height:1.8}\n\n@media(max-width:980px){\n  .rbxd .rbxd-hero{grid-template-columns:1fr}\n  .rbxd .rbxd-hero .rbxd-photo{min-height:300px;order:-1}\n  .rbxd .rbxd-intro{grid-template-columns:1fr}\n  .rbxd .rbxd-facts{grid-template-columns:repeat(2,1fr)}\n}\n@media(max-width:650px){\n  .rbxd{padding:24px 16px 64px}\n  .rbxd .rbxd-facts{grid-template-columns:1fr}\n  .rbxd .rbxd-gallery{grid-template-columns:repeat(2,1fr)}\n  .rbxd .rbxd-gallery .rbxd-photo:first-child{grid-column:span 2;grid-row:auto;min-height:220px}\n}\n<\/style>\n\n<script>\n(function () {\n'use strict';\n\nvar MAX_PHOTOS = 5;   \/* \u6bcf\u5e74\u6700\u591a\u986f\u793a 5 \u5f35\uff08\u4e00\u5927\u56db\u5c0f\uff09\uff0c\u591a\u586b\u7684\u4e0d\u986f\u793a *\/\n\nvar me = document.currentScript;\nif (!me) return;\n\n\/* \u2500\u2500 1. \u627e\u51fa\u4e0a\u65b9\u7684\u6587\u5b57\u5340\u584a\u4e26\u8b80\u53d6\u5167\u5bb9 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n\n\/\/ \u4e00\u884c\u8cc7\u6599\u9577\u9019\u6a23\uff1a\u300c\u5e74\u4efd\uff1a2026\u300d\u6216\u300c\u7167\u7247\uff1ahttps:\/\/...\u300d\nvar LINE = \/^(?:\\d+(?:\\.\\d+)?\\s*[.\u3001)]?\\s*)?([^\uff1a:]{1,8})\\s*[\uff1a:]\\s*([\\s\\S]*)$\/;\nvar KEYS = {\n\t'\u5c55\u540d': 'name', '\u82f1\u6587': 'en', '\u5206\u985e': 'category', '\u5730\u9ede': 'city',\n\t'\u7c21\u4ecb': 'lead', '\u4e3b\u5716': 'hero', '\u4ecb\u7d39': 'intro', '\u91cd\u9ede': 'point',\n\t'\u5217\u8868': 'back', '\u4e0a\u4e00\u500b': 'prev', '\u4e0b\u4e00\u500b': 'next',\n\t'\u5e74\u4efd': '_year', '\u5834\u5730': 'venue', '\u8aaa\u660e': 'note', '\u7167\u7247': 'photo'\n};\nvar YEAR_KEYS = { venue: 1, note: 1, photo: 1 };\n\nfunction collectFrom(node) {\n\tvar els = [], text = [];\n\tvar p = node.previousElementSibling;\n\twhile (p) {\n\t\tvar t = (p.innerText || p.textContent || '');\n\t\tvar hit = t.split(\/\\r?\\n\/).some(function (l) {\n\t\t\tvar m = l.trim().match(LINE);\n\t\t\treturn m && KEYS.hasOwnProperty(m[1].trim());\n\t\t});\n\t\tif (hit) { els.unshift(p); text.unshift(t); }\n\t\telse if (els.length) break;   \/\/ \u5df2\u7d93\u6536\u5230\u8cc7\u6599\u4e86\uff0c\u9047\u5230\u4e0d\u76f8\u95dc\u7684\u5c31\u505c\n\t\tp = p.previousElementSibling;\n\t}\n\treturn { els: els, text: text.join('\\n') };\n}\n\nvar src = collectFrom(me);\nif (!src.els.length && me.parentElement) src = collectFrom(me.parentElement);\n\nfunction warn(html) {\n\tvar w = document.createElement('div');\n\tw.className = 'rbxd-warn';\n\tw.innerHTML = html;\n\tme.parentNode.insertBefore(w, me);\n}\n\nif (!src.els.length) {\n\twarn('<strong>\u627e\u4e0d\u5230\u5c55\u89bd\u8cc7\u6599\u3002<\/strong><br>'\n\t\t+ '\u8acb\u78ba\u8a8d\u300c\u81ea\u8a02 HTML\u300d\u5340\u584a\u7684<strong>\u4e0a\u65b9<\/strong>\u6709\u4e00\u500b\u6587\u5b57\u5340\u584a\uff0c'\n\t\t+ '\u800c\u4e14\u88e1\u9762\u7684\u6bcf\u4e00\u884c\u90fd\u662f\u300c\u9805\u76ee\uff1a\u5167\u5bb9\u300d\u7684\u683c\u5f0f\uff08\u4f8b\u5982\u300c\u5c55\u540d\uff1a\u53f0\u4e2d\u5c55\u300d\uff09\u3002');\n\treturn;\n}\n\n\/* \u2500\u2500 2. \u89e3\u6790 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n\nfunction parse(text) {\n\tvar data = { name: '', en: '', category: '', city: '', lead: '', hero: '',\n\t             intro: [], points: [], back: '', prev: '', next: '', years: [] };\n\tvar cur = null;\n\n\ttext.split(\/\\r?\\n\/).forEach(function (raw) {\n\t\tvar line = raw.replace(\/ \/g, ' ').trim();\n\t\tif (!line) return;\n\t\tvar m = line.match(LINE);\n\t\tif (!m) return;\n\n\t\tvar field = KEYS[m[1].trim()];\n\t\tvar val = m[2].trim();\n\t\tif (!field) return;\n\n\t\tif (field === '_year') {\n\t\t\tvar y = (val.match(\/\\d{4}\/) || [''])[0];\n\t\t\tif (!y) return;                       \/\/ \u6c92\u6709\u56db\u4f4d\u6578\u5e74\u4efd\u5c31\u7576\u5b83\u4e0d\u662f\u5e74\u4efd\u884c\n\t\t\tcur = { y: y, venue: '', note: '', photos: [] };\n\t\t\tdata.years.push(cur);\n\t\t\treturn;\n\t\t}\n\n\t\t\/* \u5e74\u4efd\u5e95\u4e0b\u624d\u6709\u610f\u7fa9\u7684\u6b04\u4f4d\uff0c\u6c92\u958b\u5e74\u4efd\u5340\u584a\u5c31\u5ffd\u7565 *\/\n\t\tif (YEAR_KEYS[field]) {\n\t\t\tif (!cur || !val) return;\n\t\t\tif (field === 'photo') cur.photos.push(val);\n\t\t\telse cur[field] = val;\n\t\t\treturn;\n\t\t}\n\n\t\t\/* \u5176\u9918\u4e00\u5f8b\u7576\u6210\u6574\u9801\u5c64\u7d1a\u7684\u6b04\u4f4d\uff1b\u4ecb\u7d39\u8207\u91cd\u9ede\u53ef\u91cd\u8907\u3001\u4f9d\u5e8f\u7d2f\u52a0 *\/\n\t\tif (field === 'intro') { if (val) data.intro.push(val); }\n\t\telse if (field === 'point') { if (val) data.points.push(val); }\n\t\telse data[field] = val;\n\t});\n\n\t\/* \u5e74\u4efd\u7531\u65b0\u5230\u820a *\/\n\tdata.years.sort(function (a, b) { return Number(b.y) - Number(a.y); });\n\treturn data;\n}\n\nvar DATA = parse(src.text);\n\nif (!DATA.name && !DATA.years.length) {\n\twarn('<strong>\u8b80\u5230\u6587\u5b57\u4e86\uff0c\u4f46\u6c92\u6709\u627e\u5230\u5c55\u89bd\u5167\u5bb9\u3002<\/strong><br>'\n\t\t+ '\u8acb\u78ba\u8a8d\u6709\u300c<strong>\u5c55\u540d\uff1a<\/strong>\u300d\u9019\u4e00\u884c\uff0c\u6bcf\u500b\u5e74\u5ea6\u7528\u300c<strong>\u5e74\u4efd\uff1a<\/strong>\u300d\u958b\u982d\uff08\u4f8b\u5982\u300c\u5e74\u4efd\uff1a2026\u300d\uff09\u3002');\n\treturn;\n}\n\n\/* \u2500\u2500 3. \u7522\u751f\u756b\u9762 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n\nfunction esc(s) {\n\treturn String(s == null ? '' : s)\n\t\t.replace(\/&\/g, '&amp;').replace(\/<\/g, '&lt;').replace(\/>\/g, '&gt;').replace(\/\"\/g, '&quot;');\n}\nfunction photoBox(url) {\n\treturn '<div class=\"rbxd-photo' + (url ? '' : ' is-empty') + '\">'\n\t\t+ (url ? '<img decoding=\"async\" class=\"rbxd-img\" src=\"' + esc(url) + '\" alt=\"\">' : '')\n\t\t+ '<\/div>';\n}\n\/* \u300c\u5357\u6e2f\u5c55|\/past-exhibitions\/nangang\/\u300d\u2192 \u6587\u5b57\u8207\u9023\u7d50 *\/\nfunction link(val) {\n\tif (!val) return null;\n\tvar parts = String(val).split('|');\n\tvar label = (parts[0] || '').trim();\n\tvar url = (parts[1] || '').trim();\n\tif (!label) return null;\n\treturn { label: label, url: url };\n}\n\nvar ys = DATA.years.map(function (r) { return r.y; });          \/\/ \u5df2\u7531\u65b0\u5230\u820a\nvar oldest = ys.length ? ys[ys.length - 1] : '';\nvar newest = ys.length ? ys[0] : '';\nvar span = ys.length ? (oldest === newest ? newest : oldest + '\u2013' + newest) : '';\n\nvar facts = [];\nif (span) facts.push(['Years', span]);\nif (ys.length) facts.push(['Exhibition', ys.length + ' Events']);\nif (DATA.city) facts.push(['Location', DATA.city]);\nif (DATA.category) facts.push(['Category', DATA.category]);\n\nvar prev = link(DATA.prev), next = link(DATA.next);\n\nvar box = document.createElement('div');\nbox.innerHTML =\n\t'<article class=\"rbxd\">'\n\n\t\/* Hero *\/\n\t+ '<header class=\"rbxd-hero\"><div>'\n\t+ (DATA.category ? '<div class=\"rbxd-tags\"><span class=\"rbxd-pill\">' + esc(DATA.category) + '<\/span><\/div>' : '')\n\t+ (DATA.en ? '<p class=\"rbxd-kicker\">' + esc(DATA.en) + '<\/p>' : '')\n\t+ '<h2 class=\"rbxd-title\">' + esc(DATA.name) + '<\/h2>'\n\t+ (DATA.lead ? '<p class=\"rbxd-lead\">' + esc(DATA.lead) + '<\/p>' : '')\n\t+ (ys.length ? '<p style=\"margin:22px 0 0\"><a class=\"rbxd-btn\" href=\"#rbxd-archive\">View Past Exhibition Photos \u2192<\/a><\/p>' : '')\n\t+ '<\/div>' + photoBox(DATA.hero) + '<\/header>'\n\n\t\/* \u4e8b\u5be6\u5217 *\/\n\t+ (facts.length\n\t\t? '<dl class=\"rbxd-facts\">' + facts.map(function (f) {\n\t\t\treturn '<div class=\"rbxd-fact\"><dt>' + esc(f[0]) + '<\/dt><dd>' + esc(f[1]) + '<\/dd><\/div>';\n\t\t}).join('') + '<\/dl>'\n\t\t: '')\n\n\t\/* \u95dc\u65bc\u9019\u500b\u5c55\u6703 *\/\n\t+ (DATA.intro.length || DATA.points.length\n\t\t? '<section class=\"rbxd-sec\">'\n\t\t\t+ '<div class=\"rbxd-sec-head\"><h2>About the Exhibition<\/h2><p>ABOUT<\/p><\/div>'\n\t\t\t+ '<div class=\"rbxd-intro' + (DATA.points.length ? '' : ' is-solo') + '\"><div>'\n\t\t\t+ DATA.intro.map(function (p) { return '<p>' + esc(p) + '<\/p>'; }).join('')\n\t\t\t+ '<\/div>'\n\t\t\t+ (DATA.points.length\n\t\t\t\t? '<aside class=\"rbxd-side\"><h3>Exhibition Highlights<\/h3><ul>'\n\t\t\t\t\t+ DATA.points.map(function (p) { return '<li>' + esc(p) + '<\/li>'; }).join('')\n\t\t\t\t\t+ '<\/ul><\/aside>'\n\t\t\t\t: '')\n\t\t\t+ '<\/div><\/section>'\n\t\t: '')\n\n\t\/* \u6b77\u5e74\u7d00\u9304 *\/\n\t+ (ys.length\n\t\t? '<section class=\"rbxd-sec\" id=\"rbxd-archive\">'\n\t\t\t+ '<div class=\"rbxd-sec-head\"><h2>PAST EXHIBITIONS<\/h2><p>ARCHIVE<\/p><\/div>'\n\t\t\t+ '<div class=\"rbxd-years\" role=\"group\" aria-label=\"\u5207\u63db\u5e74\u4efd\">'\n\t\t\t+ DATA.years.map(function (r, i) {\n\t\t\t\treturn '<button type=\"button\" data-i=\"' + i + '\"'\n\t\t\t\t\t+ (i === 0 ? ' class=\"is-on\" aria-pressed=\"true\"' : ' aria-pressed=\"false\"')\n\t\t\t\t\t+ '>' + esc(r.y) + '<\/button>';\n\t\t\t}).join('')\n\t\t\t+ '<\/div><div class=\"rbxd-year-body\"><\/div><\/section>'\n\t\t: '')\n\n\t\/* \u9801\u5c3e\u5c0e\u89bd *\/\n\t+ ((DATA.back || prev || next)\n\t\t? '<nav class=\"rbxd-nav\">'\n\t\t\t+ (DATA.back ? '<a class=\"rbxd-go\" href=\"' + esc(DATA.back) + '\">\u2190 Back to Exhibition Archive<\/a>' : '<span><\/span>')\n\t\t\t+ '<div class=\"rbxd-nav-side\">'\n\t\t\t+ (prev ? '<a class=\"rbxd-btn\" href=\"' + esc(prev.url || '#') + '\">\u4e0a\u4e00\u500b\uff1a' + esc(prev.label) + '<\/a>' : '')\n\t\t\t+ (next ? '<a class=\"rbxd-btn\" href=\"' + esc(next.url || '#') + '\">\u4e0b\u4e00\u500b\uff1a' + esc(next.label) + ' \u2192<\/a>' : '')\n\t\t\t+ '<\/div><\/nav>'\n\t\t: '')\n\n\t+ '<\/article>';\n\nvar article = box.firstChild;\n\n\/* \u628a\u539f\u59cb\u6587\u5b57\u85cf\u8d77\u4f86\uff0c\u63db\u4e0a\u6392\u7248\u597d\u7684\u5167\u5bb9 *\/\nsrc.els[0].parentNode.insertBefore(article, src.els[0]);\nsrc.els.forEach(function (el) { el.style.display = 'none'; });\n\n\/* \u2500\u2500 4. \u5e74\u4efd\u5207\u63db \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n\nvar tabs = article.querySelector('.rbxd-years');\nvar body = article.querySelector('.rbxd-year-body');\nif (!tabs || !body) return;\n\nfunction draw(i) {\n\tvar r = DATA.years[i];\n\tif (!r) return;\n\t\/* \u56fa\u5b9a 5 \u683c\uff08\u4e00\u5927\u56db\u5c0f\uff09\uff1a\u591a\u586b\u7684\u4e0d\u986f\u793a\uff0c\u9084\u6c92\u586b\u7684\u7559\u300c\u7167\u7247\u9810\u7559\u5340\u300d\u4f54\u4f4d *\/\n\tvar shots = r.photos.slice(0, MAX_PHOTOS);\n\twhile (shots.length < MAX_PHOTOS) shots.push('');\n\n\tbody.innerHTML =\n\t\t'<div class=\"rbxd-year-head\"><h3>' + esc(r.y + ' ' + DATA.name) + '<\/h3>'\n\t\t+ (r.venue ? '<span class=\"rbxd-venue\">' + esc(r.venue) + '<\/span>' : '')\n\t\t+ '<\/div>'\n\t\t+ (r.note ? '<p class=\"rbxd-note\">' + esc(r.note) + '<\/p>' : '')\n\t\t+ '<div class=\"rbxd-gallery\">' + shots.map(photoBox).join('') + '<\/div>';\n}\n\ntabs.addEventListener('click', function (e) {\n\tvar btn = e.target.closest ? e.target.closest('button[data-i]') : null;\n\tif (!btn) return;\n\tArray.prototype.forEach.call(tabs.querySelectorAll('button[data-i]'), function (b) {\n\t\tvar on = b === btn;\n\t\tb.classList.toggle('is-on', on);\n\t\tb.setAttribute('aria-pressed', on ? 'true' : 'false');\n\t});\n\tdraw(Number(btn.getAttribute('data-i')));\n});\n\ndraw(0);\n\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>\u5c55\u540d\uff1aKAOHSIUNG EXHIBITION\u82f1\u6587\uff1a\u5206\u985e\uff1aTaiwan\u5730\u9ede\uff1aKaohsiung\u7c21\u4ecb\uff1aA record of our past exhibitions in southern Taiwan, featuring coffee roaster showcases, hands-on operation, live roasting, and coffee tasting.\u4e3b\u5716\uff1ahttps:\/\/rubasseroasters.com\/wp-content\/uploads\/2026\/08\/scimgxkFJ3c.webp \u4ecb\u7d39\uff1aKaohsiung Exhibition is an important opportunity for us to connect with the coffee market in southern Taiwan and engage directly with local caf\u00e9 owners, entrepreneurs, roasters, and coffee professionals.\u4ecb\u7d39\uff1aEach year, we showcase our coffee [&hellip;]<\/p>\n","protected":false},"author":10,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_gspb_post_css":"","footnotes":""},"class_list":["post-5717","page","type-page","status-publish","hentry"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":7}},"acf":[],"_links":{"self":[{"href":"https:\/\/rubasseroasters.com\/zh\/wp-json\/wp\/v2\/pages\/5717","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rubasseroasters.com\/zh\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/rubasseroasters.com\/zh\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/rubasseroasters.com\/zh\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/rubasseroasters.com\/zh\/wp-json\/wp\/v2\/comments?post=5717"}],"version-history":[{"count":8,"href":"https:\/\/rubasseroasters.com\/zh\/wp-json\/wp\/v2\/pages\/5717\/revisions"}],"predecessor-version":[{"id":5808,"href":"https:\/\/rubasseroasters.com\/zh\/wp-json\/wp\/v2\/pages\/5717\/revisions\/5808"}],"wp:attachment":[{"href":"https:\/\/rubasseroasters.com\/zh\/wp-json\/wp\/v2\/media?parent=5717"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}