分类 开源软件 下的文章

ecshop删除商品时同时删除商品图片


ECSHOP有个很大的问题就是删除了商品之后商品详情里的图片不会删除,长期以来就会造成网站文件巨大而且也分不清楚哪些图片有用哪些没用,让人很头疼。今天写了下面的一段程序,已经可以把商品详情中的图片保存在数组中的。然后按照数组的内容删除即可,为了方便你正确穿插到自己的程序里,这一部分需要自己动手来写,以免误删了你的文件。

    $sql = "select goods_desc from fx_goods where goods_id = ".$id;
    $des = $db->getOne($sql);
    $arr = explode("-1||strpos($tmp[$k],'.jpeg')>-1||strpos($tmp[$k],'.png')>-1||strpos($tmp[$k],'.gif')>-1||strpos($tmp[$k],'.bmp')>-1){
				 	$imgs[] = $tmp[$k];
				 }
			}
		}
	}

dede导航栏调用一二级栏目的方法


1.使用dede的标签来调用

  {dede:channelartlist typeid='top' row='8'}
  
  • {dede:field name='typename'/}
  • {/dede:channelartlist}

    优点:DEDE的标签不会出错,可能效率更好
    缺点:无法调用外部链接的栏目

    2.使用dede的PHP标签来调用

      {dede:php}
        $sql = 'SELECT id,typedir,typename from jifu_arctype where reid = 0 ORDER BY sortrank LIMIT 8';
    	$dsql->Execute(1,$sql);
    	while($row = $dsql->GetArray(1)){
    		$row['typedir'] = str_replace('{cmspath}','',$row['typedir']);
    		echo "
  • ".$row['typename']."
      "; $sql2 = "SELECT typedir,typename from jifu_arctype where reid = ".$row['id']." ORDER BY sortrank LIMIT 5"; $dsql->Execute(2,$sql2); while($row2 = $dsql->GetArray(2)){ $row2['typedir'] = str_replace('{cmspath}','',$row2['typedir']); echo "
    • ".$row2['typename']."
    • "; } echo "
  • "; } {/dede:php}

    优点:可以通过转换SQL语句调用自己任何想调用的栏目。
    缺点:代码繁琐,不好读,PHP来调用可能会带来未知的错误。


    dede PHP标签 简介


    dede的标签虽然强大,但是很多功能还是无法很好的实现。此时可以使用其PHP标签,即在模板中写PHP语句来得到任何自己想要的东西。

    标签名称:{dede:php} {/dede:php}

    举2个小例子来证明其可以做任何事情:
    1.输出1-100

    {dede:php}
    for($i=0;$i<100;$i++){
        echo $i.'';
    }
    {/dede:php}
    

    2.输出当前页面所在的顶级栏目名称

    {dede:php}
    if($refObj->Fields['reid']==0){
    	echo $refObj->Fields['title'];
    }else{
    	$reid = $refObj->Fields['reid'];
    	$row=$dsql->GetOne('SELECT id,reid,typename from jifu_arctype where id = '.$reid);
    	echo $row['typename'];
    }
    {/dede:php}
    

    完全去除ecshop版权信息


    前台部分:
    1:去掉头部TITLE部分的ecshop演示站 Powered by ecshop

    前者在后台商店设置 - 商店标题修改
    后者打开includes/lib_main.php
    $page_title = $GLOBALS['_CFG']['shop_title'] . ' - ' . 'Powered by ECShop';
    改为
    $page_title = $GLOBALS['_CFG']['shop_title'];

    2.去掉版本信息 “
    打开includes/cls_template删除以下部分
    /* 在头部加入版本信息 */
    $source = preg_replace('//i', "\r\n<meta name="Generator" content="" . APPNAME .' ' . VERSION . "" />", $source);
    3.去掉友情链接部分

    4.去掉底部的Powered by ecshop 270

    打开 js/common.js
    删除第244行:onload = function()

    再打开模板文件夹的 library/page_footer.lbi
    删除 {foreach from=$lang.p_y item=pv}{$pv}{/foreach}{$licensed}
    后台部分:
    1.去除两张图片

    admin/images/ecshop_logo.gif
    admin/images/login.png

    2.右上角的“关于ECSHOP”

    打开admin/templates/top.htm
    删除:

  • {$lang.about}
  • 3.中部 ECSHOP 管理中心, 和底部的版权所有

    打开language/zh_cn/admin/common.php
    $_LANG['cp_home'] = 'ECSHOP 管理中心';
    $_LANG['copyright'] = '版权所有 © 2005-2009 上海商派网络科技有限公司,并保留所有权利。';