{"id":27990,"date":"2025-08-04T10:52:20","date_gmt":"2025-08-04T03:52:20","guid":{"rendered":"https:\/\/dps.media\/?page_id=27990"},"modified":"2025-08-04T11:07:40","modified_gmt":"2025-08-04T04:07:40","slug":"%e6%96%87%e5%ad%97%e8%bd%ac%e6%8d%a2%e5%b7%a5%e5%85%b7","status":"publish","type":"page","link":"https:\/\/dps.media\/zh\/%e6%96%87%e5%ad%97%e8%bd%ac%e6%8d%a2%e5%b7%a5%e5%85%b7\/","title":{"rendered":"\u6587\u672c\u8f6c\u6362\u5de5\u5177"},"content":{"rendered":"<?xml encoding=\"utf-8\" ?><div id=\"text-converter-tool\">\n<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;500;600&display=swap');\n\n#text-converter-tool {\n    width: 100%;\n    margin: 20px 0;\n    font-family: 'Inter', 'Segoe UI', 'Arial', sans-serif;\n    font-feature-settings: 'cv02', 'cv03', 'cv04', 'cv11';\n}\n\n#text-converter-tool .converter-card {\n    background: #ffffff;\n    border-radius: 12px;\n    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);\n    padding: 32px;\n    border: 1px solid #e5e7eb;\n}\n\n#text-converter-tool .header {\n    text-align: center;\n    margin-bottom: 32px;\n}\n\n#text-converter-tool .header h2 {\n    font-size: 1.875rem;\n    font-weight: 600;\n    color: #151577;\n    margin-bottom: 8px;\n    line-height: 1.2;\n    letter-spacing: -0.025em;\n}\n\n#text-converter-tool .header p {\n    color: #6b7280;\n    font-size: 1rem;\n    line-height: 1.5;\n    font-weight: 400;\n}\n\n#text-converter-tool .input-section {\n    margin-bottom: 24px;\n}\n\n#text-converter-tool .textarea-container {\n    position: relative;\n    margin-bottom: 16px;\n}\n\n#text-converter-tool textarea {\n    width: 100%;\n    min-height: 160px;\n    padding: 16px;\n    border: 2px solid #e5e7eb;\n    border-radius: 8px;\n    font-size: 14px;\n    font-family: 'SF Mono', 'Monaco', 'Cascadia Code', 'Roboto Mono', monospace;\n    resize: vertical;\n    transition: all 0.2s ease;\n    background: #fafafa;\n    line-height: 1.6;\n}\n\n#text-converter-tool textarea:focus {\n    outline: none;\n    border-color: #32b561;\n    background: #ffffff;\n    box-shadow: 0 0 0 3px rgba(50, 181, 97, 0.1);\n}\n\n#text-converter-tool .text-stats {\n    display: flex;\n    gap: 24px;\n    font-size: 13px;\n    color: #6b7280;\n    margin-bottom: 20px;\n    font-weight: 500;\n}\n\n#text-converter-tool .search-replace {\n    display: grid;\n    grid-template-columns: 1fr 1fr auto;\n    gap: 12px;\n    margin-bottom: 24px;\n    align-items: end;\n}\n\n#text-converter-tool .search-replace input {\n    padding: 10px 12px;\n    border: 2px solid #e5e7eb;\n    border-radius: 6px;\n    font-size: 14px;\n    font-weight: 400;\n    transition: border-color 0.2s ease;\n}\n\n#text-converter-tool .search-replace input:focus {\n    outline: none;\n    border-color: #32b561;\n    box-shadow: 0 0 0 3px rgba(50, 181, 97, 0.1);\n}\n\n#text-converter-tool .buttons-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));\n    gap: 12px;\n    margin-bottom: 24px;\n}\n\n#text-converter-tool .case-btn {\n    padding: 12px 16px;\n    border: 2px solid #e5e7eb;\n    border-radius: 8px;\n    font-size: 13px;\n    font-weight: 500;\n    cursor: pointer;\n    transition: all 0.2s ease;\n    background: #ffffff;\n    color: #374151;\n    line-height: 1.4;\n}\n\n#text-converter-tool .case-btn:hover {\n    background: #32b561;\n    color: white;\n    border-color: #32b561;\n    transform: translateY(-1px);\n    box-shadow: 0 4px 12px rgba(50, 181, 97, 0.25);\n}\n\n#text-converter-tool .action-buttons {\n    display: flex;\n    gap: 12px;\n    justify-content: center;\n    flex-wrap: wrap;\n}\n\n#text-converter-tool .action-btn {\n    padding: 12px 20px;\n    border: none;\n    border-radius: 8px;\n    font-size: 14px;\n    font-weight: 500;\n    cursor: pointer;\n    transition: all 0.2s ease;\n    line-height: 1.4;\n}\n\n#text-converter-tool .primary-btn {\n    background: #32b561;\n    color: white;\n    box-shadow: 0 2px 8px rgba(50, 181, 97, 0.2);\n}\n\n#text-converter-tool .primary-btn:hover {\n    background: #2a9954;\n    transform: translateY(-1px);\n    box-shadow: 0 4px 12px rgba(50, 181, 97, 0.3);\n}\n\n#text-converter-tool .secondary-btn {\n    background: #151577;\n    color: white;\n    box-shadow: 0 2px 8px rgba(21, 21, 119, 0.2);\n}\n\n#text-converter-tool .secondary-btn:hover {\n    background: #0f1156;\n    transform: translateY(-1px);\n    box-shadow: 0 4px 12px rgba(21, 21, 119, 0.3);\n}\n\n#text-converter-tool .danger-btn {\n    background: #dc2626;\n    color: white;\n    box-shadow: 0 2px 8px rgba(220, 38, 38, 0.2);\n}\n\n#text-converter-tool .danger-btn:hover {\n    background: #b91c1c;\n    transform: translateY(-1px);\n    box-shadow: 0 4px 12px rgba(220, 38, 38, 0.3);\n}\n\n#text-converter-tool .notification {\n    position: fixed;\n    top: 20px;\n    right: 20px;\n    padding: 12px 20px;\n    background: #32b561;\n    color: white;\n    border-radius: 8px;\n    box-shadow: 0 8px 25px rgba(50, 181, 97, 0.3);\n    transform: translateX(400px);\n    transition: transform 0.3s ease;\n    z-index: 9999;\n    font-size: 14px;\n    font-weight: 500;\n    line-height: 1.4;\n}\n\n#text-converter-tool .notification.show {\n    transform: translateX(0);\n}\n\n#text-converter-tool .notification.error {\n    background: #dc2626;\n    box-shadow: 0 8px 25px rgba(220, 38, 38, 0.3);\n}\n\n@media (max-width: 768px) {\n    #text-converter-tool .converter-card {\n        padding: 24px 20px;\n        margin: 10px;\n    }\n    \n    #text-converter-tool .buttons-grid {\n        grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n        gap: 10px;\n    }\n    \n    #text-converter-tool .search-replace {\n        grid-template-columns: 1fr;\n        gap: 10px;\n    }\n    \n    #text-converter-tool .action-buttons {\n        flex-direction: column;\n    }\n    \n    #text-converter-tool .header h2 {\n        font-size: 1.5rem;\n    }\n}\n<\/style>\n\n<div class=\"converter-card\">\n    <div class=\"header\">\n        <h2>\u6587\u672c\u8f6c\u6362\u5de5\u5177<\/h2>\n        <p style=\"text-align: center;\">\n  \u4e13\u4e1a\u8f6c\u6362\u548c\u5904\u7406\u8d8a\u5357\u8bed\u6587\u672c\n<\/p>\n    <\/div>\n\n    <div class=\"input-section\">\n        <div class=\"textarea-container\">\n            <textarea id=\"textInput\" placeholder=\"\u5728\u6b64\u8f93\u5165\u60a8\u7684\u6587\u672c...\"><\/textarea>\n        <\/div>\n        <div class=\"text-stats\">\n            <span id=\"charCount\">0 \u5b57\u7b26<\/span>\n            <span id=\"wordCount\">0 \u8bcd<\/span>\n            <span id=\"lineCount\">0 \u884c<\/span>\n        <\/div>\n    <\/div>\n\n    <div class=\"search-replace\">\n        <input type=\"text\" id=\"searchText\" placeholder=\"\u641c\u7d22...\">\n        <input type=\"text\" id=\"replaceText\" placeholder=\"\u66ff\u6362\u4e3a...\">\n        <button class=\"case-btn\" onclick=\"searchAndReplace()\">\u67e5\u627e &amp; \u66ff\u6362<\/button>\n    <\/div>\n\n    <div class=\"buttons-grid\">\n        <button class=\"case-btn\" onclick=\"convertCase('sentence')\">\u53e5\u9996\u5927\u5199<\/button>\n        <button class=\"case-btn\" onclick=\"convertCase('lower')\">\u5c0f\u5199\u5b57\u6bcd<\/button>\n        <button class=\"case-btn\" onclick=\"convertCase('upper')\">\u5927\u5199\u5b57\u6bcd<\/button>\n        <button class=\"case-btn\" onclick=\"convertCase('title')\">\u6807\u9898<\/button>\n        <button class=\"case-btn\" onclick=\"removeAccents()\">\u53bb\u9664\u8d8a\u5357\u8bed\u7b26\u53f7<\/button>\n        <button class=\"case-btn\" onclick=\"removeSpaces()\">\u53bb\u9664\u7a7a\u683c<\/button>\n        <button class=\"case-btn\" onclick=\"spaceToUnderscore()\">\u7528 _ \u66ff\u6362\u7a7a\u683c<\/button>\n        <button class=\"case-btn\" onclick=\"newlineToComma()\">\u6362\u884c\u7b26 \u2192 \u9017\u53f7<\/button>\n        <button class=\"case-btn\" onclick=\"commaToNewline()\">\u9017\u53f7 \u2192 \u6362\u884c\u7b26<\/button>\n        <button class=\"case-btn\" onclick=\"removeEmptyLines()\">\u5220\u9664\u7a7a\u884c<\/button>\n        <button class=\"case-btn\" onclick=\"textToBinary()\">\u8f6c\u6362\u4e3a\u4e8c\u8fdb\u5236<\/button>\n        <button class=\"case-btn\" onclick=\"textToHex()\">\u8f6c\u6362\u4e3a\u5341\u516d\u8fdb\u5236<\/button>\n        <button class=\"case-btn\" onclick=\"binaryToText()\">\u4e8c\u8fdb\u5236 \u2192 \u6587\u672c<\/button>\n        <button class=\"case-btn\" onclick=\"hexToText()\">\u5341\u516d\u8fdb\u5236 \u2192 \u6587\u672c<\/button>\n    <\/div>\n\n    <div class=\"action-buttons\">\n        <button class=\"action-btn secondary-btn\" onclick=\"undoAction()\">\u21b6 \u64a4\u9500<\/button>\n        <button class=\"action-btn primary-btn\" onclick=\"copyToClipboard()\">\ud83d\udccb \u590d\u5236<\/button>\n        <button class=\"action-btn secondary-btn\" onclick=\"downloadText()\">\ud83d\udce5 \u4e0b\u8f7d<\/button>\n        <button class=\"action-btn danger-btn\" onclick=\"clearText()\">\ud83d\uddd1\ufe0f \u6e05\u7a7a<\/button>\n    <\/div>\n<\/div>\n\n<div class=\"notification\" id=\"notification\"><\/div>\n\n<script>\n(function() {\n    const textInput = document.getElementById('textInput');\n    const charCount = document.getElementById('charCount');\n    const wordCount = document.getElementById('wordCount');\n    const lineCount = document.getElementById('lineCount');\n    \n    \/\/ L\u01b0u tr\u1eef l\u1ecbch s\u1eed \u0111\u1ec3 undo\n    let history = [];\n    let currentStep = -1;\n\n    \/\/ C\u1eadp nh\u1eadt th\u1ed1ng k\u00ea v\u0103n b\u1ea3n\n    function updateStats() {\n        const text = textInput.value;\n        const chars = text.length;\n        const words = text.trim() ? text.trim().split(\/\\s+\/).length : 0;\n        const lines = text.split('\\n').length;\n        \n        charCount.textContent = `${chars} k\u00fd t\u1ef1`;\n        wordCount.textContent = `${words} t\u1eeb`;\n        lineCount.textContent = `${lines} d\u00f2ng`;\n    }\n\n    textInput.addEventListener('input', updateStats);\n\n    \/\/ L\u01b0u tr\u1ea1ng th\u00e1i \u0111\u1ec3 undo\n    function saveState() {\n        const currentText = textInput.value;\n        \/\/ X\u00f3a c\u00e1c b\u01b0\u1edbc sau current step n\u1ebfu c\u00f3\n        history = history.slice(0, currentStep + 1);\n        history.push(currentText);\n        currentStep++;\n        \/\/ Gi\u1edbi h\u1ea1n l\u1ecbch s\u1eed t\u1ed1i \u0111a 20 b\u01b0\u1edbc\n        if (history.length > 20) {\n            history.shift();\n            currentStep--;\n        }\n    }\n\n    \/\/ Kh\u1edfi t\u1ea1o v\u1edbi tr\u1ea1ng th\u00e1i r\u1ed7ng\n    saveState();\n\n    \/\/ B\u1ea3ng chuy\u1ec3n \u0111\u1ed5i d\u1ea5u ti\u1ebfng Vi\u1ec7t\n    const vietnameseMap = {\n        '\u00e0': 'a', '\u00e1': 'a', '\u1ea1': 'a', '\u1ea3': 'a', '\u00e3': 'a', '\u00e2': 'a', '\u1ea7': 'a', '\u1ea5': 'a', '\u1ead': 'a', '\u1ea9': 'a', '\u1eab': 'a', '\u0103': 'a', '\u1eb1': 'a', '\u1eaf': 'a', '\u1eb7': 'a', '\u1eb3': 'a', '\u1eb5': 'a',\n        '\u00e8': 'e', '\u00e9': 'e', '\u1eb9': 'e', '\u1ebb': 'e', '\u1ebd': 'e', '\u00ea': 'e', '\u1ec1': 'e', '\u1ebf': 'e', '\u1ec7': 'e', '\u1ec3': 'e', '\u1ec5': 'e',\n        '\u00ec': 'i', '\u00ed': 'i', '\u1ecb': 'i', '\u1ec9': 'i', '\u0129': 'i',\n        '\u00f2': 'o', '\u00f3': 'o', '\u1ecd': 'o', '\u1ecf': 'o', '\u00f5': 'o', '\u00f4': 'o', '\u1ed3': 'o', '\u1ed1': 'o', '\u1ed9': 'o', '\u1ed5': 'o', '\u1ed7': 'o', '\u01a1': 'o', '\u1edd': 'o', '\u1edb': 'o', '\u1ee3': 'o', '\u1edf': 'o', '\u1ee1': 'o',\n        '\u00f9': 'u', '\u00fa': 'u', '\u1ee5': 'u', '\u1ee7': 'u', '\u0169': 'u', '\u01b0': 'u', '\u1eeb': 'u', '\u1ee9': 'u', '\u1ef1': 'u', '\u1eed': 'u', '\u1eef': 'u',\n        '\u1ef3': 'y', '\u00fd': 'y', '\u1ef5': 'y', '\u1ef7': 'y', '\u1ef9': 'y',\n        '\u0111': 'd',\n        '\u00c0': 'A', '\u00c1': 'A', '\u1ea0': 'A', '\u1ea2': 'A', '\u00c3': 'A', '\u00c2': 'A', '\u1ea6': 'A', '\u1ea4': 'A', '\u1eac': 'A', '\u1ea8': 'A', '\u1eaa': 'A', '\u0102': 'A', '\u1eb0': 'A', '\u1eae': 'A', '\u1eb6': 'A', '\u1eb2': 'A', '\u1eb4': 'A',\n        '\u00c8': 'E', '\u00c9': 'E', '\u1eb8': 'E', '\u1eba': 'E', '\u1ebc': 'E', '\u00ca': 'E', '\u1ec0': 'E', '\u1ebe': 'E', '\u1ec6': 'E', '\u1ec2': 'E', '\u1ec4': 'E',\n        '\u00cc': 'I', '\u00cd': 'I', '\u1eca': 'I', '\u1ec8': 'I', '\u0128': 'I',\n        '\u00d2': 'O', '\u00d3': 'O', '\u1ecc': 'O', '\u1ece': 'O', '\u00d5': 'O', '\u00d4': 'O', '\u1ed2': 'O', '\u1ed0': 'O', '\u1ed8': 'O', '\u1ed4': 'O', '\u1ed6': 'O', '\u01a0': 'O', '\u1edc': 'O', '\u1eda': 'O', '\u1ee2': 'O', '\u1ede': 'O', '\u1ee0': 'O',\n        '\u00d9': 'U', '\u00da': 'U', '\u1ee4': 'U', '\u1ee6': 'U', '\u0168': 'U', '\u01af': 'U', '\u1eea': 'U', '\u1ee8': 'U', '\u1ef0': 'U', '\u1eec': 'U', '\u1eee': 'U',\n        '\u1ef2': 'Y', '\u00dd': 'Y', '\u1ef4': 'Y', '\u1ef6': 'Y', '\u1ef8': 'Y',\n        '\u0110': 'D'\n    };\n\n    \/\/ Khai b\u00e1o t\u1ea5t c\u1ea3 functions cho window object\n    window.convertCase = function(caseType) {\n        const text = textInput.value;\n        if (!text.trim()) {\n            showNotification('Vui l\u00f2ng nh\u1eadp v\u0103n b\u1ea3n tr\u01b0\u1edbc!', 'error');\n            return;\n        }\n\n        saveState();\n        let convertedText = '';\n\n        switch(caseType) {\n            case 'sentence':\n                \/\/ Vi\u1ebft hoa \u0111\u1ea7u m\u1ed7i d\u00f2ng v\u00e0 sau d\u1ea5u c\u00e2u\n                convertedText = text.toLowerCase();\n                \/\/ Vi\u1ebft hoa \u0111\u1ea7u d\u00f2ng\n                convertedText = convertedText.replace(\/(^|\\n)([a-zA-Z\u00e0\u00e1\u1ea1\u1ea3\u00e3\u00e2\u1ea7\u1ea5\u1ead\u1ea9\u1eab\u0103\u1eb1\u1eaf\u1eb7\u1eb3\u1eb5\u00e8\u00e9\u1eb9\u1ebb\u1ebd\u00ea\u1ec1\u1ebf\u1ec7\u1ec3\u1ec5\u00ec\u00ed\u1ecb\u1ec9\u0129\u00f2\u00f3\u1ecd\u1ecf\u00f5\u00f4\u1ed3\u1ed1\u1ed9\u1ed5\u1ed7\u01a1\u1edd\u1edb\u1ee3\u1edf\u1ee1\u00f9\u00fa\u1ee5\u1ee7\u0169\u01b0\u1eeb\u1ee9\u1ef1\u1eed\u1eef\u1ef3\u00fd\u1ef5\u1ef7\u1ef9\u0111])\/g, function(match, prefix, letter) {\n                    return prefix + letter.toUpperCase();\n                });\n                \/\/ Vi\u1ebft hoa sau d\u1ea5u c\u00e2u\n                convertedText = convertedText.replace(\/([.!?]\\s*)([a-zA-Z\u00e0\u00e1\u1ea1\u1ea3\u00e3\u00e2\u1ea7\u1ea5\u1ead\u1ea9\u1eab\u0103\u1eb1\u1eaf\u1eb7\u1eb3\u1eb5\u00e8\u00e9\u1eb9\u1ebb\u1ebd\u00ea\u1ec1\u1ebf\u1ec7\u1ec3\u1ec5\u00ec\u00ed\u1ecb\u1ec9\u0129\u00f2\u00f3\u1ecd\u1ecf\u00f5\u00f4\u1ed3\u1ed1\u1ed9\u1ed5\u1ed7\u01a1\u1edd\u1edb\u1ee3\u1edf\u1ee1\u00f9\u00fa\u1ee5\u1ee7\u0169\u01b0\u1eeb\u1ee9\u1ef1\u1eed\u1eef\u1ef3\u00fd\u1ef5\u1ef7\u1ef9\u0111])\/g, function(match, punctuation, letter) {\n                    return punctuation + letter.toUpperCase();\n                });\n                break;\n            case 'lower':\n                convertedText = text.toLowerCase();\n                break;\n            case 'upper':\n                convertedText = text.toUpperCase();\n                break;\n            case 'title':\n                \/\/ Regex bao g\u1ed3m t\u1ea5t c\u1ea3 k\u00fd t\u1ef1 ti\u1ebfng Vi\u1ec7t\n                convertedText = text.replace(\/[a-zA-Z\u00e0\u00e1\u1ea1\u1ea3\u00e3\u00e2\u1ea7\u1ea5\u1ead\u1ea9\u1eab\u0103\u1eb1\u1eaf\u1eb7\u1eb3\u1eb5\u00e8\u00e9\u1eb9\u1ebb\u1ebd\u00ea\u1ec1\u1ebf\u1ec7\u1ec3\u1ec5\u00ec\u00ed\u1ecb\u1ec9\u0129\u00f2\u00f3\u1ecd\u1ecf\u00f5\u00f4\u1ed3\u1ed1\u1ed9\u1ed5\u1ed7\u01a1\u1edd\u1edb\u1ee3\u1edf\u1ee1\u00f9\u00fa\u1ee5\u1ee7\u0169\u01b0\u1eeb\u1ee9\u1ef1\u1eed\u1eef\u1ef3\u00fd\u1ef5\u1ef7\u1ef9\u0111\u0110][^\\s]*\/g, (word) => {\n                    return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase();\n                });\n                break;\n        }\n\n        textInput.value = convertedText;\n        updateStats();\n        showNotification('\u0110\u00e3 chuy\u1ec3n \u0111\u1ed5i th\u00e0nh c\u00f4ng!');\n    };\n\n    window.removeAccents = function() {\n        const text = textInput.value;\n        if (!text.trim()) {\n            showNotification('Vui l\u00f2ng nh\u1eadp v\u0103n b\u1ea3n tr\u01b0\u1edbc!', 'error');\n            return;\n        }\n        \n        saveState();\n        let result = text;\n        for (let char in vietnameseMap) {\n            result = result.replace(new RegExp(char, 'g'), vietnameseMap[char]);\n        }\n        \n        textInput.value = result;\n        updateStats();\n        showNotification('\u0110\u00e3 b\u1ecf d\u1ea5u ti\u1ebfng Vi\u1ec7t!');\n    };\n\n    window.removeSpaces = function() {\n        saveState();\n        const text = textInput.value;\n        textInput.value = text.replace(\/\\s+\/g, '');\n        updateStats();\n        showNotification('\u0110\u00e3 b\u1ecf t\u1ea5t c\u1ea3 kho\u1ea3ng c\u00e1ch!');\n    };\n\n    window.spaceToUnderscore = function() {\n        saveState();\n        const text = textInput.value;\n        textInput.value = text.replace(\/\\s+\/g, '_');\n        updateStats();\n        showNotification('\u0110\u00e3 thay th\u1ebf kho\u1ea3ng c\u00e1ch b\u1eb1ng d\u1ea5u g\u1ea1ch d\u01b0\u1edbi!');\n    };\n\n    window.searchAndReplace = function() {\n        const searchText = document.getElementById('searchText').value;\n        const replaceText = document.getElementById('replaceText').value;\n        const text = textInput.value;\n        \n        if (!searchText) {\n            showNotification('Vui l\u00f2ng nh\u1eadp t\u1eeb c\u1ea7n t\u00ecm!', 'error');\n            return;\n        }\n        \n        saveState();\n        const regex = new RegExp(searchText.replace(\/[.*+?^${}()|[\\]\\\\]\/g, '\\\\$&'), 'g');\n        const newText = text.replace(regex, replaceText);\n        const count = (text.match(regex) || []).length;\n        \n        textInput.value = newText;\n        updateStats();\n        showNotification(`\u0110\u00e3 thay th\u1ebf ${count} l\u1ea7n!`);\n    };\n\n    window.newlineToComma = function() {\n        saveState();\n        const text = textInput.value;\n        textInput.value = text.replace(\/\\n\/g, ', ');\n        updateStats();\n        showNotification('\u0110\u00e3 chuy\u1ec3n d\u00f2ng m\u1edbi th\u00e0nh d\u1ea5u ph\u1ea9y!');\n    };\n\n    window.commaToNewline = function() {\n        saveState();\n        const text = textInput.value;\n        textInput.value = text.replace(\/,\\s*\/g, '\\n');\n        updateStats();\n        showNotification('\u0110\u00e3 chuy\u1ec3n d\u1ea5u ph\u1ea9y th\u00e0nh d\u00f2ng m\u1edbi!');\n    };\n\n    window.removeEmptyLines = function() {\n        saveState();\n        const text = textInput.value;\n        textInput.value = text.replace(\/^\\s*\\n\/gm, '');\n        updateStats();\n        showNotification('\u0110\u00e3 x\u00f3a t\u1ea5t c\u1ea3 d\u00f2ng tr\u1eafng!');\n    };\n\n    window.textToBinary = function() {\n        const text = textInput.value;\n        if (!text.trim()) {\n            showNotification('Vui l\u00f2ng nh\u1eadp v\u0103n b\u1ea3n tr\u01b0\u1edbc!', 'error');\n            return;\n        }\n        \n        saveState();\n        const binary = text.split('').map(char => \n            char.charCodeAt(0).toString(2).padStart(8, '0')\n        ).join(' ');\n        \n        textInput.value = binary;\n        updateStats();\n        showNotification('\u0110\u00e3 chuy\u1ec3n sang m\u00e3 Binary!');\n    };\n\n    window.textToHex = function() {\n        const text = textInput.value;\n        if (!text.trim()) {\n            showNotification('Vui l\u00f2ng nh\u1eadp v\u0103n b\u1ea3n tr\u01b0\u1edbc!', 'error');\n            return;\n        }\n        \n        saveState();\n        const hex = text.split('').map(char => \n            char.charCodeAt(0).toString(16).padStart(2, '0')\n        ).join(' ');\n        \n        textInput.value = hex.toUpperCase();\n        updateStats();\n        showNotification('\u0110\u00e3 chuy\u1ec3n sang m\u00e3 Hex!');\n    };\n\n    window.binaryToText = function() {\n        const text = textInput.value;\n        if (!text.trim()) {\n            showNotification('Vui l\u00f2ng nh\u1eadp m\u00e3 Binary tr\u01b0\u1edbc!', 'error');\n            return;\n        }\n        \n        try {\n            saveState();\n            const result = text.split(' ').map(binary => \n                String.fromCharCode(parseInt(binary, 2))\n            ).join('');\n            \n            textInput.value = result;\n            updateStats();\n            showNotification('\u0110\u00e3 chuy\u1ec3n t\u1eeb Binary sang v\u0103n b\u1ea3n!');\n        } catch (e) {\n            showNotification('M\u00e3 Binary kh\u00f4ng h\u1ee3p l\u1ec7!', 'error');\n        }\n    };\n\n    window.hexToText = function() {\n        const text = textInput.value;\n        if (!text.trim()) {\n            showNotification('Vui l\u00f2ng nh\u1eadp m\u00e3 Hex tr\u01b0\u1edbc!', 'error');\n            return;\n        }\n        \n        try {\n            saveState();\n            const result = text.split(' ').map(hex => \n                String.fromCharCode(parseInt(hex, 16))\n            ).join('');\n            \n            textInput.value = result;\n            updateStats();\n            showNotification('\u0110\u00e3 chuy\u1ec3n t\u1eeb Hex sang v\u0103n b\u1ea3n!');\n        } catch (e) {\n            showNotification('M\u00e3 Hex kh\u00f4ng h\u1ee3p l\u1ec7!', 'error');\n        }\n    };\n\n    window.undoAction = function() {\n        if (currentStep > 0) {\n            currentStep--;\n            textInput.value = history[currentStep];\n            updateStats();\n            showNotification('\u0110\u00e3 ho\u00e0n t\u00e1c th\u00e0nh c\u00f4ng!');\n        } else {\n            showNotification('Kh\u00f4ng c\u00f3 thao t\u00e1c n\u00e0o \u0111\u1ec3 ho\u00e0n t\u00e1c!', 'error');\n        }\n    };\n\n    window.copyToClipboard = function() {\n        const text = textInput.value;\n        if (!text.trim()) {\n            showNotification('Kh\u00f4ng c\u00f3 v\u0103n b\u1ea3n \u0111\u1ec3 sao ch\u00e9p!', 'error');\n            return;\n        }\n\n        navigator.clipboard.writeText(text).then(() => {\n            showNotification('\u0110\u00e3 sao ch\u00e9p v\u00e0o clipboard!');\n        }).catch(() => {\n            textInput.select();\n            document.execCommand('copy');\n            showNotification('\u0110\u00e3 sao ch\u00e9p v\u00e0o clipboard!');\n        });\n    };\n\n    window.downloadText = function() {\n        const text = textInput.value;\n        if (!text.trim()) {\n            showNotification('Kh\u00f4ng c\u00f3 v\u0103n b\u1ea3n \u0111\u1ec3 t\u1ea3i xu\u1ed1ng!', 'error');\n            return;\n        }\n\n        const blob = new Blob([text], { type: 'text\/plain;charset=utf-8' });\n        const url = window.URL.createObjectURL(blob);\n        const a = document.createElement('a');\n        a.href = url;\n        a.download = 'van-ban-da-chuyen-doi.txt';\n        document.body.appendChild(a);\n        a.click();\n        document.body.removeChild(a);\n        window.URL.revokeObjectURL(url);\n        showNotification('\u0110\u00e3 t\u1ea3i xu\u1ed1ng th\u00e0nh c\u00f4ng!');\n    };\n\n    window.clearText = function() {\n        saveState();\n        textInput.value = '';\n        updateStats();\n        showNotification('\u0110\u00e3 x\u00f3a to\u00e0n b\u1ed9 v\u0103n b\u1ea3n!');\n    };\n\n    function showNotification(message, type = 'success') {\n        const notification = document.getElementById('notification');\n        notification.textContent = message;\n        notification.className = `notification show ${type}`;\n        \n        setTimeout(() => {\n            notification.classList.remove('show');\n        }, 3000);\n    }\n\n    \/\/ Auto-resize textarea\n    textInput.addEventListener('input', function() {\n        this.style.height = 'auto';\n        this.style.height = Math.max(this.scrollHeight, 160) + 'px';\n    });\n\n    \/\/ Kh\u1edfi t\u1ea1o\n    updateStats();\n})();\n<\/script>\n<\/div><h3 class=\"wp-block-heading\"><\/h3><h1 class=\"wp-block-heading\">\u514d\u8d39\u6587\u672c\u8f6c\u6362\u5de5\u5177 \u2013 \u4e13\u4e1a\u8d8a\u5357\u8bed\u6587\u672c\u5904\u7406<\/h1><p>\u60a8\u6b63\u5728\u5bfb\u627e\u4e00\u4e2a <strong>\u8d8a\u5357\u8bed\u6587\u672c\u8f6c\u6362\u5de5\u5177<\/strong> \u5f3a\u5927\u3001\u514d\u8d39\u4e14\u6613\u7528\uff1f <a class=\"wpil_keyword_link\" href=\"https:\/\/dps.media\/zh\/\" title=\"DPS.MEDIA \u80a1\u4efd\u516c\u53f8\" data-wpil-keyword-link=\"linked\" data-wpil-monitor-id=\"34\">DPS.MEDIA<\/a> \u81ea\u6211\u4ecb\u7ecd <strong>\u6587\u672c\u8f6c\u6362\u5de5\u5177<\/strong> \u2013 \u6ee1\u8db3\u60a8\u6240\u6709\u6587\u672c\u5904\u7406\u9700\u6c42\u7684\u5b8c\u7f8e\u89e3\u51b3\u65b9\u6848\u3002.<\/p><h2 class=\"wp-block-heading\">\u4e3a\u4ec0\u4e48\u9009\u62e9 DPS.MEDIA \u7684\u6587\u672c\u8f6c\u6362\u5de5\u5177\uff1f<\/h2><h3 class=\"wp-block-heading\">\ud83d\ude80 \u5353\u8d8a\u529f\u80fd<\/h3><p><strong>\u6587\u672c\u8f6c\u6362\u5de5\u5177<\/strong> DPS.MEDIA \u4e0d\u4ec5\u4ec5\u662f\u4e00\u4e2a\u7b80\u5355\u7684\u5927\u5c0f\u5199\u8f6c\u6362\u5de5\u5177\u3002\u6211\u4eec\u5f00\u53d1\u4e86\u4e00\u5957\u5168\u9762\u7684\u5de5\u5177\uff0c\u5177\u5907 <strong>14+ \u4e13\u4e1a\u529f\u80fd<\/strong>:<\/p><h4 class=\"wp-block-heading\">\u6587\u672c\u683c\u5f0f\u8f6c\u6362:<\/h4><ul class=\"wp-block-list\">\n<li><strong>\u53e5\u9996\u5927\u5199<\/strong>: \u81ea\u52a8\u5927\u5199\u6bcf\u884c\u5f00\u5934\u548c\u53e5\u53f7\u540e\u9996\u5b57\u6bcd<\/li>\n\n\n\n<li><strong>\u5c0f\u5199 \/ \u5927\u5199<\/strong>: \u8f6c\u6362\u5168\u6587\u672c\u5927\u5c0f\u5199<\/li>\n\n\n\n<li><strong>\u6807\u9898<\/strong>: \u4e13\u4e1a\u6807\u9898\u6bcf\u8bcd\u9996\u5b57\u6bcd\u5927\u5199<\/li>\n<\/ul><h4 class=\"wp-block-heading\">\u4e13\u4e1a\u8d8a\u5357\u8bed\u5904\u7406:<\/h4><ul class=\"wp-block-list\">\n<li><strong>\u53bb\u9664\u8d8a\u5357\u8bed\u7b26\u53f7<\/strong>: \u5c06 \u201cXin ch\u00e0o\u201d \u8f6c\u6362\u4e3a \u201cXin chao\u201d<\/li>\n\n\n\n<li><strong>\u641c\u7d22\u4e0e\u66ff\u6362<\/strong>: \u6b63\u5219\u8868\u8fbe\u5f0f\u9a71\u52a8\u7684\u641c\u7d22 &amp; \u66ff\u6362<\/li>\n\n\n\n<li><strong>\u8bcd\u6570\u3001\u5b57\u7b26\u6570\u3001\u884c\u6570<\/strong>: \u5b9e\u65f6\u6587\u672c\u7edf\u8ba1<\/li>\n<\/ul><h4 class=\"wp-block-heading\">\u9ad8\u7ea7\u683c\u5f0f\u5316\u5de5\u5177:<\/h4><ul class=\"wp-block-list\">\n<li><strong>\u53bb\u9664\u7a7a\u683c<\/strong>: \u5220\u9664\u6240\u6709\u4e0d\u5fc5\u8981\u7684\u7a7a\u683c<\/li>\n\n\n\n<li><strong>\u7528 _ \u66ff\u6362\u7a7a\u683c<\/strong>: \u5c06\u7a7a\u683c\u8f6c\u6362\u4e3a\u4e0b\u5212\u7ebf<\/li>\n\n\n\n<li><strong>\u6362\u884c\u7b26 \u2194 \u9017\u53f7<\/strong>: \u8f6c\u6362\u5217\u8868\u683c\u5f0f<\/li>\n\n\n\n<li><strong>\u5220\u9664\u7a7a\u884c<\/strong>: \u6e05\u7406\u6587\u672c<\/li>\n<\/ul><h4 class=\"wp-block-heading\">\u7f16\u7801 &amp; \u89e3\u7801:<\/h4><ul class=\"wp-block-list\">\n<li><strong>\u6587\u672c \u2194 \u4e8c\u8fdb\u5236<\/strong>: \u4e8c\u8fdb\u5236\u7f16\u7801\u8f6c\u6362<\/li>\n\n\n\n<li><strong>\u6587\u672c \u2194 \u5341\u516d\u8fdb\u5236<\/strong>: \u5341\u516d\u8fdb\u5236\u7f16\u7801\u8f6c\u6362<\/li>\n\n\n\n<li><strong>\u64a4\u9500 (Undo)<\/strong>: \u56de\u900020\u6b65\u64cd\u4f5c<\/li>\n<\/ul><h3 class=\"wp-block-heading\">\ud83d\udca1 \u4eae\u70b9\u63d0\u793a<\/h3><p><strong>1. \u53cb\u597d\u7684\u754c\u9762<\/strong><\/p><ul class=\"wp-block-list\">\n<li>\u73b0\u4ee3\u8bbe\u8ba1\uff0c\u54cd\u5e94\u5f0f 100%<\/li>\n\n\n\n<li>\u4e13\u4e1a\u6392\u7248\uff0c\u91c7\u7528 Inter \u5b57\u4f53<\/li>\n\n\n\n<li>\u6d41\u7545\u7684\u7528\u6237\u4f53\u9a8c<\/li>\n<\/ul><p><strong>2. \u5feb\u901f\u5904\u7406\u901f\u5ea6<\/strong><\/p><ul class=\"wp-block-list\">\n<li>\u5ba2\u6237\u7aef\u5904\u7406\uff0c\u65e0\u9700\u7f51\u7edc<\/li>\n\n\n\n<li>\u6587\u672c\u957f\u5ea6\u65e0\u9650\u5236<\/li>\n\n\n\n<li>\u5373\u65f6\u7ed3\u679c<\/li>\n<\/ul><p><strong>3. \u7edd\u5bf9\u5b89\u5168<\/strong><\/p><ul class=\"wp-block-list\">\n<li>\u4e0d\u5b58\u50a8\u7528\u6237\u6570\u636e<\/li>\n\n\n\n<li>\u5b8c\u5168\u79bb\u7ebf\u5904\u7406<\/li>\n\n\n\n<li>100% \u79c1\u5bc6\u4fdd\u969c<\/li>\n<\/ul><h2 class=\"wp-block-heading\">\u6587\u672c\u8f6c\u6362\u5de5\u5177\u4f7f\u7528\u6307\u5357<\/h2><h3 class=\"wp-block-heading\">\u6b65\u9aa41\uff1a\u8f93\u5165\u6587\u672c<\/h3><p>\u5c06\u9700\u8981\u5904\u7406\u7684\u6587\u672c\u7c98\u8d34\u6216\u8f93\u5165\u5230\u6587\u672c\u6846\u4e2d\u3002\u5de5\u5177\u4f1a\u81ea\u52a8\u7edf\u8ba1\u5b57\u7b26\u6570\u3001\u5355\u8bcd\u6570\u548c\u884c\u6570\u3002<\/p><h3 class=\"wp-block-heading\">\u6b65\u9aa42\uff1a\u9009\u62e9\u529f\u80fd<\/h3><p>\u70b9\u51fb\u5bf9\u5e94\u529f\u80fd\u6309\u94ae\uff1a<\/p><ul class=\"wp-block-list\">\n<li><strong>\u5927\u5c0f\u5199\u8f6c\u6362<\/strong>: \u53e5\u9996\u5927\u5199\u3001\u5c0f\u5199\u3001\u5927\u5199\u3001\u6807\u9898\u683c\u5f0f<\/li>\n\n\n\n<li><strong>\u8d8a\u5357\u8bed\u5904\u7406<\/strong>: \u53bb\u9664\u58f0\u8c03\uff0c\u67e5\u627e\u66ff\u6362<\/li>\n\n\n\n<li><strong>\u683c\u5f0f<\/strong>: \u5904\u7406\u7a7a\u683c\u3001\u6362\u884c\u3001\u9017\u53f7<\/li>\n\n\n\n<li><strong>\u7f16\u7801<\/strong>: \u4e8c\u8fdb\u5236\uff0c\u5341\u516d\u8fdb\u5236\u8f6c\u6362<\/li>\n<\/ul><h3 class=\"wp-block-heading\">\u6b65\u9aa43\uff1a\u8f93\u51fa\u7ed3\u679c<\/h3><ul class=\"wp-block-list\">\n<li><strong>\u590d\u5236<\/strong>: \u590d\u5236\u7ed3\u679c\u5230\u526a\u8d34\u677f<\/li>\n\n\n\n<li><strong>\u4e0b\u8f7d<\/strong>: \u4e0b\u8f7d.txt\u6587\u4ef6<\/li>\n\n\n\n<li><strong>\u64a4\u9500<\/strong>: \u5982\u6709\u9700\u8981\uff0c\u8fd4\u56de\u4e0a\u4e00\u6b65<\/li>\n<\/ul><h2 class=\"wp-block-heading\">Text Converter Tool\u7684\u5b9e\u9645\u5e94\u7528<\/h2><h3 class=\"wp-block-heading\">\u9002\u7528\u4e8e\u5185\u5bb9\u4f5c\u8005 &amp; \u535a\u4e3b<\/h3><ul class=\"wp-block-list\">\n<li>\u89c4\u8303\u6587\u7ae0\u683c\u5f0f<\/li>\n\n\n\n<li>\u521b\u5efa\u6807\u51c6SEO\u6807\u9898<\/li>\n\n\n\n<li>\u5904\u7406\u591a\u6765\u6e90\u6570\u636e<\/li>\n<\/ul><h3 class=\"wp-block-heading\">\u9002\u7528\u4e8e\u5f00\u53d1\u8005 &amp; \u7a0b\u5e8f\u5458<\/h3><ul class=\"wp-block-list\">\n<li>\u8f6c\u6362\u6570\u636e\u683c\u5f0f<\/li>\n\n\n\n<li>\u6587\u672c\u7f16\u7801\/\u89e3\u7801<\/li>\n\n\n\n<li>\u6e05\u7406\u4ee3\u7801\u6ce8\u91ca<\/li>\n<\/ul><h3 class=\"wp-block-heading\">\u9002\u7528\u4e8e\u8425\u9500 &amp; SEO<\/h3><ul class=\"wp-block-list\">\n<li>\u4e3a\u591a\u5e73\u53f0\u51c6\u5907\u5185\u5bb9<\/li>\n\n\n\n<li>\u4f18\u5316\u5143\u63cf\u8ff0<\/li>\n\n\n\n<li>\u5904\u7406\u5173\u952e\u8bcd\u5217\u8868<\/li>\n<\/ul><h3 class=\"wp-block-heading\">\u9002\u7528\u4e8e\u7ffb\u8bd1 &amp; \u7f16\u8f91<\/h3><ul class=\"wp-block-list\">\n<li>\u89c4\u8303\u8bd1\u6587<\/li>\n\n\n\n<li>\u53bb\u9664\u7d22\u5f15\u7b26\u53f7<\/li>\n\n\n\n<li>\u4e13\u4e1a\u6587\u672c\u683c\u5f0f<\/li>\n<\/ul><h2 class=\"wp-block-heading\">\u4e0e\u5176\u4ed6\u5de5\u5177\u6bd4\u8f83<\/h2><pre class=\"wp-block-preformatted\">\u529f\u80fdDPS.MEDIA\u5de5\u5177\u5176\u4ed6\u5de5\u5177\u652f\u6301\u8d8a\u5357\u8bed\u2705 \u5b8c\u6574\u274c \u9650\u5236\u529f\u80fd\u6570\u91cf\u2705 14+\u274c 3-5\u64a4\u9500\u529f\u80fd\u2705 20\u6b65\u274c \u65e0\u7f8e\u89c2\u6392\u7248\u2705 \u4e13\u4e1a\u274c \u57fa\u7840\u54cd\u5e94\u5f0f\u8bbe\u8ba1\u2705 100%\u274c \u4e0d\u4f73\u5904\u7406\u901f\u5ea6\u2705 \u5373\u65f6\u274c \u7f13\u6162<\/pre><h2 class=\"wp-block-heading\">\u4e3a\u4ec0\u4e48DPS.MEDIA\u5f00\u53d1\u6b64\u5de5\u5177\uff1f<\/h2><p>\u5728 <strong>DPS.MEDIA<\/strong>, \u6211\u4eec\u6df1\u77e5\u6587\u672c\u5904\u7406\u662f\u8bb8\u591a\u4eba\u7684\u65e5\u5e38\u9700\u6c42\u3002\u4ece\u5185\u5bb9\u521b\u4f5c\u8005\u3001\u5f00\u53d1\u8005\u5230\u529e\u516c\u5ba4\u804c\u5458 \u2013 \u6bcf\u4e2a\u4eba\u90fd\u9700\u8981\u5b9e\u7528\u7684\u5de5\u5177\u6765\u63d0\u9ad8\u5de5\u4f5c\u6548\u7387\u3002.<\/p><p>\u6211\u4eec\u5bf9\u73b0\u6709\u5728\u7ebf\u5de5\u5177\u4e0d\u6ee1\u610f\uff0c\u56e0\u4e3a\uff1a<\/p><ul class=\"wp-block-list\">\n<li>\u7f3a\u4e4f\u8d8a\u5357\u8bed\u652f\u6301<\/li>\n\n\n\n<li>\u754c\u9762\u8fc7\u65f6<\/li>\n\n\n\n<li>\u529f\u80fd\u6709\u9650<\/li>\n\n\n\n<li>\u672a\u9488\u5bf9\u79fb\u52a8\u7aef\u4f18\u5316<\/li>\n<\/ul><p>\u56e0\u6b64\uff0c <strong>\u6587\u672c\u8f6c\u6362\u5de5\u5177<\/strong> \u5b83\u8bde\u751f\u4e8e\u4e3a\u8d8a\u5357\u7528\u6237\u5e26\u6765\u6700\u4f73\u4f53\u9a8c\u7684\u4f7f\u547d\u3002<\/p><h2 class=\"wp-block-heading\">\u5982\u4f55\u96c6\u6210\u5230\u60a8\u7684\u7f51\u7ad9<\/h2><p>\u60a8\u662f\u5f00\u53d1\u8005\u6216\u7f51\u7ad9\u6240\u6709\u8005\uff0c\u60f3\u96c6\u6210\u6b64\u5de5\u5177\uff1f\u975e\u5e38\u7b80\u5355\uff1a<\/p><ol class=\"wp-block-list\">\n<li><strong>\u590d\u5236\u4ee3\u7801 HTML<\/strong> \u5b8c\u6210<\/li>\n\n\n\n<li><strong>\u7c98\u8d34\u5230 WordPress<\/strong> \u81ea\u5b9a\u4e49 HTML \u5757<\/li>\n\n\n\n<li><strong>\u65e0\u9700\u914d\u7f6e<\/strong> \u65e0\u9700\u989d\u5916\u64cd\u4f5c \u2013 \u5373\u63d2\u5373\u7528!<\/li>\n<\/ol><p>\u8be5\u5de5\u5177\u8bbe\u8ba1\u4e3a\u54cd\u5e94\u5f0f\uff0c\u4f1a\u81ea\u52a8\u9002\u5e94\u60a8\u7684\u7f51\u7ad9\u8bbe\u8ba1\u3002<\/p><h2 class=\"wp-block-heading\">FAQ \u2013 \u5e38\u89c1\u95ee\u9898<\/h2><p><strong>\u95ee\uff1a\u8be5\u5de5\u5177\u662f\u514d\u8d39\u7684\u5417\uff1f<\/strong> \u7b54\uff1a\u5b8c\u5168\u514d\u8d39\uff0c\u65e0\u4f7f\u7528\u9650\u5236\u3002<\/p><p><strong>\u95ee\uff1a\u9700\u8981\u6ce8\u518c\u8d26\u6237\u5417\uff1f<\/strong> \u7b54\uff1a\u4e0d\u9700\u8981\uff0c\u7acb\u5373\u4f7f\u7528\u3002<\/p><p><strong>\u95ee\uff1a\u6570\u636e\u4f1a\u88ab\u4fdd\u5b58\u5417\uff1f<\/strong> \u7b54\uff1a\u4e0d\u4f1a\uff0c\u6240\u6709\u5904\u7406\u5747\u5728\u60a8\u7684\u672c\u5730\u8bbe\u5907\u4e0a\u8fdb\u884c\u3002<\/p><p><strong>\u95ee\uff1a\u652f\u6301\u624b\u673a\u5417\uff1f<\/strong> \u7b54\uff1a\u652f\u6301\uff0c100%\u54cd\u5e94\u5f0f\uff0c\u9002\u7528\u4e8e\u6240\u6709\u8bbe\u5907\u3002<\/p><p><strong>\u95ee\uff1a\u6587\u672c\u957f\u5ea6\u6709\u9650\u5236\u5417\uff1f<\/strong> \u7b54\uff1a\u65e0\u9650\u5236\uff0c\u4ec5\u53d7\u8bbe\u5907\u5185\u5b58\u9650\u5236\u3002<\/p><h2 class=\"wp-block-heading\">\u603b\u7ed3<\/h2><p><strong>DPS.MEDIA \u7684\u6587\u672c\u8f6c\u6362\u5de5\u5177<\/strong> \u662f\u4e00\u4e2a\u5168\u9762\u3001\u73b0\u4ee3\u4e14\u5b8c\u5168\u514d\u8d39\u7684\u8d8a\u5357\u8bed\u6587\u672c\u5904\u7406\u89e3\u51b3\u65b9\u6848\u3002\u62e5\u6709\u8d85\u8fc714\u9879\u5f3a\u5927\u529f\u80fd\uff0c\u4e13\u4e1a\u754c\u9762\u548c\u6781\u4f73\u7684\u7528\u6237\u4f53\u9a8c\uff0c\u8fd9\u7edd\u5bf9\u662f\u60a8\u4eca\u5929\u5fc5\u987b\u6536\u85cf\u7684\u5de5\u5177\u3002<\/p><p><strong>\u7acb\u5373\u8bd5\u7528<\/strong> \u5e76\u4f53\u9a8c\u4e0d\u540c\uff01\u8be5\u5de5\u5177\u7531 DPS.MEDIA \u56e2\u961f\u6301\u7eed\u66f4\u65b0\uff0c\u5e26\u6765\u4f17\u591a\u65b0\u529f\u80fd\u3002<\/p>","protected":false},"excerpt":{"rendered":"<p>{\"translations\":[{\"\u6587\u672c\u8f6c\u6362\u5de5\u5177 \u4e13\u4e1a\u8f6c\u6362\u548c\u5904\u7406\u8d8a\u5357\u8bed\u6587\u672c 0 \u5b57\u7b26 0 \u5b57 0 \u884c \u67e5\u627e &amp; \u66ff\u6362 \u9996\u5b57\u6bcd\u5927\u5199 \u5c0f\u5199 \u5168\u90e8\u5927\u5199 \u6807\u9898 \u53bb\u9664\u8d8a\u5357\u8bed\u58f0\u8c03 \u53bb\u9664\u7a7a\u683c \u7528 _ \u66ff\u6362\u7a7a\u683c \u6362\u884c \u2192 \u9017\u53f7 [\u2026]\"}]}<\/p>","protected":false},"author":1,"featured_media":28000,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-27990","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"rankmath_keywords":{"primary":"","secondary":[""]},"yoast_keywords":{"primary":"","secondary":[]},"yoast_focuskw":"","rankmath_focuskw":"","seo_keywords":{"primary":"","secondary":[""]},"_links":{"self":[{"href":"https:\/\/dps.media\/zh\/wp-json\/wp\/v2\/pages\/27990","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dps.media\/zh\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/dps.media\/zh\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/dps.media\/zh\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dps.media\/zh\/wp-json\/wp\/v2\/comments?post=27990"}],"version-history":[{"count":7,"href":"https:\/\/dps.media\/zh\/wp-json\/wp\/v2\/pages\/27990\/revisions"}],"predecessor-version":[{"id":28630,"href":"https:\/\/dps.media\/zh\/wp-json\/wp\/v2\/pages\/27990\/revisions\/28630"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dps.media\/zh\/wp-json\/wp\/v2\/media\/28000"}],"wp:attachment":[{"href":"https:\/\/dps.media\/zh\/wp-json\/wp\/v2\/media?parent=27990"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}