发现114啦的广告管理非常不灵活
帮客户修改114啦的时候,发现广告位置都是定死的,不能添加新的广告位
特别是头部,客户要求放很多的广告,可是114啦的程序只有广告轮播功能,我都不知道怎么添加
只好去修改源码了
把广告轮播拆成N条广告
从后台可知编辑首页广告调用的是ADMIN文件夹里的mod_advise_index.php
打开查找发现这个函数advise_index_display,里面调用了mod_advert里面的update_cache_main_advert函数
打开同文件夹里的mod_advert.php查找update_cache_main_advert这个函数就是读取数据库里的广告信息
在
if (!empty($conf[‘style’]) && $conf[‘style’] == ‘code’)
{
$code = $conf[‘htmlcode’];
后面把标题参数给读出来
$conf[‘title’]=$row[‘title’];
然后找到生成JS的地方update_cache_advert_js
把header给独立出来
if ($key != ‘index_txt’ && $key != ‘page_baidu’ && $key != ‘header’)
然后自己写header的处理程序
//小货修改,重新设置顶部广告的形式
if ($key == ‘header’)
{
//echo $key.”<br>”;
$tmp = ”;
foreach ($val as $value)
{
$value[‘code’] = trim($value[‘code’]);
$tmp=”;
foreach (explode(“\r\n”, $value[‘code’]) as $value2)
{
$value2 = str_replace(array(‘”‘, ‘/’), array(‘\”‘, ‘\/’), $value2);
$tmp .= ‘document.writeln(“‘ . $value2 . ‘”);’ . “\r\n”;
}
mod_file::write(PATH_ROOT . ‘/static/js/’ . $key .’_’.$value[‘title’]. ‘.js’, $tmp);
}
}
//小货修改,重新设置顶部广告的形式
就可以生成hearder_标题名.js的形式的广告
然后调用就可以了