{"id":9062,"date":"2025-09-18T22:42:17","date_gmt":"2025-09-18T13:42:17","guid":{"rendered":"https:\/\/code-plus.jp\/gp\/?page_id=9062"},"modified":"2026-07-08T13:13:48","modified_gmt":"2026-07-08T04:13:48","slug":"dirtree-generator","status":"publish","type":"page","link":"https:\/\/code-plus.jp\/gp\/tools\/dirtree-generator\/","title":{"rendered":"DirTree Generator\uff08\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u751f\u6210\u30c4\u30fc\u30eb\uff09 -\u30d5\u30a9\u30eb\u30c0\u69cb\u9020\u3092\u8996\u899a\u5316-"},"content":{"rendered":"<!-- \u0f3b\u273f\ud835\udc0f\ud835\udc00\ud835\udc06\ud835\udc04-\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u751f\u6210\u30c4\u30fc\u30eb \uff08\/tools\/dirtree-generator\/\uff09\r\n* \u30da\u30fc\u30b8\u30af\u30e9\u30b9\uff1apg-saracnvtvkaa bg-hackingGate\uff08WordPress\u304c\u5c0f\u6587\u5b57\u3067\u3057\u304b\u51fa\u529b\u3067\u304d\u306a\u3044\u305f\u3081\uff09\r\n* \u8b58\u5225\u30b3\u30fc\u30c9\uff1acnvtVkaA\uff08section\/dept \u306e\u30af\u30e9\u30b9\u540d, \u753b\u50cf\u540d\u306b\u4f7f\u7528\uff09\r\n\u0fd0\u0f36\u22b0\u27e1\u22b1\u0f36\u22b0\u27e1\u22b1\u0f36\u22b0\u27e1\u22b1\u0f36\u2740\u0f36\u22b0\u27e1\u22b1\u0f36\u22b0\u27e1\u22b1\u0f36\u22b0\u27e1\u22b1\u0f36\u0f04 -->\r\n\r\n<div class=\"pg-saracnvtvkaa bg-hackingGate\">\r\n\r\n<!-- \u0f3b.mezzala\uff08\u4f59\u767d\u8abf\u6574\uff1apage\u4e0a\uff09\u0f3a -->\r\n<hr class=\"spacer-mezzala\" \/>\r\n\r\n<hr id=\"ch-TextConverter\" anchor \/>\r\n  <header class=\"page-header mx-auto\">\r\n    <!-- \u2756\u30d1\u30f3\u304f\u305a\u30ea\u30b9\u30c8 --><div><!-- breadcrumb.php -->\n<style>\n\/* \u2756breadcrumb.leckermaul\uff08\u30d1\u30f3\u304f\u305a\u30ea\u30b9\u30c8\uff09\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u0f1a\u0f36\u22b0\u27e1\u22b1\u0f36\u0f1a\u0f3a *\/\n.zaratan .breadcrumb.leckermaul {\n\twidth: 100%;\n\tmax-width: 92.5vw;\n\tmargin-inline: auto;\n}\n\n.zaratan .breadcrumb.leckermaul :is(ul, ol) {\n\tmin-height: 3rem;\n\tline-height: initial;\n\tfont-size: 0;\n\tletter-spacing: 0;\n\toverflow: hidden;\n}\n\n.zaratan .breadcrumb.leckermaul li {\n\tdisplay: inline;\n\tline-height: 1.55;\n\tfont-size: clamp(0.775rem, calc(0.775rem + ((1vw - 0.225rem) * 0.1563)), 0.8750rem);\n}\n\n.zaratan .breadcrumb.leckermaul li>*,\n.zaratan .breadcrumb.leckermaul li::before {\n\tposition: relative;\n\ttop: 0.125em;\n\tdisplay: inline-flex;\n\talign-items: center;\n}\n\n.zaratan .breadcrumb.leckermaul a {\n\tdisplay: inline;\n\tcolor: var(--c-base-300, hsl(233, 6%, 74%));\n\tmargin-right: .5em;\n}\n\n.zaratan .breadcrumb.leckermaul li:nth-of-type(n+2) a {\n\tmargin-left: .5em;\n}\n\n.zaratan .breadcrumb.leckermaul .current_page_item a {\n\tpointer-events: none;\n\tcolor: var(--c-base-300, hsl(233, 6%, 74%));\n}\n\n@media (any-hover:hover) {\n\t.zaratan .breadcrumb.leckermaul a:hover {\n\t\tcolor: var(--c-base-300, hsl(233, 6%, 74%));\n\t}\n}\n\n\/* .separator *\/\n.zaratan .breadcrumb.leckermaul li:nth-of-type(n+2)::before,\n.zaratan .breadcrumb.leckermaul.chevron-right li:nth-of-type(n+2)::before {\n\tcontent: \">\";\n\tcolor: var(--c-base-300, hsl(233, 6%, 74%))\n}\n\n.zaratan .breadcrumb.leckermaul.slash li:nth-of-type(n+2)::before {\n\tcontent: \"\/\";\n}\n\n.zaratan .breadcrumb.leckermaul.trigon-bullet li:nth-of-type(n+2)::before {\n\tcontent: \"\u2023\";\n}\n<\/style>\n\n\n<nav class=\"breadcrumb leckermaul py-0.5r mx-auto py-0.5r\">\n  <ul class=\"breadcrumb-wrapper\">\n    <!-- \u30c8\u30c3\u30d7\u30da\u30fc\u30b8\u3078\u306e\u30ea\u30f3\u30af\u3092\u8868\u793a -->\n    <li><a href=\"https:\/\/code-plus.jp\/gp\/\"><i><\/i>\u30c8\u30c3\u30d7<\/a><\/li>\n\n          <!-- \u56fa\u5b9a\u30da\u30fc\u30b8\uff08\u305d\u308c\u4ee5\u5916\uff09\uff1a \u5148\u7956\u30da\u30fc\u30b8\u540d\u3068\u3001\u73fe\u5728\u306e\u30da\u30fc\u30b8\u540d\u3092\u8868\u793a -->\n      <li><a href=\"https:\/\/code-plus.jp\/gp\/tools\/\">TOOLS\uff08\u30c4\u30fc\u30eb\u4e00\u89a7\uff09<\/a><\/li><li class=\"current_page_item\"><a>PDF\u30fb\u6587\u66f8\u7de8\u96c6<\/a><\/li>    <!-- \/\/\/if (is_page()) -->\n\n  <\/ul>\n<\/nav><\/div>\r\n  <\/header><!-- \/\/\/.inheader -->\r\n\r\n  <!-- \u0f3b\u00a7\ud835\udc12\ud835\udc04\ud835\udc02\ud835\udc13\ud835\udc08\ud835\udc0e\ud835\udc0d\u0f3a -->\r\n  <section class=\"sect-cnvtVkaA-Intro\" style=\"contain-intrinsic-size:1000px;\">\r\n    <header class=\"section__inheader mx-auto scroll-fadeIn\">\r\n      <div class=\"hgroup-wrapper d-iblock mb-0.5r\">\r\n        <h1 class=\"fz-xxl hdg-page mb-0.25pc\"><span>DirTree Generator\uff08\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u751f\u6210\u30c4\u30fc\u30eb\uff09 -\u30d5\u30a9\u30eb\u30c0\u69cb\u9020\u3092\u8996\u899a\u5316-<\/span><\/h1>\r\n        <p class=\"page-foreword fz-ss\">\r\n          \u30d5\u30a9\u30eb\u30c0\u69cb\u9020\u3092\u8996\u899a\u7684\u306a\u30c4\u30ea\u30fc\u5f62\u5f0f\u3067\u81ea\u52d5\u751f\u6210\u3059\u308b\u30aa\u30f3\u30e9\u30a4\u30f3\u30c4\u30fc\u30eb\u3002\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u69cb\u9020\u3092\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u5316\u3057\u305f\u308a\u3001README\u306b\u8cbc\u308a\u4ed8\u3051\u305f\u308a\u3059\u308b\u969b\u306b\u4fbf\u5229\u3002\r\n        <\/p>\r\n      <\/div><!-- \/\/\/.hgroup -->\r\n\r\n      <a class=\"fl-right badge is-outlined is-gray fz-xs bdrs-0.25r\" href=\"#ch-Explanation\">\r\n        <i class=\"icon mas ma-help\"><\/i>&nbsp;<span>\u4f7f\u3044\u65b9<\/span>\r\n      <\/a>\r\n    <\/header><!-- \/\/\/.inheader -->\r\n  <\/section>\r\n\r\n\r\n  <!-- \u0f3b\u00a7\ud835\udc12\ud835\udc04\ud835\udc02\ud835\udc13\ud835\udc08\ud835\udc0e\ud835\udc0d\u0f3a -->\r\n  <hr id=\"ch-Converter\" anchor \/>\r\n  <section class=\"sect-cnvtVkaA-Converter\" style=\"contain-intrinsic-size:1000px;\">\r\n    <div class=\"section__interior fxd-row mx-auto\">\r\n      <figure class=\"section__leftlane\">\r\n        <div class=\"hgroup-wrapper\">\r\n          <h3 class=\"fz-rg hdg-section mb-0.25pc\"><span>\u25bc\u30d5\u30a9\u30eb\u30c0\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044<\/span><\/h3>\r\n        <\/div><!-- \/\/\/.hgroup -->\r\n\r\n        <div class=\"chest-wrapper relatived\">\r\n          <div id=\"endropArea\" class=\"endrop-area\" style=\"height:17.5pc;\">\r\n            <div class=\"endrop-inner\">\r\n              <i class=\"endrop-icon\"><\/i>\r\n              <p class=\"endrop-text\">\u30d5\u30a9\u30eb\u30c0\u3092\u30c9\u30e9\u30c3\u30b0&amp;\u30c9\u30ed\u30c3\u30d7<\/p>\r\n              <small class=\"endrop-smock\">\u307e\u305f\u306f \u30af\u30ea\u30c3\u30af\u3057\u3066\u9078\u629e<\/small>\r\n            <\/div>\r\n            <input type=\"file\" id=\"fileInput\" class=\"file-input\" webkitdirectory multiple>\r\n          <\/div>\r\n          <ins id=\"decodedMessage\"><\/ins>\r\n        <\/div><!-- \/\/\/.chest -->\r\n\r\n        <!-- \u30aa\u30d7\u30b7\u30e7\u30f3 -->\r\n        <div class=\"colgroup w-full mt-1r\">\r\n          <label class=\"label is-outlined fz-sm\"><input type=\"checkbox\" class=\"checkbox\" id=\"showHidFilders\" checked>\u96a0\u3057\u30d5\u30a1\u30a4\u30eb\u30fb\u30d5\u30a9\u30eb\u30c0\u3092\u8868\u793a<\/label>\r\n          <label class=\"label is-outlined\">\r\n            <p class=\"fz-sm\" style=\"line-height:2.55em;\">\u9664\u5916\u3059\u308b\u30d5\u30a9\u30eb\u30c0\uff08\u30ab\u30f3\u30de\u533a\u5207\u308a\uff09\uff1a<\/p>\r\n            <textarea id=\"excludeFolders\" class=\"textarea\" rows=\"2\" placeholder=\"\u4f8b: .git, node_modules, .claude\">.claude, .git, .husky, .serena, .env.local, node_modules, .DS_Store, Thumbs.db, .cache, temp, tmp, debug, test, tests, coverage<\/textarea>\r\n          <\/label>\r\n        <\/div><!-- \/\/\/.colgroup -->\r\n      <\/figure><!-- \/\/\/.leftlane -->\r\n\r\n      <figure class=\"section__centerlane\">\r\n        <aside class=\"sticky-sidebar fxd-column pc-center\" style=\"height:39.5pc;\">\r\n        <\/aside>\r\n      <\/figure><!-- \/\/\/.centerlane -->\r\n\r\n\r\n      <figure class=\"section__rightlane\">\r\n        <div class=\"chest-wrapper relatived\">\r\n          <h3 class=\"fz-rg hdg-section mb-0.25pc\"><span>\u25bc\u751f\u6210\u7d50\u679c<\/span><\/h3>\r\n          <textarea class=\"textarea\" id=\"decodeArea\" style=\"height:17.5pc;\" placeholder=\"\u3053\u3053\u306b\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u304c\u8868\u793a\u3055\u308c\u307e\u3059\" readonly><\/textarea>\r\n          <ins id=\"encodedMessage\"><\/ins>\r\n        <\/div><!-- \/\/\/.chest -->\r\n      <\/figure><!-- \/\/\/.rightlane -->\r\n    <\/div><!-- \/\/\/.interior.fxd-row -->\r\n  <\/section>\r\n\r\n\r\n  <!-- \u0f3b\u00a7\ud835\udc12\ud835\udc04\ud835\udc02\ud835\udc13\ud835\udc08\ud835\udc0e\ud835\udc0d\u0f3a -->\r\n  <hr id=\"ch-Explanation\" anchor \/>\r\n  <section class=\"sect-cnvtVkaA-Explanation pt-3r\" style=\"contain-intrinsic-size:1000px;\">\r\n    <div class=\"section__interior mx-auto scroll-fadeIn\">\r\n      <div class=\"box is-broad is-solided c-base-900\">\r\n        <h4 class=\"hdg-explanation fz-md mb-0.25pc\">\u4f7f\u3044\u65b9<\/h4>\r\n        <h5 class=\"fz-ss hdg-explanation mb-0.25pc mt-1r\">\ud83d\udca1 \u4e3b\u306a\u6a5f\u80fd<\/h5>\r\n        <ul class=\"fz-ss mb-1r\">\r\n          <li><b class=\"fw-600\">\u30d5\u30a9\u30eb\u30c0\u69cb\u9020\u306e\u81ea\u52d5\u751f\u6210<\/b>\uff1a\u30d5\u30a9\u30eb\u30c0\u3092\u30c9\u30e9\u30c3\u30b0&\u30c9\u30ed\u30c3\u30d7\u3059\u308b\u3060\u3051\u3067\u3001\u968e\u5c64\u69cb\u9020\u3092\u8996\u899a\u7684\u306a\u30c4\u30ea\u30fc\u5f62\u5f0f\u3067\u751f\u6210<\/li>\r\n          <li><b class=\"fw-600\">\u96a0\u3057\u30d5\u30a1\u30a4\u30eb\u5bfe\u5fdc<\/b>\uff1a<code>.git<\/code>\u3001<code>.DS_Store<\/code>\u306a\u3069\u306e\u96a0\u3057\u30d5\u30a1\u30a4\u30eb\u30fb\u30d5\u30a9\u30eb\u30c0\u306e\u8868\u793a\/\u975e\u8868\u793a\u3092\u5207\u308a\u66ff\u3048\u53ef\u80fd<\/li>\r\n          <li><b class=\"fw-600\">\u9664\u5916\u8a2d\u5b9a<\/b>\uff1a<code>node_modules<\/code>\u3001<code>vendor<\/code>\u306a\u3069\u306e\u4e0d\u8981\u306a\u30d5\u30a9\u30eb\u30c0\u3092\u9664\u5916\u3057\u3066\u30b9\u30c3\u30ad\u30ea\u8868\u793a<\/li>\r\n          <li><b class=\"fw-600\">\u81ea\u52d5\u30b3\u30d4\u30fc<\/b>\uff1a\u751f\u6210\u3055\u308c\u305f\u30c4\u30ea\u30fc\u306f\u81ea\u52d5\u7684\u306b\u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9\u306b\u30b3\u30d4\u30fc\u3055\u308c\u3001\u3059\u3050\u306b\u8cbc\u308a\u4ed8\u3051\u53ef\u80fd<\/li>\r\n        <\/ul>\r\n\r\n        <h5 class=\"fz-ss hdg-explanation mb-0.25pc\">\ud83c\udfaf \u6d3b\u7528\u4f8b<\/h5>\r\n        <ul class=\"fz-ss mb-1r\">\r\n          <li><b class=\"fw-600\">\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u6587\u66f8\u5316<\/b>\uff1aREADME\u3084\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306b\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u69cb\u9020\u3092\u8a18\u8f09<\/li>\r\n          <li><b class=\"fw-600\">\u6280\u8853\u8cc7\u6599\u4f5c\u6210<\/b>\uff1a\u30b7\u30b9\u30c6\u30e0\u8a2d\u8a08\u66f8\u3084\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u8aac\u660e\u8cc7\u6599\u306b\u4f7f\u7528<\/li>\r\n          <li><b class=\"fw-600\">\u30b3\u30fc\u30c9\u30ec\u30d3\u30e5\u30fc<\/b>\uff1a\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u69cb\u9020\u306e\u5171\u6709\u3084\u8aac\u660e<\/li>\r\n          <li><b class=\"fw-600\">\u30d0\u30b0\u5831\u544a<\/b>\uff1a\u554f\u984c\u306e\u3042\u308b\u30d5\u30a1\u30a4\u30eb\u306e\u5834\u6240\u3092\u8996\u899a\u7684\u306b\u5171\u6709<\/li>\r\n          <li><b class=\"fw-600\">\u30c1\u30fc\u30e0\u5171\u6709<\/b>\uff1a\u65b0\u30e1\u30f3\u30d0\u30fc\u3078\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u69cb\u9020\u8aac\u660e<\/li>\r\n        <\/ul>\r\n\r\n        <h5 class=\"fz-ss hdg-explanation mb-0.25pc\">\u2699\ufe0f \u4fbf\u5229\u306a\u30aa\u30d7\u30b7\u30e7\u30f3<\/h5>\r\n        <ul class=\"fz-ss\">\r\n          <li><b class=\"fw-600\">\u96a0\u3057\u30d5\u30a1\u30a4\u30eb\u8868\u793a<\/b>\uff1a\u958b\u767a\u306b\u5fc5\u8981\u306a\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u3082\u542b\u3081\u3066\u5b8c\u5168\u306a\u69cb\u9020\u3092\u8868\u793a<\/li>\r\n          <li><b class=\"fw-600\">\u67d4\u8edf\u306a\u9664\u5916\u8a2d\u5b9a<\/b>\uff1a\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u5fdc\u3058\u3066\u9664\u5916\u30d5\u30a9\u30eb\u30c0\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba<\/li>\r\n          <li><b class=\"fw-600\">\u30ef\u30f3\u30af\u30ea\u30c3\u30af\u64cd\u4f5c<\/b>\uff1a\u30d5\u30a9\u30eb\u30c0\u3092\u9078\u3076\u3060\u3051\u3067\u5373\u5ea7\u306b\u30c4\u30ea\u30fc\u751f\u6210<\/li>\r\n          <li><b class=\"fw-600\">\u30af\u30ed\u30b9\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0<\/b>\uff1a\u30d6\u30e9\u30a6\u30b6\u304c\u3042\u308c\u3070\u3069\u3053\u3067\u3082\u4f7f\u3048\u308b<\/li>\r\n        <\/ul>\r\n      <\/div>\r\n    <\/div><!-- \/\/\/.interior -->\r\n  <\/section><!-- \/\/\/.section -->\r\n\r\n\r\n  <!-- \u0f3b\u00a7\ud835\udc12\ud835\udc04\ud835\udc02\ud835\udc13\ud835\udc08\ud835\udc0e\ud835\udc0d\u0f3a -->\r\n  <hr id=\"ch-Relation\" anchor \/>\r\n  <section class=\"sect-cnvtVkaA-Relation pt-3r\" style=\"contain-intrinsic-size:1000px;\">\r\n    <div class=\"section__interior mx-auto scroll-fadeIn\">\r\n      <div class=\"hgroup-wrapper mb-0.5pc\">\r\n        <h5 class=\"hdg-relation fz-rg\"><span>\u95a2\u9023\u30c4\u30fc\u30eb<\/span><\/h5>\r\n      <\/div><!-- \/\/\/.hgroup -->\r\n\r\n      <ul class=\"shelf-wrapper_pc shelfA\" data-cols_pc=\"2\">\r\n        <li class=\"slide\">\r\n          <a href=\"https:\/\/code-plus.jp\/gp\/tools\/list2trees-converter\/\" class=\"linkbox\">\r\n            <h4 class=\"linkbox-title fz-md\">\u30d7\u30e9\u30b9\u8a18\u53f7(+)\u968e\u5c64\u30ea\u30b9\u30c8\u3092 \u2192 \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u306b\u5909\u63db\u30c4\u30fc\u30eb<\/h4>\r\n            <picture class=\"linkbox-thumbnail\">\r\n              <img decoding=\"async\" width=\"300\" height=\"200\" src=\"https:\/\/code-plus.jp\/gp\/wp-content\/uploads\/bb9f03bea42cb6eed6fda21ce5ee2c5f.jpg?ver=20260708131348\" alt=\"\u30d7\u30e9\u30b9\u8a18\u53f7(+)\u968e\u5c64\u30ea\u30b9\u30c8\u3092 \u2192 \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u306b\u5909\u63db\u30c4\u30fc\u30eb\" loading=\"lazy\" \/>\r\n            <\/picture>\r\n            <span class=\"linkbox-excerpt\">+\u8a18\u53f7\u306e\u500b\u6570\u3067\u968e\u5c64\u3092\u8868\u73fe\u3057\u305f\u30ea\u30b9\u30c8\u3092\u3001\u8996\u899a\u7684\u306a\u30c4\u30ea\u30fc\u69cb\u9020\uff08\u251c\u2500\u2500 \u2514\u2500\u2500\uff09\u306b\u81ea\u52d5\u5909\u63db\u3057\u307e\u3059\u3002\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u69cb\u9020\u3001Claude\u3078\u306e\u8aac\u660e\u7528\u306b\u6700\u9069\r\n            <\/span>\r\n          <\/a>\r\n        <\/li>\r\n        <li class=\"slide\">\r\n          <a href=\"https:\/\/code-plus.jp\/gp\/tools\/updatetags-converter\/\" class=\"linkbox\">\r\n            <h4 class=\"linkbox-title fz-md\">HTML\u30bf\u30b0\u4e00\u62ec\u5909\u63db\u30c4\u30fc\u30eb | \u30aa\u30f3\u30e9\u30a4\u30f3\u4e0a\u3067\u30bf\u30b0\u8a18\u6cd5\u3092\u77ac\u6642\u306b\u5909\u63db<\/h4>\r\n            <picture class=\"linkbox-thumbnail\">\r\n              <img decoding=\"async\" width=\"300\" height=\"200\" src=\"https:\/\/code-plus.jp\/gp\/wp-content\/uploads\/70f9700c6f6883a60f60277286884e28.png?ver=20260708131348\" alt=\"HTML\u30bf\u30b0\u4e00\u62ec\u5909\u63db\u30c4\u30fc\u30eb | \u30aa\u30f3\u30e9\u30a4\u30f3\u4e0a\u3067\u30bf\u30b0\u8a18\u6cd5\u3092\u77ac\u6642\u306b\u5909\u63db\" loading=\"lazy\" \/>\r\n            <\/picture>\r\n            <span class=\"linkbox-excerpt\">HTML\u30bf\u30b0\u3092\u4e00\u62ec\u5909\u63db\u3067\u304d\u308b\u30aa\u30f3\u30e9\u30a4\u30f3\u5909\u63db\u30b5\u30a4\u30c8\u3002div\u2192section\u3001span\u2192em\u8a18\u6cd5\u306a\u3069\u6307\u5b9a\u30bf\u30b0\u3092\u4efb\u610f\u30bf\u30b0\u306b\u5909\u63db\u3002\u30d6\u30e9\u30a6\u30b6\u4e0a\u3067Web\u5236\u4f5c\u3092\u52b9\u7387\u5316\u3002\r\n            <\/span>\r\n          <\/a>\r\n        <\/li>\r\n      <\/ul><!-- \/\/\/.shelf -->\r\n    <\/div><!-- \/\/\/.interior -->\r\n  <\/section><!-- \/\/\/.section -->\r\n\r\n\r\n  <!-- \u0f3b\u00a7\ud835\udc03\ud835\udc04\ud835\udc0f\ud835\udc00\ud835\udc11\ud835\udc13\ud835\udc0c\ud835\udc04\ud835\udc0d\ud835\udc13\u0f3a -->\r\n\r\n  <section class=\"sect-cnvtVkaA-Relation2 pt-3r\" style=\"contain-intrinsic-size:1000px;\">\r\n    <div class=\"section__interior mx-auto scroll-fadeIn\">\r\n      <div class=\"hgroup-wrapper mb-0.5pc\">\r\n\r\n      <\/div><!-- \/\/\/.hgroup -->\r\n\r\n\r\n    <\/div><!-- \/\/\/.interior -->\r\n  <\/section><!-- \/\/\/.section -->\r\n\r\n\r\n  <!-- \u0f3b.mediano\uff08\u4f59\u767d\u8abf\u6574\uff1apage\u4e0b\uff09\u0f3a -->\r\n  <hr class=\"spacer-mediano\" \/>\r\n\r\n<\/div><!-- \/\/\/\u25b2.page  -->\r\n\r\n\r\n<script>\r\ndocument.addEventListener('DOMContentLoaded', function() {\r\n  const endropArea = document.getElementById('endropArea');\r\n  const fileInput = document.getElementById('fileInput');\r\n  const decodeArea = document.getElementById('decodeArea');\r\n  const encodedMessage = document.getElementById('encodedMessage');\r\n  const showHidFilders = document.getElementById('showHidFilders');\r\n  const excludeFolders = document.getElementById('excludeFolders');\r\n\r\n  if (!endropArea || !decodeArea) {\r\n    console.error('\u5fc5\u8981\u306a\u8981\u7d20\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093');\r\n    return;\r\n  }\r\n\r\n  let fileStructure = new Map();\r\n  let rootName = '';\r\n  let totalFiles = 0;\r\n  let totalDirs = 0;\r\n\r\n  \/\/ webkitdirectory\u5c5e\u6027\u3092\u8ffd\u52a0\r\n  fileInput.setAttribute('webkitdirectory', '');\r\n  fileInput.setAttribute('directory', '');\r\n  fileInput.style.display = 'none';\r\n  endropArea.style.cursor = 'pointer';\r\n\r\n  \/\/ \u9664\u5916\u30d5\u30a9\u30eb\u30c0\u306e\u30bb\u30c3\u30c8\u3092\u53d6\u5f97\r\n  function getExcludeSet() {\r\n    return new Set(\r\n      excludeFolders.value.split(',').map(s => s.trim()).filter(s => s.length > 0)\r\n    );\r\n  }\r\n\r\n  \/\/ \u30d1\u30b9\u304c\u9664\u5916\u5bfe\u8c61\u304b\u30c1\u30a7\u30c3\u30af\r\n  function shouldExclude(name, excludeSet) {\r\n    return excludeSet.has(name);\r\n  }\r\n\r\n  \/\/ \u96a0\u3057\u30d5\u30a1\u30a4\u30eb\u304b\u30c1\u30a7\u30c3\u30af\r\n  function isHidden(name) {\r\n    return name.startsWith('.');\r\n  }\r\n\r\n  \/\/ ====================================\r\n  \/\/ \u30c9\u30e9\u30c3\u30b0&\u30c9\u30ed\u30c3\u30d7\u3067\u30d5\u30a9\u30eb\u30c0\u3092\u8aad\u307f\u8fbc\u3080\r\n  \/\/ ====================================\r\n\r\n  \/\/ FileSystemDirectoryEntry\u3092\u518d\u5e30\u7684\u306b\u8aad\u307f\u8fbc\u3080\r\n  async function readDirectoryEntry(directoryEntry, path, excludeSet) {\r\n    return new Promise((resolve, reject) => {\r\n      const reader = directoryEntry.createReader();\r\n      const allEntries = [];\r\n\r\n      \/\/ readEntries\u306f\u6700\u5927100\u4ef6\u305a\u3064\u8fd4\u3059\u306e\u3067\u3001\u7a7a\u306b\u306a\u308b\u307e\u3067\u30eb\u30fc\u30d7\r\n      function readBatch() {\r\n        reader.readEntries(async (entries) => {\r\n          if (entries.length === 0) {\r\n            \/\/ \u3059\u3079\u3066\u8aad\u307f\u8fbc\u3093\u3060\r\n            for (const entry of allEntries) {\r\n              const name = entry.name;\r\n\r\n              \/\/ \u9664\u5916\u30c1\u30a7\u30c3\u30af\r\n              if (shouldExclude(name, excludeSet)) continue;\r\n\r\n              \/\/ \u96a0\u3057\u30d5\u30a1\u30a4\u30eb\u30c1\u30a7\u30c3\u30af\r\n              if (!showHidFilders.checked && isHidden(name)) continue;\r\n\r\n              const fullPath = path ? path + '\/' + name : name;\r\n\r\n              if (entry.isDirectory) {\r\n                \/\/ \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u518d\u5e30\u7684\u306b\u8aad\u307f\u8fbc\u307f\r\n                addToStructure(fullPath.split('\/'), fileStructure, 'directory');\r\n                await readDirectoryEntry(entry, fullPath, excludeSet);\r\n              } else {\r\n                \/\/ \u30d5\u30a1\u30a4\u30eb\r\n                addToStructure(fullPath.split('\/'), fileStructure, 'file');\r\n                totalFiles++;\r\n              }\r\n            }\r\n            resolve();\r\n          } else {\r\n            allEntries.push(...entries);\r\n            readBatch(); \/\/ \u6b21\u306e\u30d0\u30c3\u30c1\u3092\u8aad\u3080\r\n          }\r\n        }, reject);\r\n      }\r\n\r\n      readBatch();\r\n    });\r\n  }\r\n\r\n  \/\/ \u30c9\u30ed\u30c3\u30d7\u30a4\u30d9\u30f3\u30c8\r\n  endropArea.addEventListener('drop', async function(e) {\r\n    e.preventDefault();\r\n    e.stopPropagation();\r\n    this.style.backgroundColor = '';\r\n    this.style.borderColor = '';\r\n\r\n    const items = e.dataTransfer.items;\r\n    if (!items || items.length === 0) return;\r\n\r\n    \/\/ webkitGetAsEntry\u304c\u4f7f\u3048\u308b\u304b\u30c1\u30a7\u30c3\u30af\r\n    const firstItem = items[0];\r\n    if (!firstItem.webkitGetAsEntry) {\r\n      \/\/ \u975e\u5bfe\u5fdc\u30d6\u30e9\u30a6\u30b6\u306e\u5834\u5408\u306f\u30d5\u30a1\u30a4\u30eb\u9078\u629e\u30c0\u30a4\u30a2\u30ed\u30b0\u3092\u958b\u304f\r\n      showMessage('\u3053\u306e\u30d6\u30e9\u30a6\u30b6\u306f\u30c9\u30e9\u30c3\u30b0&\u30c9\u30ed\u30c3\u30d7\u306b\u975e\u5bfe\u5fdc\u3067\u3059\u3002\u30af\u30ea\u30c3\u30af\u3057\u3066\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002', false);\r\n      fileInput.click();\r\n      return;\r\n    }\r\n\r\n    const entry = firstItem.webkitGetAsEntry();\r\n    if (!entry) return;\r\n\r\n    if (!entry.isDirectory) {\r\n      showMessage('\u30d5\u30a9\u30eb\u30c0\u3092\u30c9\u30ed\u30c3\u30d7\u3057\u3066\u304f\u3060\u3055\u3044\uff08\u30d5\u30a1\u30a4\u30eb\u3067\u306f\u306a\u304f\uff09', false);\r\n      return;\r\n    }\r\n\r\n    \/\/ \u30d5\u30a9\u30eb\u30c0\u3092\u8aad\u307f\u8fbc\u3080\r\n    const dropInner = endropArea.querySelector('.endrop-inner');\r\n    const originalContent = dropInner.innerHTML;\r\n    dropInner.innerHTML = '<p style=\"padding: 20px;\">\u30d5\u30a9\u30eb\u30c0\u69cb\u9020\u3092\u89e3\u6790\u4e2d...<\/p>';\r\n\r\n    try {\r\n      fileStructure = new Map();\r\n      totalFiles = 0;\r\n      totalDirs = 0;\r\n      rootName = entry.name;\r\n\r\n      const excludeSet = getExcludeSet();\r\n      await readDirectoryEntry(entry, '', excludeSet);\r\n\r\n      totalDirs = countDirectories(fileStructure);\r\n      const treeOutput = generateTree();\r\n      displayOutput(treeOutput);\r\n      copyToClipboard();\r\n\r\n      dropInner.innerHTML = `\r\n        <div style=\"padding: 20px;\">\r\n          <p style=\"color: #4CAF50; font-weight: bold;\">\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u3092\u751f\u6210\u3057\u307e\u3057\u305f\uff01<\/p>\r\n          <small style=\"color: #666;\">${totalFiles}\u500b\u306e\u30d5\u30a1\u30a4\u30eb \/ ${totalDirs}\u500b\u306e\u30d5\u30a9\u30eb\u30c0<\/small>\r\n        <\/div>\r\n      `;\r\n\r\n      setTimeout(function() {\r\n        dropInner.innerHTML = originalContent;\r\n      }, 3000);\r\n\r\n    } catch (err) {\r\n      console.error('\u30d5\u30a9\u30eb\u30c0\u8aad\u307f\u8fbc\u307f\u30a8\u30e9\u30fc:', err);\r\n      showMessage('\u30d5\u30a9\u30eb\u30c0\u306e\u8aad\u307f\u8fbc\u307f\u306b\u5931\u6557\u3057\u307e\u3057\u305f: ' + err.message, false);\r\n      dropInner.innerHTML = originalContent;\r\n    }\r\n  });\r\n\r\n  \/\/ ====================================\r\n  \/\/ \u30af\u30ea\u30c3\u30af\u3067\u30d5\u30a1\u30a4\u30eb\u9078\u629e\uff08\u5f93\u6765\u306e\u65b9\u6cd5\uff09\r\n  \/\/ ====================================\r\n\r\n  endropArea.addEventListener('click', function(e) {\r\n    if (e.target.tagName !== 'INPUT') {\r\n      fileInput.click();\r\n    }\r\n  });\r\n\r\n  fileInput.addEventListener('change', async function(e) {\r\n    const files = e.target.files;\r\n    if (files.length > 0) {\r\n      await handleFilesFromInput(files);\r\n    }\r\n  });\r\n\r\n  \/\/ input[webkitdirectory]\u304b\u3089\u306e\u30d5\u30a1\u30a4\u30eb\u51e6\u7406\r\n  async function handleFilesFromInput(files) {\r\n    const dropInner = endropArea.querySelector('.endrop-inner');\r\n    const originalContent = dropInner.innerHTML;\r\n    dropInner.innerHTML = '<p style=\"padding: 20px;\">\u30d5\u30a9\u30eb\u30c0\u69cb\u9020\u3092\u89e3\u6790\u4e2d...<\/p>';\r\n\r\n    fileStructure = new Map();\r\n    totalFiles = 0;\r\n    totalDirs = 0;\r\n\r\n    const excludeSet = getExcludeSet();\r\n\r\n    \/\/ \u30eb\u30fc\u30c8\u30d5\u30a9\u30eb\u30c0\u540d\u3092\u53d6\u5f97\r\n    if (files.length > 0 && files[0].webkitRelativePath) {\r\n      rootName = files[0].webkitRelativePath.split('\/')[0];\r\n    }\r\n\r\n    for (const file of files) {\r\n      const relativePath = file.webkitRelativePath;\r\n      const pathParts = relativePath.split('\/');\r\n\r\n      \/\/ \u30eb\u30fc\u30c8\u30d5\u30a9\u30eb\u30c0\u540d\u3092\u9664\u53bb\r\n      if (pathParts[0] === rootName) {\r\n        pathParts.shift();\r\n      }\r\n\r\n      if (pathParts.length === 0) continue;\r\n\r\n      \/\/ \u9664\u5916\u30c1\u30a7\u30c3\u30af\r\n      let excluded = false;\r\n      for (const part of pathParts) {\r\n        if (shouldExclude(part, excludeSet)) {\r\n          excluded = true;\r\n          break;\r\n        }\r\n      }\r\n      if (excluded) continue;\r\n\r\n      \/\/ \u96a0\u3057\u30d5\u30a1\u30a4\u30eb\u30c1\u30a7\u30c3\u30af\r\n      if (!showHidFilders.checked) {\r\n        if (pathParts.some(part => isHidden(part))) continue;\r\n      }\r\n\r\n      addToStructure(pathParts, fileStructure, 'file');\r\n      totalFiles++;\r\n    }\r\n\r\n    totalDirs = countDirectories(fileStructure);\r\n    const treeOutput = generateTree();\r\n    displayOutput(treeOutput);\r\n    copyToClipboard();\r\n\r\n    dropInner.innerHTML = `\r\n      <div style=\"padding: 20px;\">\r\n        <p style=\"color: #4CAF50; font-weight: bold;\">\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u3092\u751f\u6210\u3057\u307e\u3057\u305f\uff01<\/p>\r\n        <small style=\"color: #666;\">${totalFiles}\u500b\u306e\u30d5\u30a1\u30a4\u30eb \/ ${totalDirs}\u500b\u306e\u30d5\u30a9\u30eb\u30c0<\/small>\r\n      <\/div>\r\n    `;\r\n\r\n    setTimeout(function() {\r\n      dropInner.innerHTML = originalContent;\r\n    }, 3000);\r\n\r\n    fileInput.value = '';\r\n  }\r\n\r\n  \/\/ ====================================\r\n  \/\/ \u30c9\u30e9\u30c3\u30b0\u30aa\u30fc\u30d0\u30fc\u7b49\u306e\u30a4\u30d9\u30f3\u30c8\r\n  \/\/ ====================================\r\n\r\n  endropArea.addEventListener('dragover', function(e) {\r\n    e.preventDefault();\r\n    e.stopPropagation();\r\n    this.style.backgroundColor = '#f0f0f0';\r\n    this.style.borderColor = '#999';\r\n  });\r\n\r\n  endropArea.addEventListener('dragleave', function(e) {\r\n    e.preventDefault();\r\n    e.stopPropagation();\r\n    this.style.backgroundColor = '';\r\n    this.style.borderColor = '';\r\n  });\r\n\r\n  endropArea.addEventListener('dragenter', function(e) {\r\n    e.preventDefault();\r\n    e.stopPropagation();\r\n  });\r\n\r\n  \/\/ ====================================\r\n  \/\/ \u30c4\u30ea\u30fc\u751f\u6210\u95a2\u9023\r\n  \/\/ ====================================\r\n\r\n  \/\/ \u30d5\u30a1\u30a4\u30eb\u69cb\u9020\u306b\u8ffd\u52a0\r\n  function addToStructure(pathParts, currentLevel, type) {\r\n    const [current, ...remaining] = pathParts;\r\n\r\n    if (!currentLevel.has(current)) {\r\n      currentLevel.set(current, {\r\n        type: remaining.length === 0 ? type : 'directory',\r\n        children: new Map()\r\n      });\r\n    }\r\n\r\n    if (remaining.length > 0) {\r\n      addToStructure(remaining, currentLevel.get(current).children, type);\r\n    }\r\n  }\r\n\r\n  \/\/ \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u6570\u3092\u30ab\u30a6\u30f3\u30c8\r\n  function countDirectories(structure) {\r\n    let count = 0;\r\n    for (const [, data] of structure) {\r\n      if (data.type === 'directory') {\r\n        count++;\r\n        count += countDirectories(data.children);\r\n      }\r\n    }\r\n    return count;\r\n  }\r\n\r\n  \/\/ \u30c4\u30ea\u30fc\u751f\u6210\r\n  function generateTree() {\r\n    if (fileStructure.size === 0) return '';\r\n\r\n    let output = rootName + '\/\\n';\r\n    const entries = Array.from(fileStructure.entries());\r\n    const sorted = sortEntries(entries);\r\n    output += buildTreeRecursive(sorted, '');\r\n\r\n    return output;\r\n  }\r\n\r\n  \/\/ \u30a8\u30f3\u30c8\u30ea\u3092\u30bd\u30fc\u30c8\uff08\u30d5\u30a9\u30eb\u30c0\u512a\u5148\u3001\u30a2\u30eb\u30d5\u30a1\u30d9\u30c3\u30c8\u9806\uff09\r\n  function sortEntries(entries) {\r\n    return entries.sort((a, b) => {\r\n      const [nameA, dataA] = a;\r\n      const [nameB, dataB] = b;\r\n\r\n      if (dataA.type === 'directory' && dataB.type === 'file') return -1;\r\n      if (dataA.type === 'file' && dataB.type === 'directory') return 1;\r\n\r\n      return nameA.localeCompare(nameB, 'ja');\r\n    });\r\n  }\r\n\r\n  \/\/ \u518d\u5e30\u7684\u306b\u30c4\u30ea\u30fc\u3092\u69cb\u7bc9\r\n  function buildTreeRecursive(entries, prefix) {\r\n    let result = '';\r\n\r\n    entries.forEach(([name, data], index) => {\r\n      const isLast = index === entries.length - 1;\r\n      const connector = isLast ? '\u2514\u2500 ' : '\u251c\u2500 ';\r\n      const nextPrefix = prefix + (isLast ? '      ' : '\u2502    ');\r\n\r\n      let line = prefix + connector;\r\n      line += data.type === 'directory' ? name + '\/' : name;\r\n      line += '\\n';\r\n\r\n      result += line;\r\n\r\n      if (data.type === 'directory' && data.children.size > 0) {\r\n        const childEntries = Array.from(data.children.entries());\r\n        const sortedChildren = sortEntries(childEntries);\r\n        result += buildTreeRecursive(sortedChildren, nextPrefix);\r\n      }\r\n    });\r\n\r\n    return result;\r\n  }\r\n\r\n  \/\/ \u51fa\u529b\u8868\u793a\r\n  function displayOutput(output) {\r\n    decodeArea.value = output || '';\r\n  }\r\n\r\n  \/\/ \u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9\u306b\u30b3\u30d4\u30fc\r\n  function copyToClipboard() {\r\n    const text = decodeArea.value;\r\n    if (!text) return;\r\n\r\n    if (navigator.clipboard && navigator.clipboard.writeText) {\r\n      navigator.clipboard.writeText(text).then(function() {\r\n        showMessage('\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u304c\u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9\u306b\u30b3\u30d4\u30fc\u3055\u308c\u307e\u3057\u305f\uff01', true);\r\n      }).catch(function() {\r\n        fallbackCopyToClipboard(text);\r\n      });\r\n    } else {\r\n      fallbackCopyToClipboard(text);\r\n    }\r\n  }\r\n\r\n  \/\/ \u30d5\u30a9\u30fc\u30eb\u30d0\u30c3\u30af\u30b3\u30d4\u30fc\r\n  function fallbackCopyToClipboard(text) {\r\n    const textarea = document.createElement('textarea');\r\n    textarea.value = text;\r\n    textarea.style.position = 'fixed';\r\n    textarea.style.left = '-999999px';\r\n    document.body.appendChild(textarea);\r\n    textarea.select();\r\n\r\n    try {\r\n      document.execCommand('copy');\r\n      showMessage('\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30c4\u30ea\u30fc\u304c\u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9\u306b\u30b3\u30d4\u30fc\u3055\u308c\u307e\u3057\u305f\uff01', true);\r\n    } catch (err) {\r\n      showMessage('\u30af\u30ea\u30c3\u30d7\u30dc\u30fc\u30c9\u3078\u306e\u30b3\u30d4\u30fc\u306b\u5931\u6557\u3057\u307e\u3057\u305f: ' + err, false);\r\n    }\r\n\r\n    document.body.removeChild(textarea);\r\n  }\r\n\r\n  \/\/ \u30e1\u30c3\u30bb\u30fc\u30b8\u8868\u793a\r\n  function showMessage(msg, isSuccess) {\r\n    if (!encodedMessage) return;\r\n\r\n    const cls = isSuccess ? 'is-primary' : 'is-error';\r\n    const icon = isSuccess ? 'ma-check_circle' : 'ma-error';\r\n    const color = isSuccess ? 'primary' : 'error';\r\n\r\n    encodedMessage.innerHTML = `\r\n      <p class=\"alert is-ghosted ${cls} mt-0.5r\">\r\n        <i class=\"icon mas ${icon} c-${color} mr-0.5r\"><\/i>\r\n        <span>${msg}<\/span>\r\n      <\/p>\r\n    `;\r\n\r\n    setTimeout(function() {\r\n      encodedMessage.innerHTML = '';\r\n    }, 3000);\r\n  }\r\n\r\n  \/\/ decodeArea\u3092\u30af\u30ea\u30c3\u30af\u3057\u305f\u3089\u5168\u9078\u629e\r\n  decodeArea.addEventListener('click', function() {\r\n    if (this.value) {\r\n      this.select();\r\n    }\r\n  });\r\n});\r\n<\/script>","protected":false},"excerpt":{"rendered":"\u30ed\u30fc\u30ab\u30eb\u30d5\u30a9\u30eb\u30c0\u3092\u3059\u308b\u3060\u3051\u3067\u9078\u629e\u3059\u308b\u3060\u3051\u3067\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u69cb\u9020\u3092\u8996\u899a\u7684\u306a\u30c4\u30ea\u30fc\u5f62\u5f0f\u3067\u81ea\u52d5\u751f\u6210\u3002README\u3084\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u4f5c\u6210\u306b\u6700\u9069\u3002\u96a0\u3057\u30d5\u30a1\u30a4\u30eb\u8868\u793a\u3001\u9664\u5916\u8a2d\u5b9a\u6a5f\u80fd\u4ed8\u304d\u3002","protected":false},"author":1,"featured_media":9604,"parent":173,"menu_order":26,"comment_status":"closed","ping_status":"closed","template":"templates\/page-converter.php","meta":{"_acf_changed":false,"sns_share_botton_hide":"","vkExUnit_sns_title":"","_vk_print_noindex":"","_exclude_from_list_pages":"","footnotes":"","vk-ltc-link":"","vk-ltc-target":"0"},"categories":[24,21],"tags":[],"group":[],"pg":[],"class_list":["post-9062","page","type-page","status-publish","has-post-thumbnail","category-textedit","category-tool"],"acf":[],"veu_head_title_object":{"title":"","add_site_title":""},"_links":{"self":[{"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/pages\/9062","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/comments?post=9062"}],"version-history":[{"count":4,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/pages\/9062\/revisions"}],"predecessor-version":[{"id":13365,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/pages\/9062\/revisions\/13365"}],"up":[{"embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/pages\/173"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/media\/9604"}],"wp:attachment":[{"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/media?parent=9062"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/categories?post=9062"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/tags?post=9062"},{"taxonomy":"group","embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/group?post=9062"},{"taxonomy":"pg","embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/pg?post=9062"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}