2016-10-30 108 views
1

我試圖用這個代碼片段包裝帖子內容中的每個表標籤周圍div標籤,但我不知道爲什麼它不工作:各地div標籤裹表標籤

function tekst_wrapper($content) { 
    return preg_replace_callback('~<table.*</table>~i', function($match) { 
    return '<div>' . $match[0] . '</div>'; 
    }, $content); 
} 

add_filter('the_content', 'tekst_wrapper'); 

回答

0

您應該在通配符(零個或多個空格)之後用「問號」和「i」標誌後面的「s」標誌來嘗試。 第一次更改應該有助於您的正則表達式函數區分具有或不具有空格和屬性的表標記的變體。 其次應包括在新行正則表達式搜索:

~<table.*?</table>~is 

和完整的代碼將

function tekst_wrapper($content) { 
    return preg_replace_callback('~<table.*?</table>~is', function($match) { 
    return '<div>' . $match[0] . '</div>'; 
    }, $content); 
} 

add_filter('the_content', 'tekst_wrapper'); 
+0

非常感謝,niklaz。它像一個魅力。其實我已經在這裏找到了代碼形式:http://stackoverflow.com/questions/31304589/wrap-div-around-p-tag-using-php-wordpress我只是想知道爲什麼原始代碼使用p標籤,但沒有'噸工作與表標籤? –

+0

嗨,很高興它有幫助。我認爲這是有效的,因爲可能所有的段落標籤對都在相同的行集合「

...

」,並且不需要「s」標誌。 – niklaz

+0

很多很多,謝謝 –