2010-01-25 80 views
2

我剛剛開始編碼相關的WordPress博客,基本討論主題和存儲代碼片段。我安裝了一個代碼語法高亮插件,這是非常好的,但我有一個問題。我只是嘗試發佈我的第一個代碼相關的博客文章和wordpress似乎只發布我的一些代碼,然後它使一些不顯示,就像它過濾了一些它,即使我把它包裝在這樣的標籤..如何在Wordpress博客文章中發佈源代碼

<pre class="brush:php"> 

<?PHP 
my code 
?> 

</pre> 

我的一些代碼有效,有些會以某種方式被過濾掉。我知道這是可能的,因爲許多wordpress編碼網站顯示源代碼。我是否需要修改某些內容以使其在wordpress中可用?


UPDATE

我已經證實,它所有我的代碼保存到它只是過濾出來的數據庫時,它嘗試打印到屏幕,所以當我去編輯的訊息和文本框填充所有源代碼完好

+0

鑑於其代碼的狀態,WP完全可以工作,這是一個奇蹟。 Blogger或Blogspot之類的東西會更可靠,而且更安全。 – 2010-01-25 15:20:56

回答

2

您是否閱讀過這個Codex article?突出顯示代碼,您可以使用wordpress plugins

+0

是的,我讀了一遍,它聽起來沒有前途。我甚至嘗試了一個應該保留代碼的插件,但它仍然無法使用我的一些PHP代碼。此外我沒有任何問題突出代碼,我有一個插件,我的問題是WordPress的代碼是過濾某些代碼我的帖子 – JasonDavis 2010-01-25 07:29:29

3

我的猜測是您的代碼中未經過濾的<或&符號需要進行編碼。使用「& lt;」對於<和「& amp」爲&。

+0

是的,可能我只是認爲這些插件應該讓它改變它我 – JasonDavis 2010-01-25 07:51:21

0

您的<?php ?>代碼是否正在執行?

嘗試用<?php phpinfo(); ?>來確認。

0

我試了一下3種不同的插件,並與他們所有的合併終於有了WordPress沒有過濾掉我的PHP代碼

+2

,這可能會成爲你應該包含這些插件名稱的地方嗎? – 2010-10-07 18:21:01

0

我在過去將代碼插入WordPress的帖子中遇到了很多麻煩,但我找到了一個很簡單的方法來做到這一點!我將這個代碼添加到您的樣式表:

pre { 
font-family: courier,"courier new",monospace; 
font-size: 12px; 
overflow-x: auto; /* Use horizontal scroller if needed; for Firefox 2, not needed in Firefox 3 */ 
white-space: pre-wrap; /* css-3 */ 
white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */ 
white-space: -pre-wrap; /* Opera 4-6 */ 
white-space: -o-pre-wrap; /* Opera 7 */ 
/* width: 99%; */ 
word-wrap: break-word; /* Internet Explorer 5.5+ */ 
    } 

然後只是確保任何代碼,您試圖顯示代碼是< pre>標記中。對我很好!

我剛剛寫了一篇關於這方面的博客文章(http://blog.thelibzter.com/displaying-snippets-of-code-correctly-in-wordpress-posts),因爲這是我很長一段時間找不到解決方案的東西!希望有所幫助!

0

一個想法是使用Github的要點:http://gist.github.com,對於您發佈的每個源代碼,您都會收到一個嵌入代碼,只需將它粘貼到WordPress上的帖子即可。

例如看到這一點:這個要點的https://gist.github.com/meysampg/0a6524b13b8be8e6205a#file-rtl_css_prestashop-tpl,我用嵌入式代碼在這個HTML文件:

<!doctype html> 
<html> 
<head> 
     <title>Sample of Gist code</title> 
</head> 
<body> 
     <p>This is a code:</p> 
     <script src="https://gist.github.com/meysampg/0a6524b13b8be8e6205a.js"></script> 
</body> 
</html> 

你可以看到一個在線演示在這裏:http://jsfiddle.net/meysampg/nadsffe7

相關問題