解决dede5.6出现广告图片不能继承到子类显示的问题!

网站技术 qyuef 11年前 (2011-03-03) 198次浏览 8个评论

最近在用最新版本织梦做一个小型门户的时候发现一个问题,可能是新版本的bug。在有的时候会出现把广告设置在大类显示,小类没设置就不会显示广告内容了。根据需求修改了一下广告调用的程序,需要注意的事,是用的默认表前缀。请注意使用!如果你修改过就得修改程序文件。

首先覆盖文件\include\taglib\myad.lib.php

< ?php

if(!defined('DEDEINC')) exit('Request Error!');
require_once(DEDEINC.'/taglib/mytag.lib.php');

function lib_myad(&$ctag, &$refObj)
{
	$attlist = "typeid|0,name|";
	FillAttsDefault($ctag->CAttribute->Items,$attlist);
	extract($ctag->CAttribute->Items, EXTR_SKIP);
   $typeid=$_GET['tid'];
	$body = lib_GetMyTagT($refObj, $_GET['tid'], $name, '#@__myad');
	//return "#######".$typeid;
	return $body;
}

?>

然后覆盖文件\include\taglib\mytag.lib.php

< ?php

if(!defined('DEDEINC')) exit('Request Error!');

function lib_mytag(&$ctag, &$refObj)
{
	$attlist = "typeid|0,name|,ismake|no";
	FillAttsDefault($ctag->CAttribute->Items,$attlist);
	extract($ctag->CAttribute->Items, EXTR_SKIP);

	if(trim($ismake)=='') $ismake = 'no';
	$body = lib_GetMyTagT($refObj, $typeid, $name, '#@__mytag');
	//编译
	if($ismake=='yes')
	{
		require_once(DEDEINC.'/arc.partview.class.php');
		$pvCopy = new PartView($typeid);
		$pvCopy->SetTemplet($body,"string");
		$body = $pvCopy->GetResult();
	}
	return $body;
}

function lib_GetMyTagT(&$refObj, $typeid,$tagname,$tablename)
{
	global $dsql;
	if($tagname=='') return '';
	if(trim($typeid)=='') $typeid=0;
	if( !empty($refObj->Fields['typeid']) && $typeid==0) $typeid = $refObj->Fields['typeid'];
	
	$typesql = $row = '';
	$row1=$dsql->GetOne("select topid from dede_arctype where id=$typeid");
	$topid=$row1["topid"];
	if($topid!=0){
	$typeid=$topid;
	}
	if($typeid > 0) $typesql = " And typeid=$typeid";
	$row = $dsql->GetOne("SELECT * FROM dede_myad WHERE tagname = '$tagname' AND typeid in (0,$typeid)");
	if(!is_array($row)) return '';
	//echo " Select * From dede_myad where tagname like '$tagname' $typesql";
	$nowtime = time();
	
		$body = $row['normbody'];

	
	return $body;
}
?>
喜欢 (1)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(8)个小伙伴在吐槽
  1. 哎呀,我的17fenx-减肥十万个为什么,就有问题,一直弄不明白呢。
    怎样减肥2011-03-08 16:25 回复
    • 这是由于新版本的一个bug,在广告标签模块无法获取上级栏目id,所以掉不出来
      枫叶博客2011-03-08 19:01 回复
  2. 自己倒是没碰到这个问题
    冲棒2011-03-09 06:21 回复
  3. 文章真不错,学习了!
    可乐泡咖啡2011-03-09 11:26 回复
  4. 看着挺不错的
    asics outlet2011-03-18 12:47 回复
  5. 没碰到这个问题
    asics gel nimbus2011-03-28 11:23 回复
  6. 没遇到过这个情况