详情页

zblog添加文章缩略图

时间:2023年09月19日

编辑:佚名

 自定义缩略图,列表缩略图片,未设置则调用文章首图,首图也没有,调用自定义默认图片,本教程对图片进行的裁剪处理,已方便减少图片请求所产生的带宽问题,操作步骤如下。
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()}
相关文章
猜你需要