<?php $text=<<<TEXT リンゴ アダムとイブに出てくるやつで、パソコンには、食いかけのものが光っていることがある TEXT; $hilight_rules= array( array('リンゴ'=>'color:red;'), array('パソコン'=>'color:blue;'), array( 'アダム'=>'color:yellow;') ); echo 'test'. nobita_keyword_hilight($text, $hilight_rules); function nobita_keyword_hilight( $text, $hilight_rules ) { $checksum = crc32( $text ); $class_name = trim( sprintf( "section-%u\n", $checksum ) ); $wrapper = '<span style="%1$s">%2$s</span>'; $block_wrapper= '<div class="%1$s">%2$s</div>'; foreach ( $hilight_rules as $value ) { $name= key( $value ); $replace_value= sprintf( $wrapper, esc_attr( $value[$name] ), $name ); $text= str_replace( $name, $replace_value, $text ); } $text= sprintf( $block_wrapper, $class_name, wpautop( $text ) ); return apply_filters( 'nobita_keyword_hilight', $text ); } ?>
結果:
<div class="section-607577368"><p> <span style="color:red;">リンゴ</span></p> <p> <span style="color:yellow;">アダム</span>とイブに出てくるやつで、<span style="color:blue;">パソコン</span>には、食いかけのものが光っていることがある</p> </div>
リンゴ
アダムとイブに出てくるやつで、パソコンには、食いかけのものが光っていることがある
- http://ja.forums.wordpress.org/topic/136010?replies=10(b:@source)