您现在的位置是:首页 > 教程 > ecshop商城教程ecshop商城教程
ecshop商品删除后同时自动删除商品描述图的方法
易堃登2024-04-27 20:40:21ecshop商城教程已有人查阅
导读ECSHOP商城默认删除商品时候不会同时删除商品描述里面图片,如果日积月累,这些没有用商品描述图片会占用服务器和空间大量容量,增加我们空间成本
ECSHOP商城默认删除商品时候不会同时删除商品描述里面图片,如果日积月累,这些没有用商品描述图片会占用服务器和空间大量容量,增加我们空间成本,代码号代码号教大家删除商品时候自动同步删除商品的缩略图,相册的图片和商品详情中的图片方法教程,希望对大家有所帮助。
1.打开 admin/includes/lib_goods.php找到
1.打开 admin/includes/lib_goods.php找到
while ($goods = $GLOBALS['db']->fetchRow($res))
{
//后增加
/**
* 删除代码中的图片 by ecshop119.com
* @param mix $good_desc 删除商品介绍中的图片
* @return void
*/
function delete_goods_img($good_desc)
{
$match = "<img[^>]*?src=[\"'\s]*?([^>\"']*?)[\"'>]*?[^>]*?>";
preg_match_all("@$match@isU", $good_desc, $img);
$imgurls = array_unique($img[1]);
$siteurl = dirname($GLOBALS['admin_path']);
foreach ($imgurls as $img)
{
$img = trim($img);
if( preg_match("@^http://@is", $img) )
{
if( preg_match("@^$siteurl@is", $img) )
{
$img = preg_replace("@^$siteurl@is", '', $img);
}else{
continue;
}
}
if(is_file(ROOT_PATH .'/'. $img))
{
unlink(ROOT_PATH .'/'. $img);
}elseif(is_file('../'. $img))
{
unlink('../'. $img);
}
}
}
其实主要就是正则处理替换,然后找到相应图片后删除。商品详情中的图片提取使用了标准的HTML语法,如果你的图片代码没有使用标准的HTML语法(src="图片")而图片地址中又含有空格的话,很有可能造成图片地址无 常提取的问题。
本文标签:
很赞哦! ()
相关文章
随机图文
-
ecshop商品搜索结果页怎么显示商品货号
最近在一个ECSHOP二次开发项目中,需要在商品搜索结果页面显示商品的货号,开发之余,顺手写了篇文章共享给同样有此需要的朋友。 -
ecshop首页调用文章内容缩略图的代码实例
模板里面添加以下代码来在前台抽取内容页面的图片打开includes/lib_article.php -
ecshop添加通过快递单号搜索订单的实现方法
有时候订单太多,我们想直接通过快递单号搜索找到该订单,那么ecshop后台如何修改?需要修改admin/order.php,admin/templates/order_list.htm两个文件 -
ecshop商品销量自定义虚拟销量已销售的实现方法
ecshop商品自定义销量(虚拟销量)实现方法1.在sq执行语句ALTER TABLE `ecs_goods` ADD `sales_volume_bas
留言与评论 (共有 条评论) |