自定义缩略图,列表缩略图片,未设置则调用文章首图,首图也没有,调用自定义默认图片,本教程对图片进行的裁剪处理,已方便减少图片请求所产生的带宽问题,操作步骤如下。
1、添加《原生代码上传图片》代码
文章标题:zblogphp原生代码上传图片
文章网址:https://www.78moban.com/article/4885.html
2、在文章编辑页面接口位置添加代码
点击复制代码 PHP
function ActivePlugin_ytecn_ai_xzjt() {
Add_Filter_Plugin('Filter_Plugin_Edit_Response5','ytecn_ai_xzjt_edit_response');
}
function ytecn_ai_xzjt_edit_response() {
global $zbp, $article;
echo '<script type="text/javascript" src="' . $zbp->host . 'zb_users/plugin/ytecn_ai_xzjt/script/upload.js"></script>';
echo '<style type="text/css">
.ytecn_input_img{width:40%!important;}
.ytecn_upimgbutton{ width:120px;}
.ytecn_upimg{width:100px;vertical-align: middle;}</style>';
echo '<div id="tesetu">缩略图1:
<input name="meta_pic" id="edtTitle" type="text" class="ytecn_input_img" value="' . $article->Metas->tesetu1 . '" />
<input type="button" class="ytecn_upimgbutton" value="选择图片">
<img class="ytecn_upimg" src="' . $article->Metas->pic. '">
</div>';
echo '<div id="tesetu">缩略图2:
<input name="meta_pic2" id="edtTitle" type="text" class="ytecn_input_img" value="' . $article->Metas->tesetu2 . '" />
<input type="button" class="ytecn_upimgbutton" value="选择图片">
<img class="ytecn_upimg" src="' . $article->Metas->pic2. '">
</div>';
}
3、通过Filter_Plugin_Post_Get接口,添加图片自定义输出字段,并处理逻辑关系。
点击复制代码 PHP
function ActivePlugin_ytecn_ai_xzjt() {
Add_Filter_Plugin('Filter_Plugin_Post_Call', 'ytecn_nana_Post_Call');
}
function ytecn_nana_Post_Call($post, $method, $args)
{
global $zbp;
if ($method == 'img') {
$GLOBALS['hooks']['Filter_Plugin_Post_Call']['ytecn_nana_Post_Call'] = PLUGIN_EXITSIGNAL_RETURN;
if (!empty($post->Metas->pic)) {
$img[] = $post->Metas->pic;
} elseif($post->ImageCount) {
$img[] = $post->AllImages[0];
} else {
$random = mt_rand(1, 10);
$img[] = $zbp->host . 'zb_users/theme/ytecn_nana/image/random/' . $random . '.png';
}
if(empty($args)){
return $img[0];
}else{
$width = $args[0];
$height = $args[1];
$imgs = Thumb::Thumbs($img, $width, $height);
return $imgs[0];
}
}
}
5、前台调用,在需要的地方,输入
点击复制代码 PHP
{$article->img(200,100)}
img括号里面的是裁剪的宽和高。
如不需要裁剪,则输入
点击复制代码 PHP
{$article->img()}