{"id":849,"date":"2026-07-14T10:14:41","date_gmt":"2026-07-14T02:14:41","guid":{"rendered":"https:\/\/cpcc2026.hnqyhy.com\/?page_id=849"},"modified":"2026-07-15T15:12:44","modified_gmt":"2026-07-15T07:12:44","slug":"%e4%bc%9a%e8%ae%ae%e5%9c%b0%e7%82%b9","status":"publish","type":"page","link":"https:\/\/cpcc2026.hnqyhy.com\/index.php\/%e4%bc%9a%e8%ae%ae%e5%9c%b0%e7%82%b9\/","title":{"rendered":"\u4f1a\u8bae\u5730\u70b9"},"content":{"rendered":"<style>.kb-row-layout-id849_e842d7-f6 > .kt-row-column-wrap{align-content:start;}:where(.kb-row-layout-id849_e842d7-f6 > .kt-row-column-wrap) > .wp-block-kadence-column{justify-content:start;}.kb-row-layout-id849_e842d7-f6 > .kt-row-column-wrap{column-gap:var(--global-kb-gap-md, 2rem);row-gap:var(--global-kb-gap-md, 2rem);padding-top:var(--global-kb-spacing-sm, 1.5rem);padding-bottom:var(--global-kb-spacing-sm, 1.5rem);grid-template-columns:minmax(0, calc(20% - ((var(--global-kb-gap-md, 2rem) * 1 )\/2)))minmax(0, calc(80% - ((var(--global-kb-gap-md, 2rem) * 1 )\/2)));}.kb-row-layout-id849_e842d7-f6 > .kt-row-layout-overlay{opacity:0.30;}@media all and (max-width: 1024px){.kb-row-layout-id849_e842d7-f6 > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr) minmax(0, 2fr);}}@media all and (max-width: 767px){.kb-row-layout-id849_e842d7-f6 > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr);}}<\/style><div class=\"kb-row-layout-wrap kb-row-layout-id849_e842d7-f6 alignnone wp-block-kadence-rowlayout\"><div class=\"kt-row-column-wrap kt-has-2-columns kt-row-layout-right-golden kt-tab-layout-inherit kt-mobile-layout-row kt-row-valign-top\">\n<style>.kadence-column849_fab65e-68 > .kt-inside-inner-col,.kadence-column849_fab65e-68 > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column849_fab65e-68 > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column849_fab65e-68 > .kt-inside-inner-col{flex-direction:column;}.kadence-column849_fab65e-68 > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column849_fab65e-68 > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column849_fab65e-68{position:relative;}@media all and (max-width: 1024px){.kadence-column849_fab65e-68 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column849_fab65e-68 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column849_fab65e-68\"><div class=\"kt-inside-inner-col\">\n<section data-role=\"outer\" class=\"article135\" label=\"edit by 135editor\"><section class=\"_135editor\" data-role=\"title\" data-tools=\"135\u7f16\u8f91\u5668\" data-id=\"134390\"><section style=\"margin: 10px auto;\"><section style=\"display: flex; justify-content: flex-start;\"><section style=\"display: flex;justify-content: center;align-items: center;transform-style: preserve-3d ;\"><section style=\";transform: translateZ(10px);-webkit-transform: translateZ(10px);-moz-transform: translateZ(10px);-o-transform: translateZ(10px);\"><section style=\"background-color: #ffffff;font-size: 20px;color: #115c99;text-align: right;letter-spacing: 1.5px;padding: 5px 0;border-bottom: 1px solid #45c4e0;box-sizing: border-box;\" class=\"\"><p><strong class=\"135brush\" data-brushtype=\"text\">\u4f1a\u8bae\u5730\u70b9<\/strong><\/p><\/section><section style=\"display: flex;justify-content: flex-start;margin-top: -2px;\"><section style=\"width: 45px; height: 3px; background-color: #45c4e0; overflow: hidden;box-sizing:border-box;\"><\/section><\/section><\/section><section style=\"background: linear-gradient(to right top,#f7faff,#cce8ff);width: 100px;height: 100px;border-radius: 100%;flex-shrink: 0;display: flex;justify-content: center;align-items: center;margin: auto;margin-left: -50px;box-sizing:border-box;transform: translateZ(5px);-webkit-transform: translateZ(5px);-moz-transform: translateZ(5px);-o-transform: translateZ(5px);\"><section style=\"background-color: #ffffff; width: 60px; height: 60px; flex-shrink: 0; border-radius: 100%; overflow: hidden;box-sizing:border-box;\"><\/section><\/section><\/section><\/section><\/section><\/section><\/section>\n<\/div><\/div>\n\n\n<style>.kadence-column849_cc275e-6e > .kt-inside-inner-col,.kadence-column849_cc275e-6e > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column849_cc275e-6e > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column849_cc275e-6e > .kt-inside-inner-col{flex-direction:column;}.kadence-column849_cc275e-6e > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column849_cc275e-6e > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column849_cc275e-6e{position:relative;}@media all and (max-width: 1024px){.kadence-column849_cc275e-6e > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column849_cc275e-6e > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column849_cc275e-6e\"><div class=\"kt-inside-inner-col\"><style>.wp-block-kadence-spacer.kt-block-spacer-849_963470-4f .kt-block-spacer{height:33px;}.wp-block-kadence-spacer.kt-block-spacer-849_963470-4f .kt-divider{border-top-width:1px;height:1px;border-top-color:#eee;width:80%;border-top-style:solid;}<\/style>\n<div class=\"wp-block-kadence-spacer aligncenter kt-block-spacer-849_963470-4f\"><div class=\"kt-block-spacer kt-block-spacer-halign-center\"><\/div><\/div>\n\n\n\n<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n    <meta charset=\"UTF-8\" \/>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" \/>\n    <title>\u5929\u5730\u56fe \u00b7 \u5927\u8fde\u5bcc\u4e3d\u534e\u9152\u5e97\u5b9a\u4f4d<\/title>\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n        }\n        body {\n            font-family: \"Microsoft YaHei\", \"PingFang SC\", sans-serif;\n            background: #f0f2f5;\n            display: flex;\n            justify-content: center;\n            align-items: center;\n            min-height: 100vh;\n            padding: 16px;\n        }\n        .map-wrapper {\n            width: 100%;\n            max-width: 1200px;\n            height: 650px;\n            border-radius: 20px;\n            overflow: hidden;\n            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);\n            border: 2px solid rgba(255, 255, 255, 0.8);\n            position: relative;\n            background: #e8ecf1;\n        }\n        #mapContainer {\n            width: 100%;\n            height: 100%;\n            position: relative;\n        }\n\n        \/* ===== \u81ea\u5b9a\u4e49\u6807\u8bb0 - \u4f7f\u7528CSS\u7edd\u5bf9\u5b9a\u4f4d ===== *\/\n        .custom-marker {\n            position: absolute;\n            z-index: 999;\n            pointer-events: auto;\n            cursor: pointer;\n            display: flex;\n            align-items: center;\n            gap: 8px;\n            transform: translate(-50%, -100%);\n            user-select: none;\n        }\n        \/* \u7ea2\u8272\u56fe\u9489\u56fe\u6807 *\/\n        .marker-icon {\n            width: 40px;\n            height: 40px;\n            background: radial-gradient(circle at 30% 30%, #ff6b6b, #c0392b);\n            border-radius: 50% 50% 50% 0;\n            transform: rotate(-45deg);\n            box-shadow: 0 4px 18px rgba(192, 57, 43, 0.6);\n            border: 3px solid white;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            flex-shrink: 0;\n        }\n        .marker-icon .dot {\n            width: 16px;\n            height: 16px;\n            background: white;\n            border-radius: 50%;\n            transform: rotate(45deg);\n            box-shadow: inset 0 0 8px rgba(0, 0, 0, 0.05);\n        }\n        \/* \u6807\u8bb0\u5e95\u90e8\u9634\u5f71 *\/\n        .marker-shadow {\n            width: 14px;\n            height: 14px;\n            background: rgba(0, 0, 0, 0.15);\n            border-radius: 50%;\n            margin-top: -6px;\n            filter: blur(4px);\n            flex-shrink: 0;\n        }\n        \/* \u9152\u5e97\u540d\u79f0\u6807\u7b7e *\/\n        .marker-label {\n            background: rgba(0, 0, 0, 0.8);\n            color: #ffffff;\n            padding: 7px 18px 7px 16px;\n            border-radius: 10px;\n            font-size: 17px;\n            font-weight: 600;\n            white-space: nowrap;\n            backdrop-filter: blur(6px);\n            border: 2px solid rgba(255, 255, 255, 0.25);\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);\n            letter-spacing: 0.5px;\n            text-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);\n            margin-left: -2px;\n        }\n\n        @media (max-width: 768px) {\n            .map-wrapper {\n                height: 480px;\n            }\n            .marker-label {\n                font-size: 14px;\n                padding: 5px 14px;\n            }\n            .marker-icon {\n                width: 34px;\n                height: 34px;\n            }\n            .marker-icon .dot {\n                width: 13px;\n                height: 13px;\n            }\n        }\n        @media (max-width: 480px) {\n            .map-wrapper {\n                height: 400px;\n            }\n            .marker-label {\n                font-size: 12px;\n                padding: 4px 10px;\n            }\n            .marker-icon {\n                width: 28px;\n                height: 28px;\n            }\n            .marker-icon .dot {\n                width: 10px;\n                height: 10px;\n            }\n            .custom-marker {\n                gap: 4px;\n            }\n        }\n    <\/style>\n    <script src=\"https:\/\/api.tianditu.gov.cn\/api?v=4.0&#038;tk=6e0b5f28ff5f917765f14d20d6ec27fd\">\n    <\/script>\n<\/head>\n<body>\n    <div class=\"map-wrapper\">\n        <div id=\"mapContainer\">\n            <!-- \u81ea\u5b9a\u4e49\u6807\u8bb0 - \u521d\u59cb\u9690\u85cf\uff0c\u5730\u56fe\u52a0\u8f7d\u540e\u663e\u793a -->\n            <div class=\"custom-marker\" id=\"customMarker\" style=\"display:none;\">\n                <div style=\"display:flex;flex-direction:column;align-items:center;\">\n                    <div class=\"marker-icon\">\n                        <div class=\"dot\"><\/div>\n                    <\/div>\n                    <div class=\"marker-shadow\"><\/div>\n                <\/div>\n                <div class=\"marker-label\">\ud83c\udfe8 \u5927\u8fde\u5bcc\u4e3d\u534e\u9152\u5e97<\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <script>\n        (function() {\n            const HOTEL_LNG = 121.6604;\n            const HOTEL_LAT = 38.9213;\n            const ZOOM_LEVEL = 17;\n\n            var map = null;\n            var markerElement = document.getElementById('customMarker');\n\n            function checkTianDiTuReady() {\n                return (typeof T !== 'undefined' && typeof T.Map !== 'undefined');\n            }\n\n            \/\/ \u66f4\u65b0\u6807\u8bb0\u4f4d\u7f6e\uff08\u5c06\u7ecf\u7eac\u5ea6\u8f6c\u6362\u4e3a\u5c4f\u5e55\u5750\u6807\uff09\n            function updateMarkerPosition() {\n                if (!map || !markerElement) return;\n\n                try {\n                    var center = new T.LngLat(HOTEL_LNG, HOTEL_LAT);\n                    \/\/ \u5c06\u7ecf\u7eac\u5ea6\u8f6c\u6362\u4e3a\u50cf\u7d20\u5750\u6807\n                    var pixel = map.lngLatToContainerPoint(center);\n                    \n                    \/\/ \u66f4\u65b0\u6807\u8bb0\u4f4d\u7f6e\n                    markerElement.style.left = pixel.x + 'px';\n                    markerElement.style.top = pixel.y + 'px';\n                    markerElement.style.display = 'flex';\n                } catch (e) {\n                    console.warn('\u66f4\u65b0\u6807\u8bb0\u4f4d\u7f6e\u5931\u8d25:', e);\n                }\n            }\n\n            function initMap() {\n                try {\n                    map = new T.Map('mapContainer');\n                    var center = new T.LngLat(HOTEL_LNG, HOTEL_LAT);\n                    map.centerAndZoom(center, ZOOM_LEVEL);\n\n                    \/\/ \u6dfb\u52a0\u63a7\u4ef6\n                    map.addControl(new T.Control.Zoom());\n                    map.addControl(new T.Control.Scale());\n\n                    \/\/ \u663e\u793a\u81ea\u5b9a\u4e49\u6807\u8bb0\n                    setTimeout(function() {\n                        updateMarkerPosition();\n                    }, 300);\n\n                    \/\/ \u5730\u56fe\u4e8b\u4ef6\uff1a\u62d6\u52a8\u6216\u7f29\u653e\u65f6\u66f4\u65b0\u6807\u8bb0\u4f4d\u7f6e\n                    map.addEventListener('moveend', function() {\n                        updateMarkerPosition();\n                    });\n\n                    \/\/ ===== \u4fe1\u606f\u7a97\u53e3 =====\n                    var infoContent = `\n                        <div style=\"\n                            padding: 8px 12px;\n                            font-family: 'Microsoft YaHei', 'PingFang SC', sans-serif;\n                            max-width: 260px;\n                            line-height: 1.6;\n                        \">\n                            <h3 style=\"\n                                margin: 0 0 6px 0;\n                                color: #1a3c6e;\n                                font-size: 18px;\n                                border-bottom: 2px solid #2b7bcb;\n                                padding-bottom: 4px;\n                            \">\n                                \ud83c\udfe8 \u5927\u8fde\u5bcc\u4e3d\u534e\u9152\u5e97\n                            <\/h3>\n                            <p style=\"margin: 6px 0; font-size: 14px; color: #333;\">\n                                <strong>\u5730\u5740\uff1a<\/strong>\u8fbd\u5b81\u7701\u5927\u8fde\u5e02\u4e2d\u5c71\u533a\u4eba\u6c11\u8def60\u53f7<br \/>\n                                <strong>\u5750\u6807\uff1a<\/strong>121.6604, 38.9213\n                            <\/p>\n                            <p style=\"\n                                margin: 8px 0 0 0;\n                                font-size: 12px;\n                                color: #999;\n                                border-top: 1px solid #eee;\n                                padding-top: 6px;\n                            \">\n                                \u2b50 \u4e94\u661f\u7ea7\u9152\u5e97 \u00b7 \u6d77\u666f\u5ba2\u623f \u00b7 \u8fd1\u4e2d\u5c71\u5e7f\u573a\n                            <\/p>\n                        <\/div>\n                    `;\n\n                    var infoWindow = new T.InfoWindow({\n                        content: infoContent,\n                        offset: new T.Point(0, -50)\n                    });\n\n                    \/\/ \u70b9\u51fb\u81ea\u5b9a\u4e49\u6807\u8bb0\u6253\u5f00\u4fe1\u606f\u7a97\u53e3\n                    markerElement.addEventListener('click', function() {\n                        infoWindow.open(map, center);\n                    });\n\n                    \/\/ \u81ea\u52a8\u6253\u5f00\u4fe1\u606f\u7a97\u53e3\n                    setTimeout(function() {\n                        infoWindow.open(map, center);\n                        \/\/ \u518d\u6b21\u786e\u4fdd\u6807\u8bb0\u4f4d\u7f6e\u6b63\u786e\n                        updateMarkerPosition();\n                    }, 600);\n\n                    \/\/ \u7a97\u53e3\u81ea\u9002\u5e94\n                    window.addEventListener('resize', function() {\n                        if (map && typeof map.checkResize === 'function') {\n                            map.checkResize();\n                        }\n                        setTimeout(updateMarkerPosition, 200);\n                    });\n\n                    console.log('\u2705 \u5929\u5730\u56fe\u52a0\u8f7d\u6210\u529f\uff01\u5b9a\u4f4d\u81f3\u5927\u8fde\u5bcc\u4e3d\u534e\u9152\u5e97');\n                    console.log('\ud83d\udccd \u7ecf\u5ea6: %s, \u7eac\u5ea6: %s', HOTEL_LNG, HOTEL_LAT);\n\n                } catch (error) {\n                    console.error('\u274c \u5730\u56fe\u521d\u59cb\u5316\u5931\u8d25:', error);\n                }\n            }\n\n            function waitForAPI() {\n                var attempts = 0;\n                var maxAttempts = 30;\n\n                var checkInterval = setInterval(function() {\n                    attempts++;\n                    if (checkTianDiTuReady()) {\n                        clearInterval(checkInterval);\n                        console.log('\u2705 \u5929\u5730\u56fe API \u5df2\u52a0\u8f7d');\n                        initMap();\n                    } else if (attempts >= maxAttempts) {\n                        clearInterval(checkInterval);\n                        console.error('\u274c \u5929\u5730\u56fe API \u52a0\u8f7d\u8d85\u65f6\uff0c\u8bf7\u68c0\u67e5\u7f51\u7edc\u6216\u5bc6\u94a5');\n                    }\n                }, 500);\n            }\n\n            if (checkTianDiTuReady()) {\n                console.log('\u2705 \u5929\u5730\u56fe API \u5df2\u5c31\u7eea');\n                initMap();\n            } else {\n                console.log('\u23f3 \u7b49\u5f85\u5929\u5730\u56fe API \u52a0\u8f7d...');\n                waitForAPI();\n            }\n\n        })();\n    <\/script>\n<\/body>\n<\/html>\n<\/div><\/div>\n\n<\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>\u4f1a\u8bae\u5730\u70b9 \u5929\u5730\u56fe \u00b7 \u5927\u8fde\u5bcc\u4e3d\u534e\u9152\u5e97\u5b9a\u4f4d \ud83c\udfe8 \u5927\u8fde\u5bcc\u4e3d\u534e\u9152\u5e97<\/p>\n","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":""},"class_list":["post-849","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/cpcc2026.hnqyhy.com\/index.php\/wp-json\/wp\/v2\/pages\/849","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cpcc2026.hnqyhy.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/cpcc2026.hnqyhy.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/cpcc2026.hnqyhy.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cpcc2026.hnqyhy.com\/index.php\/wp-json\/wp\/v2\/comments?post=849"}],"version-history":[{"count":22,"href":"https:\/\/cpcc2026.hnqyhy.com\/index.php\/wp-json\/wp\/v2\/pages\/849\/revisions"}],"predecessor-version":[{"id":881,"href":"https:\/\/cpcc2026.hnqyhy.com\/index.php\/wp-json\/wp\/v2\/pages\/849\/revisions\/881"}],"wp:attachment":[{"href":"https:\/\/cpcc2026.hnqyhy.com\/index.php\/wp-json\/wp\/v2\/media?parent=849"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}