你问:“我知道CSS类‘应该’就足够了,对吗?”
呃,也许吧。但不像你想的那样。
CSS当然是用来设计样式的。您给出的示例中,类forgetmenot被设置为display:正如您所写的,none并没有取代一些CSS。它推翻了它,但原来的仍然存在。这很重要,因为它开始显示这个函数是如何工作的——它只是向页面中添加了一些内容。具体来说,它在标题部分添加了一个额外的样式规则。
因此,如果您想添加样式,当然可以重用该代码段。但是您想要添加内容,这不是CSS的目的。
警告(上面“可能”的原因)是因为CSS可以生成内容的地方有一个很小的例外。这就是伪元素。所以你可以这样做,
.single-post-title::before{
content: "123"
}
这将在前面注入一个元素。单篇文章标题类元素。然而,这有一个非常有限的应用。您不能在那里放置任何其他HTML,只有纯文本(和图像,非常有趣)。由于现在有了一个额外的元素,而不仅仅是同一个元素的一部分,因此要正确设置样式也很困难。
我认为你想要做的是在文章输出到页面之前让WordPress更改标题。当然,您也只想对特定的自定义帖子类型执行此操作。
类似于:
function so328323_prefix_title( $title, $id = null ) {
if ( get_post_type( $id ) == \'your_post_type\' ) {
$title = "123 " . $title;
}
return $title;
}
add_filter( \'the_title\', \'so328323_prefix_title\', 10, 2 );
因此,我们在这里所做的是过滤帖子标题。我们正在中断WordPress显示标题并在需要时修改标题的过程。我们收到标题和帖子ID,然后检查帖子的类型是否正确(您必须输入正确的CPT名称),如果是,我们会在发送标题之前为其添加前缀。