我正在编辑一个名为UsersWP的WordPress插件。它是一个供用户创建个人资料并在网站上发布内容的插件。该插件具有一些输入表单字段,我可以拖放这些字段,以便用户可以插入信息并上传文件。
唯一的问题是,它没有供用户输入其社交媒体配置文件帐户链接的输入字段。我可以做到的唯一方法是使用URL输入字段,并从“管理”面板为其指定一个特定于该字段的Font Awesome图标。但是此方法还返回前端图标旁边的url字符串。我不希望它那样做。
我想要的是用户输入指向其社交媒体资料的链接,将该链接插入定位标记,并将其作为前端的可点击图标返回。现在的问题是我不知道如何返回图标。
下面的脚本来自另一个名为class-profile.php的文件:
// URL
if ($field->field_type == 'url' && !empty($value)) {
$link_text = $value;
// if deafult_value is not url then it will be used as link text.
if ($field->default_value && !empty($field->default_value) ) {
if (substr( $field->default_value, 0, 4 ) === "http") {
$link_text = $value;
} else {
$link_text = $field->default_value;
}
}
if (substr( $link_text, 0, 4 ) === "http") {
$link_text = esc_url($link_text);
}
$value = '<a href="'.$value.'">' . '<i class="uwp_field_icon ' . uwp_get_field_icon( $value ) . '"></i>' . '</a>';
}
这是一个名为fields.php的文件:
function uwp_get_field_icon( $icon_value ) {
$field_icon = $icon_value;
if ( ! empty( $icon_value ) ) {
if ( strpos( $icon_value, 'http' ) === 0 ) {
$field_icon = ' '. $icon_value .' <span class="uwp_field_icon" style="background: url(' . $icon_value . ') no-repeat left center;padding-left:14px;background-size:100% auto;margin-right:5px"></span>';
} else if ( strpos($icon_value, ' fa-') !== false ) {
$field_icon = '<i class="uwp_field_icon ' . $icon_value . '"></i>';
}
}
return apply_filters( 'uwp_get_field_icon', $field_icon, $icon_value );
}
这就是HTML格式的结果。 1
这应该返回一个图标。如何在i标签内插入“超赞字体”图标类?