{"id":4116,"date":"2026-06-07T10:43:07","date_gmt":"2026-06-07T10:43:07","guid":{"rendered":"https:\/\/tian-jian.org\/tj-field-school\/?post_type=toolbox&#038;p=4116"},"modified":"2026-06-07T11:02:34","modified_gmt":"2026-06-07T11:02:34","slug":"hunchly","status":"publish","type":"toolbox","link":"https:\/\/tian-jian.org\/tj-field-school\/toolbox\/hunchly\/","title":{"rendered":"Hunchly"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Hunchly \u662f\u52a0\u62ff\u5927\u958b\u767c\u8005 Justin Seitz \u65bc 2016 \u5e74\u5275\u5efa\u7684\u7db2\u9801\u5b58\u6a94\u5de5\u5177\uff0c\u73fe\u7531 Maltego Technologies \u71df\u904b\u3002\u5b83\u5c08\u70ba\u8abf\u67e5\u4eba\u54e1\u8a2d\u8a08\uff0c\u80fd\u5728\u4f60\u700f\u89bd\u7db2\u9801\u7684\u540c\u6642\u81ea\u52d5\u4fdd\u5b58\u6bcf\u4e00\u9801\u2014\u2014\u5305\u62ec\u7db2\u5740\u3001\u6642\u9593\u6233\u3001\u5b8c\u6574\u622a\u5716\u8207<strong>\u96dc\u6e4a\u503c\uff08hash\uff09\u9a57\u8b49<\/strong>\u3002\u9019\u4e9b\u8a18\u9304\u5177\u5099\u5b8c\u6574\u7684\u8b49\u64da\u93c8\uff08chain of custody\uff09\uff0c\u53ef\u9054\u5230<strong>\u6cd5\u5ead\u8209\u8b49\u7b49\u7d1a<\/strong>\u7684\u8981\u6c42\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin=\"\">\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Noto+Serif+TC:wght@400;600;700&amp;family=Noto+Sans+TC:wght@400;500;600&amp;family=IBM+Plex+Mono:wght@500;600&amp;display=swap\" rel=\"stylesheet\">\n\n<div id=\"tjfs-slider-wrap\">\n\n<style>\n#tjfs-slider-wrap {\n  --teal:      #3dabb1;\n  --teal-dark: #2d8389;\n  --gold:      #ae8c11;\n  --gold-bg:   rgba(174,140,17,0.92);\n  --text:      #1e1e1e;\n  --muted:     #666;\n  --border:    #e2e2da;\n  --bg-card:   #ffffff;\n  --bg-foot:   #fafaf7;\n  --radius:    4px;\n  font-family: 'Noto Sans TC', sans-serif;\n  max-width: 960px;\n  margin: 0 auto;\n  box-sizing: border-box;\n}\n#tjfs-slider-wrap *, #tjfs-slider-wrap *::before, #tjfs-slider-wrap *::after {\n  box-sizing: border-box;\n}\n#tjfs-card {\n  background: var(--bg-card);\n  border-radius: var(--radius);\n  box-shadow: 0 2px 20px rgba(0,0,0,0.11);\n  overflow: hidden;\n}\n#tjfs-header {\n  display: flex;\n  align-items: center;\n  gap: 16px;\n  padding: 16px 22px;\n  border-bottom: 1px solid var(--border);\n  flex-shrink: 0;\n  flex-wrap: nowrap;\n  overflow: hidden;\n}\n#tjfs-tag {\n  display: inline-block;\n  background: var(--teal);\n  color: #fff;\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 20px;\n  font-weight: 500;\n  letter-spacing: 0.18em;\n  text-transform: uppercase;\n  padding: 8px 16px 7px;\n  border-radius: 3px;\n  flex-shrink: 0;\n  line-height: 1.4;\n}\n#tjfs-title {\n  font-family: 'Noto Serif TC', serif;\n  font-size: 24px;\n  font-weight: 700;\n  color: var(--text);\n  line-height: 1.2;\n  margin: 0;\n  white-space: nowrap;\n}\n#tjfs-subtitle {\n  font-size: 17px;\n  color: var(--muted);\n  margin: 0;\n  line-height: 1.4;\n  font-weight: 300;\n  letter-spacing: 0.01em;\n  display: inline;\n}\n#tjfs-progress-track {\n  height: 3px;\n  background: #dde8e8;\n}\n#tjfs-progress-fill {\n  height: 100%;\n  background: var(--teal);\n  transition: width 0.35s ease;\n}\n#tjfs-body {\n  display: flex;\n  transition: opacity 0.2s ease;\n}\n#tjfs-body.tjfs-fading { opacity: 0; }\n#tjfs-img-pane {\n  flex: 0 0 58%;\n  position: relative;\n  background: #111;\n  cursor: zoom-in;\n  overflow: hidden;\n}\n#tjfs-img-pane img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  display: block;\n  transition: opacity 0.3s ease;\n}\n#tjfs-img-pane img.tjfs-unloaded { opacity: 0; }\n#tjfs-step-badge {\n  position: absolute;\n  top: 12px;\n  left: 12px;\n  background: var(--teal);\n  color: #fff;\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 10px;\n  font-weight: 600;\n  letter-spacing: 0.08em;\n  padding: 3px 10px;\n  border-radius: 2px;\n  text-transform: uppercase;\n  z-index: 2;\n}\n#tjfs-callout {\n  position: absolute;\n  bottom: 14px;\n  right: 14px;\n  background: var(--gold-bg);\n  color: #fff;\n  font-size: 12px;\n  font-weight: 500;\n  line-height: 1.5;\n  padding: 6px 11px;\n  border-radius: 3px;\n  max-width: 68%;\n  z-index: 2;\n  display: none;\n}\n#tjfs-callout.tjfs-visible { display: block; }\n#tjfs-text-pane {\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n  padding: 20px 20px 16px;\n  border-left: 1px solid var(--border);\n  overflow: hidden;\n}\n#tjfs-step-label {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 10px;\n  font-weight: 600;\n  color: var(--teal);\n  letter-spacing: 0.12em;\n  text-transform: uppercase;\n  margin-bottom: 10px;\n}\n#tjfs-slide-text {\n  font-size: 14px;\n  line-height: 1.85;\n  color: var(--text);\n  overflow-y: auto;\n  flex: 1;\n  padding-right: 4px;\n}\n#tjfs-slide-text::-webkit-scrollbar { width: 3px; }\n#tjfs-slide-text::-webkit-scrollbar-track { background: #f0f0ea; }\n#tjfs-slide-text::-webkit-scrollbar-thumb { background: var(--teal); border-radius: 2px; }\n#tjfs-slider-wrap .ht { color: var(--teal-dark); font-weight: 600; }\n#tjfs-slider-wrap .hg { color: var(--gold); font-weight: 600; }\n#tjfs-footer {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  padding: 10px 18px;\n  border-top: 1px solid var(--border);\n  background: var(--bg-foot);\n  flex-wrap: wrap;\n  gap: 8px;\n}\n#tjfs-dots {\n  display: flex;\n  gap: 6px;\n  flex-wrap: wrap;\n}\n.tjfs-dot {\n  width: 9px; height: 9px;\n  border-radius: 50%;\n  border: none;\n  background: #ccc;\n  cursor: pointer;\n  padding: 0;\n  transition: background 0.2s, transform 0.2s;\n}\n.tjfs-dot.tjfs-active  { background: var(--teal); transform: scale(1.3); }\n.tjfs-dot.tjfs-done    { background: var(--teal); opacity: 0.5; }\n#tjfs-nav {\n  display: flex;\n  align-items: center;\n  gap: 8px;\n}\n#tjfs-counter {\n  font-family: 'IBM Plex Mono', monospace;\n  font-size: 11px;\n  color: var(--muted);\n  min-width: 42px;\n  text-align: center;\n}\n.tjfs-btn {\n  border: none;\n  padding: 6px 14px;\n  font-size: 13px;\n  font-weight: 600;\n  border-radius: 3px;\n  cursor: pointer;\n  transition: background 0.2s, opacity 0.2s;\n  font-family: 'Noto Sans TC', sans-serif;\n  letter-spacing: 0.02em;\n}\n.tjfs-btn:disabled { opacity: 0.3; cursor: default; }\n#tjfs-btn-download { background: var(--gold); color: #fff; }\n#tjfs-btn-download:hover { background: #8f7210; }\n#tjfs-btn-prev { background: #fff; color: var(--teal); border: 1.5px solid var(--teal); }\n#tjfs-btn-prev:hover:not(:disabled) { background: #eef7f8; }\n#tjfs-btn-next { background: var(--teal); color: #fff; }\n#tjfs-btn-next:hover:not(:disabled) { background: var(--teal-dark); }\n#tjfs-lightbox {\n  display: none;\n  position: fixed;\n  inset: 0;\n  background: rgba(0,0,0,0.88);\n  z-index: 999999;\n  align-items: center;\n  justify-content: center;\n  cursor: zoom-out;\n}\n#tjfs-lightbox.tjfs-open { display: flex; }\n#tjfs-lightbox img {\n  max-width: 92vw;\n  max-height: 90vh;\n  border-radius: 3px;\n  box-shadow: 0 8px 40px rgba(0,0,0,0.5);\n}\n#tjfs-lb-close {\n  position: absolute;\n  top: 18px; right: 22px;\n  color: #fff;\n  font-size: 28px;\n  cursor: pointer;\n  line-height: 1;\n  opacity: 0.8;\n  background: none;\n  border: none;\n  padding: 0;\n}\n#tjfs-lb-close:hover { opacity: 1; }\n#tjfs-modal-overlay {\n  display: none;\n  position: fixed;\n  inset: 0;\n  background: rgba(0,0,0,0.55);\n  z-index: 99999;\n  align-items: center;\n  justify-content: center;\n}\n#tjfs-modal-overlay.tjfs-open { display: flex; }\n#tjfs-modal-box {\n  background: #fff;\n  border-radius: 6px;\n  padding: 28px 28px 22px;\n  max-width: 540px;\n  width: 92vw;\n  box-shadow: 0 8px 40px rgba(0,0,0,0.22);\n  position: relative;\n}\n#tjfs-modal-box h3 {\n  font-family: 'Noto Serif TC', serif;\n  font-size: 17px;\n  color: var(--text);\n  margin: 0 0 6px;\n}\n#tjfs-modal-box p {\n  font-size: 13px;\n  color: var(--muted);\n  margin: 0 0 14px;\n}\n#tjfs-modal-text {\n  width: 100%;\n  height: 200px;\n  font-size: 13px;\n  line-height: 1.7;\n  padding: 10px;\n  border: 1.5px solid var(--border);\n  border-radius: 3px;\n  resize: none;\n  font-family: 'Noto Sans TC', sans-serif;\n  color: var(--text);\n}\n#tjfs-modal-footer {\n  display: flex;\n  gap: 10px;\n  margin-top: 14px;\n  justify-content: flex-end;\n}\n#tjfs-modal-copy {\n  background: var(--teal);\n  color: #fff;\n  border: none;\n  padding: 7px 18px;\n  border-radius: 3px;\n  font-size: 13px;\n  font-weight: 600;\n  cursor: pointer;\n  font-family: 'Noto Sans TC', sans-serif;\n}\n#tjfs-modal-copy:hover { background: var(--teal-dark); }\n#tjfs-modal-close-btn {\n  background: #fff;\n  color: var(--muted);\n  border: 1.5px solid var(--border);\n  padding: 7px 16px;\n  border-radius: 3px;\n  font-size: 13px;\n  cursor: pointer;\n  font-family: 'Noto Sans TC', sans-serif;\n}\n#tjfs-modal-close-btn:hover { background: #f5f5f0; }\n<\/style>\n\n<div id=\"tjfs-card\">\n  <div id=\"tjfs-header\">\n    <span id=\"tjfs-tag\">\u6307\u5357<\/span>\n    <span id=\"tjfs-title\">Hunchly<\/span>\n    <span id=\"tjfs-subtitle\">\u5982\u4f55\u5728\u7dda\u8abf\u67e5\u6642\u81ea\u52d5\u4fdd\u5b58\u700f\u89bd\u8a18\u9304<\/span>\n  <\/div>\n  <div id=\"tjfs-progress-track\">\n    <div id=\"tjfs-progress-fill\"><\/div>\n  <\/div>\n  <div id=\"tjfs-body\">\n    <div id=\"tjfs-img-pane\">\n      <img decoding=\"async\" id=\"tjfs-slide-img\" src=\"\" alt=\"\">\n      <div id=\"tjfs-step-badge\"><\/div>\n      <div id=\"tjfs-callout\"><\/div>\n    <\/div>\n    <div id=\"tjfs-text-pane\">\n      <div id=\"tjfs-step-label\"><\/div>\n      <div id=\"tjfs-slide-text\"><\/div>\n    <\/div>\n  <\/div>\n  <div id=\"tjfs-footer\">\n    <div id=\"tjfs-dots\"><\/div>\n    <div id=\"tjfs-nav\">\n      <span id=\"tjfs-counter\"><\/span>\n      <button class=\"tjfs-btn\" id=\"tjfs-btn-download\">\u4e0b\u8f09\u8aaa\u660e\u6587\u5b57<\/button>\n      <button class=\"tjfs-btn\" id=\"tjfs-btn-prev\">\u2190 \u4e0a\u4e00\u6b65<\/button>\n      <button class=\"tjfs-btn\" id=\"tjfs-btn-next\">\u4e0b\u4e00\u6b65 \u2192<\/button>\n    <\/div>\n  <\/div>\n<\/div>\n\n<div id=\"tjfs-lightbox\">\n  <button id=\"tjfs-lb-close\">\u2715<\/button>\n  <img decoding=\"async\" id=\"tjfs-lb-img\" src=\"\" alt=\"\">\n<\/div>\n\n<div id=\"tjfs-modal-overlay\">\n  <div id=\"tjfs-modal-box\">\n    <h3>\u4e0b\u8f09\u8aaa\u660e\u6587\u5b57<\/h3>\n    <p>\u8907\u88fd\u4ee5\u4e0b\u6587\u5b57\uff0c\u53ef\u8cbc\u5165\u6587\u4ef6\u6216\u7ffb\u8b6f\u5de5\u5177\u4f7f\u7528\u3002<\/p>\n    <textarea id=\"tjfs-modal-text\" readonly=\"\"><\/textarea>\n    <div id=\"tjfs-modal-footer\">\n      <button id=\"tjfs-modal-close-btn\">\u95dc\u9589<\/button>\n      <button id=\"tjfs-modal-copy\">\u8907\u88fd\u5168\u6587<\/button>\n    <\/div>\n  <\/div>\n<\/div>\n\n<\/div>\n\n<script>\n(function() {\n\nvar TJFS_SLIDES = [\n  {\n    label: \"STEP 01\",\n    badge: \"\u6b65\u9a5f 1 \u2500\u2500 \u4e0b\u8f09\u4e26\u5b89\u88dd\",\n    img: \"https:\/\/tian-jian.org\/tj-field-school\/wp-content\/uploads\/2026\/06\/Screenshot-2026-03-27-at-15.30.30-scaled-2.png\",\n    callout: \"\u25bc \u9ede\u64ca\u300cTry It Free\u300d\",\n    html: '\u524d\u5f80 <span class=\"ht\">hunch.ly<\/span>\uff0c\u9ede\u64ca\u300cTry It Free\u300d\u8a3b\u518a\u514d\u8cbb\u8a66\u7528\u3002\u586b\u5beb\u59d3\u540d\u8207\u96fb\u5b50\u90f5\u4ef6\u5730\u5740\uff0c\u7372\u5f97 30 \u5929\u514d\u8cbb\u8a66\u7528\uff0c\u7121\u9700\u4fe1\u7528\u5361\u3002<br><br>\u8a3b\u518a\u6210\u529f\u5f8c\u6703\u6536\u5230\u90f5\u4ef6\uff0c\u5167\u542b\u4e0b\u8f09\u9023\u7d50\u3001\u5b89\u88dd\u8aaa\u660e\u53ca <span class=\"hg\">License \u5e8f\u865f<\/span>\u3002\u6839\u64da\u90f5\u4ef6\u9023\u7d50\u9078\u64c7\u4f5c\u696d\u7cfb\u7d71\u4e0b\u8f09\u5c0d\u61c9\u7248\u672c\uff0c\u5b89\u88dd\u6642\u8f38\u5165\u5e8f\u865f\u555f\u7528\u3002',\n    plain: '\u6b65\u9a5f\u4e00\uff1a\u4e0b\u8f09\u4e26\u5b89\u88dd\u684c\u9762\u61c9\u7528\u7a0b\u5f0f\\n\\n\u524d\u5f80 hunch.ly\uff0c\u9ede\u64ca\u300cTry It Free\u300d\u8a3b\u518a\u514d\u8cbb\u8a66\u7528\u3002\u586b\u5beb\u59d3\u540d\u8207\u96fb\u5b50\u90f5\u4ef6\u5730\u5740\uff0c\u7372\u5f97 30 \u5929\u514d\u8cbb\u8a66\u7528\uff0c\u7121\u9700\u4fe1\u7528\u5361\u3002\\n\\n\u8a3b\u518a\u6210\u529f\u5f8c\u6703\u6536\u5230\u90f5\u4ef6\uff0c\u5167\u542b\u4e0b\u8f09\u9023\u7d50\u3001\u5b89\u88dd\u8aaa\u660e\u53ca License \u5e8f\u865f\u3002\u6839\u64da\u90f5\u4ef6\u9023\u7d50\u9078\u64c7\u4f5c\u696d\u7cfb\u7d71\u4e0b\u8f09\u5c0d\u61c9\u7248\u672c\uff0c\u5b89\u88dd\u6642\u8f38\u5165\u5e8f\u865f\u555f\u7528\u3002'\n  },\n  {\n    label: \"STEP 02\",\n    badge: \"\u6b65\u9a5f 2 \u2500\u2500 \u8a2d\u7f6e Dashboard\",\n    img: \"https:\/\/tian-jian.org\/tj-field-school\/wp-content\/uploads\/2026\/06\/Screenshot-2026-03-27-at-15.06.16.png\",\n    callout: \"\u25bc \u9ede\u64ca\u53f3\u4e0a\u89d2\u4e09\u9ede\u5efa\u7acb\u6848\u4ef6\",\n    html: '\u958b\u555f Hunchly \u684c\u9762\u7a0b\u5f0f\uff0c\u9996\u5148\u770b\u5230 <span class=\"ht\">Dashboard<\/span>\u2014\u2014\u6240\u6709\u8abf\u67e5\u6848\u4ef6\u7684\u7e3d\u89bd\u3002\u9ede\u64ca\u53f3\u4e0a\u89d2\u4e09\u9ede\u5efa\u7acb\u65b0\u6848\u4ef6\uff0c\u8f38\u5165\u540d\u7a31\u5982\u300cChina Going Global\u300d\u3002<br><br><span class=\"hg\">Selector<\/span> \u662f\u95dc\u9375\u5b57\u7be9\u9078\u5668\uff0c\u7576\u700f\u89bd\u9801\u9762\u5305\u542b\u8a2d\u5b9a\u95dc\u9375\u5b57\u6642\u6703\u81ea\u52d5\u6a19\u8a18\u3002\u5728\u6b64\u6848\u4ef6\u52a0\u5165\u300cXPeng\u300d\u548c\u300cBYD\u300d\u5169\u500b Selector\u3002',\n    plain: '\u6b65\u9a5f\u4e8c\uff1a\u8a2d\u7f6e Dashboard\\n\\n\u958b\u555f Hunchly \u684c\u9762\u7a0b\u5f0f\uff0c\u9996\u5148\u770b\u5230 Dashboard\u2014\u2014\u6240\u6709\u8abf\u67e5\u6848\u4ef6\u7684\u7e3d\u89bd\u3002\u9ede\u64ca\u53f3\u4e0a\u89d2\u4e09\u9ede\u5efa\u7acb\u65b0\u6848\u4ef6\uff0c\u8f38\u5165\u540d\u7a31\u5982\u300cChina Going Global\u300d\u3002\\n\\nSelector \u662f\u95dc\u9375\u5b57\u7be9\u9078\u5668\uff0c\u7576\u700f\u89bd\u9801\u9762\u5305\u542b\u8a2d\u5b9a\u95dc\u9375\u5b57\u6642\u6703\u81ea\u52d5\u6a19\u8a18\u3002\u5728\u6b64\u6848\u4ef6\u52a0\u5165\u300cXPeng\u300d\u548c\u300cBYD\u300d\u5169\u500b Selector\u3002'\n  },\n  {\n    label: \"STEP 03\",\n    badge: \"\u6b65\u9a5f 3 \u2500\u2500 \u5b89\u88dd\u64f4\u5145\u5957\u4ef6\",\n    img: \"https:\/\/tian-jian.org\/tj-field-school\/wp-content\/uploads\/2026\/06\/Screenshot-2026-03-27-at-15.08.35.png\",\n    callout: \"\u25bc \u6309\u4e0b\u300cCapture\u300d\u6309\u9215\",\n    html: '\u5728 Dashboard \u4e2d\uff0cHunchly \u6703\u63d0\u793a\u5b89\u88dd <span class=\"ht\">Chrome \u64f4\u5145\u5957\u4ef6<\/span>\u3002\u9ede\u64ca\u9023\u7d50\u524d\u5f80 Chrome \u7dda\u4e0a\u61c9\u7528\u7a0b\u5f0f\u5546\u5e97\u5b8c\u6210\u5b89\u88dd\u3002\u9019\u662f\u904b\u4f5c\u6838\u5fc3\u2014\u2014\u5fc5\u9808\u642d\u914d Chrome \u4f7f\u7528\u3002<br><br>\u6e96\u5099\u5c31\u7dd2\u5f8c\uff0c\u6309\u4e0b <span class=\"hg\">\u300cCapture\u300d<\/span> \u6309\u9215\u958b\u59cb\u9304\u88fd\u3002\u5716\u793a\u8b8a\u85cd\u8272\u8868\u793a\u6b63\u5728\u80cc\u666f\u904b\u4f5c\uff0c\u700f\u89bd\u7684\u6bcf\u500b\u7db2\u9801\u90fd\u6703\u81ea\u52d5\u4fdd\u5b58\u3002',\n    plain: '\u6b65\u9a5f\u4e09\uff1a\u5b89\u88dd Chrome \u700f\u89bd\u5668\u64f4\u5145\u5957\u4ef6\\n\\n\u5728 Dashboard \u4e2d\uff0cHunchly \u6703\u63d0\u793a\u5b89\u88dd Chrome \u64f4\u5145\u5957\u4ef6\u3002\u9ede\u64ca\u9023\u7d50\u524d\u5f80 Chrome \u7dda\u4e0a\u61c9\u7528\u7a0b\u5f0f\u5546\u5e97\u5b8c\u6210\u5b89\u88dd\u3002\u9019\u662f\u904b\u4f5c\u6838\u5fc3\u2014\u2014\u5fc5\u9808\u642d\u914d Chrome \u4f7f\u7528\u3002\\n\\n\u6e96\u5099\u5c31\u7dd2\u5f8c\uff0c\u6309\u4e0b\u300cCapture\u300d\u6309\u9215\u958b\u59cb\u9304\u88fd\u3002\u5716\u793a\u8b8a\u85cd\u8272\u8868\u793a\u6b63\u5728\u80cc\u666f\u904b\u4f5c\uff0c\u700f\u89bd\u7684\u6bcf\u500b\u7db2\u9801\u90fd\u6703\u81ea\u52d5\u4fdd\u5b58\u3002'\n  },\n  {\n    label: \"STEP 04\",\n    badge: \"\u6b65\u9a5f 4 \u2500\u2500 \u6b63\u5e38\u700f\u89bd\u5b58\u6a94\",\n    img: \"https:\/\/tian-jian.org\/tj-field-school\/wp-content\/uploads\/2026\/06\/Screenshot-2026-03-27-at-15.10.50.png\",\n    callout: \"\u25bc \u81ea\u52d5\u6a19\u8a18\u95dc\u9375\u5b57\u9801\u9762\",\n    html: '\u73fe\u5728\u50cf\u5e73\u5e38\u4e00\u6a23\u700f\u89bd\u7db2\u9801\uff1a\u641c\u5c0b\u65b0\u805e\u3001\u67e5\u95b1\u4f01\u696d\u767b\u8a18\u3001\u7ffb\u770b\u793e\u7fa4\u5a92\u9ad4\u3002\u6bcf\u4e00\u9801\u7684 <span class=\"ht\">\u7db2\u5740\u3001\u6642\u9593\u6233\u3001\u5b8c\u6574\u622a\u5716<\/span> \u90fd\u6703\u81ea\u52d5\u8a18\u9304\u3002<br><br>\u7576\u9801\u9762\u51fa\u73fe\u8a2d\u5b9a\u7684 <span class=\"hg\">Selector \u95dc\u9375\u5b57<\/span> \u5982\u300cXPeng\u300d\u6216\u300cBYD\u300d\u6642\uff0cHunchly \u6703\u81ea\u52d5\u6a19\u8a18\u3002\u4e4b\u5f8c\u5728 Dashboard \u53ef\u4e00\u9375\u7be9\u51fa\u76f8\u95dc\u9801\u9762\u3002',\n    plain: '\u6b65\u9a5f\u56db\uff1a\u6b63\u5e38\u700f\u89bd\uff0c\u81ea\u52d5\u5b58\u6a94\\n\\n\u73fe\u5728\u50cf\u5e73\u5e38\u4e00\u6a23\u700f\u89bd\u7db2\u9801\uff1a\u641c\u5c0b\u65b0\u805e\u3001\u67e5\u95b1\u4f01\u696d\u767b\u8a18\u3001\u7ffb\u770b\u793e\u7fa4\u5a92\u9ad4\u3002\u6bcf\u4e00\u9801\u7684\u7db2\u5740\u3001\u6642\u9593\u6233\u3001\u5b8c\u6574\u622a\u5716\u90fd\u6703\u81ea\u52d5\u8a18\u9304\u3002\\n\\n\u7576\u9801\u9762\u51fa\u73fe\u8a2d\u5b9a\u7684 Selector \u95dc\u9375\u5b57\u5982\u300cXPeng\u300d\u6216\u300cBYD\u300d\u6642\uff0cHunchly \u6703\u81ea\u52d5\u6a19\u8a18\u3002\u4e4b\u5f8c\u5728 Dashboard \u53ef\u4e00\u9375\u7be9\u51fa\u76f8\u95dc\u9801\u9762\u3002'\n  },\n  {\n    label: \"STEP 05\",\n    badge: \"\u6b65\u9a5f 5 \u2500\u2500 \u70ba\u8a18\u9304\u52a0\u7b46\u8a18\",\n    img: \"https:\/\/tian-jian.org\/tj-field-school\/wp-content\/uploads\/2026\/06\/Screenshot-2026-03-27-at-15.11.33.png\",\n    callout: \"\u25bc \u9ede\u64ca\u689d\u76ee\u6dfb\u52a0\u7b46\u8a18\",\n    html: '\u6bcf\u4e00\u7b46\u64f7\u53d6\u8a18\u9304\u90fd\u53ef\u52a0\u4e0a <span class=\"ht\">\u7b46\u8a18\uff08Note\uff09<\/span>\u3002\u767c\u73fe\u91cd\u8981\u8cc7\u8a0a\u6642\u7acb\u523b\u8a18\u4e0b\u4f86\uff0c\u9019\u4e9b\u7b46\u8a18\u6703\u96a8\u8a18\u9304\u4e00\u8d77\u4fdd\u5b58\uff0c\u532f\u51fa\u5831\u544a\u6642\u4e5f\u6703\u5305\u542b\u5728\u5167\u3002<br><br>\u9ede\u64ca <span class=\"hg\">history \u88e1\u7684\u5b58\u6a94\u689d\u76ee<\/span>\uff0c\u5c31\u53ef\u6dfb\u52a0 note\u3002',\n    plain: '\u6b65\u9a5f\u4e94\uff1a\u70ba\u8a18\u9304\u52a0\u4e0a\u7b46\u8a18\\n\\n\u6bcf\u4e00\u7b46\u64f7\u53d6\u8a18\u9304\u90fd\u53ef\u52a0\u4e0a\u7b46\u8a18\uff08Note\uff09\u3002\u767c\u73fe\u91cd\u8981\u8cc7\u8a0a\u6642\u7acb\u523b\u8a18\u4e0b\u4f86\uff0c\u9019\u4e9b\u7b46\u8a18\u6703\u96a8\u8a18\u9304\u4e00\u8d77\u4fdd\u5b58\uff0c\u532f\u51fa\u5831\u544a\u6642\u4e5f\u6703\u5305\u542b\u5728\u5167\u3002\\n\\n\u9ede\u64ca history \u88e1\u7684\u5b58\u6a94\u689d\u76ee\uff0c\u5c31\u53ef\u6dfb\u52a0 note\u3002'\n  },\n  {\n    label: \"STEP 06\",\n    badge: \"\u6b65\u9a5f 6 \u2500\u2500 \u532f\u51fa\u5831\u544a\",\n    img: \"https:\/\/tian-jian.org\/tj-field-school\/wp-content\/uploads\/2026\/06\/Screenshot-2026-03-27-at-15.12.16.png\",\n    callout: \"\u25bc \u9ede\u64ca\u300cExport\u300d\u532f\u51fa\",\n    html: '\u8abf\u67e5\u544a\u4e00\u6bb5\u843d\u5f8c\uff0c\u9078\u53d6\u9700\u8981\u7684\u9801\u9762\uff0c\u9ede\u64ca\u5de6\u5074\u5c0d\u8a71\u6846\u7684 <span class=\"ht\">\u300cExport\u300d<\/span> \u532f\u51fa\u3002Hunchly \u6703\u751f\u6210\u5b8c\u6574\u5831\u544a\uff08PDF \u6216 HTML\uff09\u3002<br><br>\u5831\u544a\u5305\u542b\u6bcf\u9801\u7684 <span class=\"hg\">\u622a\u5716\u3001\u7db2\u5740\u3001\u6642\u9593\u6233\u3001\u96dc\u6e4a\u503c<\/span> \u53ca\u4f60\u7684\u7b46\u8a18\u2014\u2014\u53ef\u4f5c\u70ba\u5831\u5c0e\u9644\u4ef6\uff0c\u4e5f\u53ef\u5448\u5802\u8209\u8b49\u3002',\n    plain: '\u6b65\u9a5f\u516d\uff1a\u532f\u51fa\u5831\u544a\\n\\n\u8abf\u67e5\u544a\u4e00\u6bb5\u843d\u5f8c\uff0c\u9078\u53d6\u9700\u8981\u7684\u9801\u9762\uff0c\u9ede\u64ca\u5de6\u5074\u5c0d\u8a71\u6846\u7684\u300cExport\u300d\u532f\u51fa\u3002Hunchly \u6703\u751f\u6210\u5b8c\u6574\u5831\u544a\uff08PDF \u6216 HTML\uff09\u3002\\n\\n\u5831\u544a\u5305\u542b\u6bcf\u9801\u7684\u622a\u5716\u3001\u7db2\u5740\u3001\u6642\u9593\u6233\u3001\u96dc\u6e4a\u503c\u53ca\u4f60\u7684\u7b46\u8a18\u2014\u2014\u53ef\u4f5c\u70ba\u5831\u5c0e\u9644\u4ef6\uff0c\u4e5f\u53ef\u5448\u5802\u8209\u8b49\u3002'\n  }\n];\n\nvar tjfsCur = 0;\n\nfunction tjfsFixHeight() {\n  var wrap = document.getElementById('tjfs-slider-wrap');\n  var body = document.getElementById('tjfs-body');\n  if (!wrap || !body) return;\n  var cardW = wrap.offsetWidth;\n  var h = (cardW * 0.58) * (4 \/ 5);\n  h = Math.max(260, Math.min(h, 520));\n  body.style.height = h + 'px';\n}\n\nfunction tjfsRender() {\n  var s = TJFS_SLIDES[tjfsCur];\n  var body = document.getElementById('tjfs-body');\n  body.classList.add('tjfs-fading');\n  setTimeout(function() {\n    var img = document.getElementById('tjfs-slide-img');\n    img.classList.add('tjfs-unloaded');\n    img.src = s.img;\n    img.alt = s.badge;\n    img.onload = function() { img.classList.remove('tjfs-unloaded'); };\n    img.onerror = function() { img.classList.remove('tjfs-unloaded'); };\n    document.getElementById('tjfs-step-badge').textContent = s.badge;\n    var callout = document.getElementById('tjfs-callout');\n    callout.textContent = s.callout;\n    if (s.callout && s.callout.trim() !== '') {\n      callout.classList.add('tjfs-visible');\n    } else {\n      callout.classList.remove('tjfs-visible');\n    }\n    document.getElementById('tjfs-step-label').textContent = s.label;\n    document.getElementById('tjfs-slide-text').innerHTML = s.html;\n    document.getElementById('tjfs-slide-text').scrollTop = 0;\n    document.getElementById('tjfs-progress-fill').style.width =\n      ((tjfsCur + 1) \/ TJFS_SLIDES.length * 100) + '%';\n    document.getElementById('tjfs-counter').textContent =\n      (tjfsCur + 1) + ' \/ ' + TJFS_SLIDES.length;\n    document.getElementById('tjfs-btn-prev').disabled = tjfsCur === 0;\n    var btnNext = document.getElementById('tjfs-btn-next');\n    if (tjfsCur === TJFS_SLIDES.length - 1) {\n      btnNext.textContent = '\u5b8c\u6210 \u2713';\n      btnNext.disabled = true;\n    } else {\n      btnNext.textContent = '\u4e0b\u4e00\u6b65 \u2192';\n      btnNext.disabled = false;\n    }\n    var dotsEl = document.getElementById('tjfs-dots');\n    dotsEl.innerHTML = '';\n    TJFS_SLIDES.forEach(function(_, i) {\n      var d = document.createElement('button');\n      d.className = 'tjfs-dot' +\n        (i === tjfsCur ? ' tjfs-active' : i < tjfsCur ? ' tjfs-done' : '');\n      d.title = '\u6b65\u9a5f ' + (i + 1);\n      (function(idx) {\n        d.addEventListener('click', function() { tjfsCur = idx; tjfsRender(); });\n      })(i);\n      dotsEl.appendChild(d);\n    });\n    body.classList.remove('tjfs-fading');\n  }, 200);\n}\n\nfunction tjfsGo(dir) {\n  var next = tjfsCur + dir;\n  if (next < 0 || next >= TJFS_SLIDES.length) return;\n  tjfsCur = next;\n  tjfsRender();\n}\n\ndocument.getElementById('tjfs-btn-prev').addEventListener('click', function() { tjfsGo(-1); });\ndocument.getElementById('tjfs-btn-next').addEventListener('click', function() { tjfsGo(1); });\n\ndocument.getElementById('tjfs-img-pane').addEventListener('click', function() {\n  var src = document.getElementById('tjfs-slide-img').src;\n  if (!src) return;\n  document.getElementById('tjfs-lb-img').src = src;\n  document.getElementById('tjfs-lightbox').classList.add('tjfs-open');\n});\ndocument.getElementById('tjfs-lb-close').addEventListener('click', function(e) {\n  e.stopPropagation();\n  document.getElementById('tjfs-lightbox').classList.remove('tjfs-open');\n});\ndocument.getElementById('tjfs-lightbox').addEventListener('click', function(e) {\n  if (e.target === this) {\n    document.getElementById('tjfs-lightbox').classList.remove('tjfs-open');\n  }\n});\n\ndocument.getElementById('tjfs-btn-download').addEventListener('click', function() {\n  var all = TJFS_SLIDES.map(function(s) { return s.plain; }).join('\\n\\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\\n\\n');\n  document.getElementById('tjfs-modal-text').value = all;\n  document.getElementById('tjfs-modal-overlay').classList.add('tjfs-open');\n});\ndocument.getElementById('tjfs-modal-close-btn').addEventListener('click', function() {\n  document.getElementById('tjfs-modal-overlay').classList.remove('tjfs-open');\n});\ndocument.getElementById('tjfs-modal-overlay').addEventListener('click', function(e) {\n  if (e.target === this) {\n    document.getElementById('tjfs-modal-overlay').classList.remove('tjfs-open');\n  }\n});\ndocument.getElementById('tjfs-modal-copy').addEventListener('click', function() {\n  var ta = document.getElementById('tjfs-modal-text');\n  ta.select();\n  document.execCommand('copy');\n  var btn = document.getElementById('tjfs-modal-copy');\n  btn.textContent = '\u5df2\u8907\u88fd \u2713';\n  setTimeout(function() { btn.textContent = '\u8907\u88fd\u5168\u6587'; }, 2000);\n});\n\ntjfsFixHeight();\nwindow.addEventListener('resize', tjfsFixHeight);\ntjfsRender();\n\n})();\n<\/script>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u60f3\u8a66\u8a66\u770b\u55ce\uff1f\u524d\u5f80 <a href=\"https:\/\/hunch.ly\/\">hunch.ly<\/a> \u958b\u59cb 30 \u5929\u514d\u8cbb\u8a66\u7528\u3002\u8207\u514d\u8cbb\u7684 Archive.today \u6216 ArchiveWeb.page \u76f8\u6bd4\uff0cHunchly \u7684\u512a\u52e2\u5728\u65bc<strong>\u81ea\u52d5\u5316\u3001\u6848\u4ef6\u7ba1\u7406\uff0c\u4ee5\u53ca\u6cd5\u5ead\u7b49\u7d1a\u7684\u8b49\u64da\u8f38\u51fa<\/strong>\u3002\u5f53\u8abf\u67e5\u544a\u4e00\u6bb5\u843d\uff0c\u9ede\u64ca\u300cExport\u300d\u532f\u51fa\u6240\u6709\u7684\u9801\u9762\u6642\uff0cHunchly \u6703\u751f\u6210\u4e00\u4efd\u5b8c\u6574\u7684\u5831\u544a\uff08PDF \u6216 HTML\uff09\uff0c\u5305\u542b\u6bcf\u9801\u7684\u622a\u5716\u3001\u7db2\u5740\u3001\u6642\u9593\u6233\u3001\u96dc\u6e4a\u503c\uff0c\u4ee5\u53ca\u4f60\u7684\u7b46\u8a18\u3002<strong>\u96dc\u6e4a\u503c\u80fd\u8b49\u660e\u5167\u5bb9\u672a\u7d93\u7ac4\u6539\uff0c\u6642\u9593\u6233\u8a18\u9304\u4e86\u64f7\u53d6\u7684\u78ba\u5207\u6642\u9593\u3002\u9019\u662f\u6cd5\u5ead\u63a1\u7d0d\u6578\u4f4d\u8b49\u64da\u7684\u95dc\u9375\u8981\u7d20\u3002<\/strong>\u5982\u679c\u4f60\u7684\u8abf\u67e5\u53ef\u80fd\u6d89\u53ca\u6cd5\u5f8b\u7a0b\u5e8f\uff0c\u9019\u662f\u66f4\u7a69\u59a5\u7684\u9078\u64c7\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u52a0\u62ff\u5927\u958b\u767c\u8005Justin Seitz\u65bc2016\u5e74\u5275\u5efa\u7684\u7db2\u9801\u5b58\u6a94\u5de5\u5177\u3002<\/p>\n","protected":false},"featured_media":4124,"template":"","toolbox-type":[],"class_list":["post-4116","toolbox","type-toolbox","status-publish","has-post-thumbnail","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/tian-jian.org\/tj-field-school\/wp-json\/wp\/v2\/toolbox\/4116","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tian-jian.org\/tj-field-school\/wp-json\/wp\/v2\/toolbox"}],"about":[{"href":"https:\/\/tian-jian.org\/tj-field-school\/wp-json\/wp\/v2\/types\/toolbox"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tian-jian.org\/tj-field-school\/wp-json\/wp\/v2\/media\/4124"}],"wp:attachment":[{"href":"https:\/\/tian-jian.org\/tj-field-school\/wp-json\/wp\/v2\/media?parent=4116"}],"wp:term":[{"taxonomy":"toolbox-type","embeddable":true,"href":"https:\/\/tian-jian.org\/tj-field-school\/wp-json\/wp\/v2\/toolbox-type?post=4116"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}