因此,从WordPress概念的角度来看,我更喜欢它是一个区块的想法。如果不是块,那么数据库中就有一些帖子的内容,还有一些被注入到这里。对于这种情况来说,这听起来不错,但如果您的某些需求发生了变化,以后很容易让您头疼。
尽管如此,我认为您可以通过在内容中查找最后一个html标记并在其前面注入图标的html来实现这一点。所以这比像你一样附加它要复杂一点。
展示概念:
$text = "<div><p><div>text</div></p><p>text 2</p></div>";
//Find the position in the string of the last closing HTML tag, i.e. </
$last_tag = strrpos( $text, "</" );
//Insert your HTML at that position, with an extra argument of 0 indicating you don\'t want to replace any of the original, just insert
echo substr_replace( $text, \'<span class="icon"></span>\', $last_tag, 0 );
//Results in <div><p><div>text</div></p><p>text 2</p><span class="icon"></span></div>
在您的情况下,$text变量将被传递到函数中:
// Add Signature Image at End of Posts
add_filter(\'the_content\',\'td_add_signature\', 1);
function td_add_signature($text) {
global $post;
if(($post->post_type == \'post\')) {
$last_tag = strrpos( $text, "</" );
$text = substr_replace( $text, \'<span class="icon"></span>\', $last_tag, 0 );
}
return $text;
}