使用以下函数无数次输出包含在相关HTML标记中的原始文本。但突然之间,没有工作?!?
它输出原始文本(即; airbush-line),我知道它基本上是do_shortcode将回应的内容。只是它不再运行我的自定义功能?
我在CPT中有一个自定义元字段,输出原始文本,然后我将在我的函数中包装,因此会显示一个图标,但它目前没有播放球?
元框代码 -
$prefix = 'theme_';
$meta_box_service = array(
'id' => 'service_details',
'title' => __( 'Service Details', 'budd' ),
'page' => 'services',
'context' => 'normal',
'priority' => 'high',
'fields' => array(
array(
'name' => __( 'Service Icon', 'budd' ),
'id' => $prefix . 'service_icon',
'type' => 'select',
'options' => array(
'Airbush (Line)' => 'airbrush-line',
'Airbrush (Solid)' => 'airbrush-solid',
'Bar Chart (Solid)' => 'bar-chart-solid'
)
),
array(
'name' => __( 'Service URL', 'budd' ),
'id' => $prefix . 'service_url',
'type' => 'text',
'std' => ''
)
)
);
add_action( 'admin_menu', 'theme_add_box_service' );
前端的do_shortcode -
<?php echo do_shortcode( get_post_meta( $post->ID, 'theme_service_icon', $single = true ) ) ?>
我已经拥有的功能 -
class IconsMind {
public function __construct() {
add_action( 'init', array( &$this, 'init' ) );
}
public function init() {
add_shortcode( 'icon', array( $this, 'setup_shortcode' ) );
add_filter( 'widget_text', 'do_shortcode' );
}
public function setup_shortcode( $params ) {
extract( shortcode_atts( array(
'name' => 'icon-airbush-line'
), $params ) );
$icon = '<i class="'.$params['name'].'"></i>';
return $icon;
}
}
new IconsMind();
任何建议,真的很感激
感谢