在文本小工具的标题中强制换行

时间:2014-08-25 作者:user3822048

我在页面中使用文本小部件,我的标题太长,我想在特定的位置进行(Br)突破,但我不能。保存后(br)中断消失,也尝试了(nbsp),但结果相同。如何克服?

3 个回复
SO网友:Saad Bouteraa

你可以顺便解决这个问题widget_title 通过过滤器:

function custom_widget_title( $title ) {
    $title = str_replace( \'__br__\', \'<br/>\', $title );
    return $title;
}    
add_filter( \'widget_title\', \'custom_widget_title\' );
现在使用__br__ 在小部件标题中,而不是<br/> 代码将替换它。

Note: 你需要把代码放在你的主题中functions.php 文件

SO网友:Mark Kaplun

您不能在标题中使用HTML。将标题留空,并将标题作为小部件HTML的一部分。对小部件应用特定的CSS,使其看起来像一个普通的文本小部件。

SO网友:Ignat B.

自从post_titlepost_name (页面的url部分)值相互依赖。我不建议您在页面标题中使用HTML。这可能导致生成奇怪的数据

Title: "foo<br>bar"; 
Slug(URL): "/foobrbar";
,但您可以创建meta_field 存储HTML并将其输出。

1) 创建自定义字段HTML_TITLE_CUSTOM_FIELD_NAME 并填写HTML标题数据;

2) 更新模板文件,更改标题输出逻辑,例如:

<?php
   $html_title = get_post_meta($post->ID, "HTML_TITLE_CUSTOM_FIELD_NAME", true);
   if ($html_title) { ?>
      <h1><?php echo $html_title; ?></h1>
   <?php } else { ?>
      <h1><?php the_title(); ?></h1>
<?php } ?>

结束

相关推荐