2013-03-17 87 views
0

我使用wp_localize_script將一些變量從PHP傳遞到客戶端JavaScript。這個函數結束調用另一個函數,這是否:Wordpress class.wp-scripts.php註釋掉CDATA,而不是僅僅刪除它們

function print_extra_script($handle, $echo = true) { 
    if (!$output = $this->get_data($handle, 'data')) 
     return; 

    if (!$echo) 
     return $output; 

    echo "<script type='text/javascript'>\n"; // CDATA and type='text/javascript' is not needed for HTML 5 
    echo "/* <![CDATA[ */\n"; 
    echo "$output\n"; 
    echo "/* ]]> */\n"; 
    echo "</script>\n"; 

    return true; 
} 

現在是什麼註釋掉那些CDATA標籤的點,爲什麼不直接刪除它們?
這打破了inspectlet,因爲它被CDATA標籤附加的註釋搞砸了。

回答

1

據我猜測,因爲雖然HTML5中不需要CDATA,但WordPress開發者仍然將它包括在使用HTML4或XHTML的博客和網站中,因爲幾乎在任何情況下它都不會造成傷害。
我正在尋找解決方案,因爲我想擺脫--in HTML5--不必要的type="text/javascript"屬性。

到目前爲止,我的最佳猜測是從wp-includes/class.wp-scripts.php 延長class WP_Scripts但我仍在研究如何最好地完成這一點。

相關問題