这是一个好主意,我想我也可以用。这是我刚刚制定的解决方案。
首先,将以下内容添加到functions.php 文件:
/* BOLDED CONTENT */
// Affect the content after it\'s retrieved and before it\'s displayed
add_filter( \'the_content\', \'bolded_content\' );
function bolded_content( $content ) {
// Look for custom meta field called \'bold\'
if ( get_post_meta( get_the_ID(), \'bold\', true ) ) {
// Get \'bold\' value
$bold_terms = get_post_meta( get_the_ID(), \'bold\', true );
// Split string into multiple values at each comma
$keys= explode(", ",$bold_terms);
// Add <strong> tag with special class if needed
$bolded_content = preg_replace(\'/(\'.implode(\'|\', $keys) .\')/iu\', \'<strong class="bolded_content">\\0</strong>\', $content); // Adds
// Remove strong tag if it was added anywhere inside of an existing tag.
// For example: <a href="/folder/<strong class="bolded_content">VALUE</strong>.html"> would break things.
foreach ($keys as $key) {
$bolded_content = preg_replace("|(<[^>]+?)(<strong class=\\"bolded_content\\">($key)</strong>)([^<]+?>)|","$1$3$4",$bolded_content);
}
$content = $bolded_content;
}
return $content;
}
然后添加
custom field 到您的帖子,其中名称为“bold”,值为您希望加粗的任何术语(用逗号和空格分隔)。在您的情况下,这将是:
Name: 粗体
Value: X队、青年队B队、C队联合
对于进一步的样式,您可以调整.bolded_content 在CSS文件中。
这应该允许您添加任意数量的术语,并且它们是在帖子/页面级别设置的。这应该可以做到。希望有帮助!