<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                在談論國際化時,安全往往被忽視,但有一些重要的事情要記住。 ##檢查垃圾郵件和其他惡意串 當翻譯人員向您提交本地化時,請務必檢查,以確保他們的翻譯不包括垃圾郵件或其他惡意單詞。 您可以使用Google翻譯將其翻譯翻譯成母語,以便您可以輕松比較原始和翻譯的字符串。 ## Escape國際化字符串 你不能相信翻譯者只會在本地化中增加良性文本; 如果他們想要,他們可以添加惡意JavaScript或其他代碼。 為了保護這一點,重要的是要像國際化的字符串一樣處理任何其他不可信任的輸入。 如果你輸出的字符串,那么應該被轉義。 不安全 ``` <?php _e( 'The REST API content endpoints were added in WordPress 4.7.', 'your-text-domain' ); ?> ``` 安全: ``` <?php esc_html_e( 'The REST API content endpoints were added in WordPress 4.7.', 'your-text-domain' ); ?> ``` 或者,有些人選擇依賴翻譯驗證機制,而不是將轉義添加到他們的代碼中。 驗證機制的一個例子是WordPress Polyglots團隊用于translate.wordpress.org的編輯器角色。 這可以確保不受信任的貢獻者提交的任何翻譯都已經被受信任的編輯器驗證,然后被接受。 ##將占位符用于URL 不要在國際化字符串中包含URL,因為惡意翻譯可以將其更改為指向不同的URL。 而是使用printf()或sprintf()的占位符。 不安全 ``` <?php _e( 'Please <a href="https://wordpress.org/support/register.php"> register for a WordPress.org account</a>.', 'your-text-domain' ); ?> ``` 安全: ``` <?php printf( __( 'Please <a href="%s">register for a WordPress.org account</a>.', 'your-text-domain' ), 'https://wordpress.org/support/register.php' ); ?> ``` ## 編譯自己的.mo二進制文件 翻譯者通常會發送編譯的.mo文件以及純文本.po文件,但是您應該放棄他們的.mo文件并自己編譯,因為您無法知道是否從相應的.po文件中編譯, 或不同的。 如果是根據不同的編譯,那么可能會包含垃圾郵件和其他惡意的字符串。 使用PoEdit生成二進制文件將覆蓋.po文件中的標題,因此最好從命令行編譯它: ``` msgfmt -cv -o /path/to/output.mo /path/to/input.po ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看