讓wordpress文章(post和page)可以使用javascript
wordpress由於其內建的換行取代函式wpautop的關係,在內文或分頁寫javascript代碼都會發生錯誤無法執行,但對程式開發者、拿來作cms或是想用ajax互動的人,通常都有機會要放些script在文章中,那麼可以安裝Javascript In WordPress Posts這個外掛來解決這個問題。
下載點(適用至wordpress2.7):wp-ayb-javascriptinposts.zip
安裝方式如同一般外掛,不贅述
在這篇文章放個google news的範例:
原始碼:
<script src="http://www.google.com/jsapi?key=ABQIAAAATEOf9wLppH9P5Zgz_mbvGhTYx0ewTxSDg3nHXE7dVxyb9I0NQxTRKN1N59HG0dB7vXLE8y9ouKVSSA"></script> <script type="text/javascript"> google.load("elements", "1", {packages : ["newsshow"]}); function onLoad() { // Change the News Show size format var plugin_bug_format = "300"+"x"+"250"; var options = {"format" : plugin_bug_format}; var content = document.getElementById("google_content_test"); var newsShow = new google.elements.NewsShow(content, options); } google.setOnLoadCallback(onLoad); </script> <div id="google_content_test"></div>
註1:該外掛運作的基本原理就是替換掉formatting.php裡的wpautop函式,新增script的支援;讓該函式不會任意加入換行 <br> 和 <p> 的標籤至script中
註2:目前有個小bug,使用單引號會被取代為\\’;這問題用正規表達式去修正外掛的原始程式都可獲得解決(已回報給外掛作者)
註3:官方有提供using javascript的解決方法,可惜不實用