php 对Wordpress中的插入图像+标题进行了大修,以产生html5输出
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 对Wordpress中的插入图像+标题进行了大修,以产生html5输出相关的知识,希望对你有一定的参考价值。
function custom_insert_image($html, $id, $caption, $title, $align, $url, $size, $alt ) {
//Always return an image with a <figure> tag, regardless of link or caption
//Grab the image tag
$image_tag = get_image_tag($id, '', $title, 'None', $size);
//Let's see if this contains a link
$linkptrn = "/<a[^>]*>/";
$found = preg_match($linkptrn, $html, $a_elem);
// If no link, do nothing
if($found > 0) {
$a_elem = $a_elem[0];
if(strstr($a_elem, "class=\"") !== false){ // If link already has class defined inject it to attribute
$a_elem = str_replace("class=\"", "class=\"colorbox ", $a_elem);
} else { // If no class defined, just add class attribute
$a_elem = str_replace("<a ", "<a class=\"colorbox\" ", $a_elem);
}
} else {
$a_elem = "";
}
// Set up the attributes for the caption <figure>
$attributes = (!empty($id) ? ' id="attachment_' . esc_attr($id) . '"' : '' );
$attributes .= ' class="thumbnail wp-caption ' . 'align'.esc_attr($align) . '"';
if ($caption) {
$output = '[captionC caption="'.$caption.'" align="'.$align.'"]<figure' . $attributes .'>';
} else {
$output = '<figure' . $attributes .'>';
}
//add the image back in
$output .= $a_elem;
$output .= $image_tag;
if($a_elem != "") {
$output .= '</a>';
}
if ($caption) {
$output .= '</figure>[/captionC]';
} else {
$output .= '</figure>';
}
return $output;
}
function custom_caption_shortcode($attr, $content = null)
{
extract(shortcode_atts(array(
'id' => '',
'align' => '',
'caption' => ''
), $attr));
return str_replace ( '</figure>' , '<figcaption class="caption wp-caption-text">'.$caption.'</figcaption></figure>' , $content );
}
add_filter('image_send_to_editor', 'custom_insert_image', 10, 9);
add_filter('disable_captions', create_function('$a', 'return true;'));
add_shortcode( 'captionC', 'custom_caption_shortcode');
以上是关于php 对Wordpress中的插入图像+标题进行了大修,以产生html5输出的主要内容,如果未能解决你的问题,请参考以下文章
php 过滤WordPress的图像插入
php [WordPress] - 列出图像并通过ajax按术语对它们进行排序
php 删除WordPress全尺寸图像插入post +选项并添加最大尺寸以防止用户插入大量i
php Wordpress - 使用WP All Import Pro将图像导入帖子时插入图库的短代码
Wordpress“插入-php”:文件中的php代码未执行
Wordpress - PHP:如何将表单中的选定数据放入文本区域?