我无法从Wordpress短代码中输出一些html。它会删除一些代码,但不会删除所有代码。
function sound_intro($atts)
{
ob_start();
?>
<select on="change:AMP.setState({ activeDiv: event.value })">
<option value=0></option>
<option value=1>Div 1</option>
<option value=2>Div 2</option>
</select>
<div hidden [hidden]="activeDiv != 1">Div 1</div>
<div hidden [hidden]="activeDiv != 2">Div 2</div>
<?PHP
$contents = ob_get_contents();
file_put_contents("<somewhere>",$contents,FILE_APPEND);
ob_end_clean();
return $contents;
}
add_shortcode( 'sound_intro', 'sound_intro' );
此代码在我的浏览器中产生以下代码:
<select on="change:AMP.setState({ activeDiv: event.value })">
<option value="0"></option>
<option value="1">Div 1</option>
<option value="2">Div 2</option>
</select>
</p>
<div hidden>Div 1</div>
<div hidden>Div 2</div>
因此,如您所见,一些html丢失了,它破坏了我想要实现的逻辑。
在输出结果之前,我将html存储在文本文件中,并且在此文件中,html保留得很好。这意味着在“返回”和实际显示之间,Wordpress正在剥离一些代码。
您对正在发生的事情有任何了解吗?
谢谢