安装方法:
1,建立一个文件,命名为ad_makejs.php,修改JS存放路径:
| 复制代码 - <?php
- require_once(dirname(__FILE__)."/config.php");
- require_once(dirname(__FILE__)."/../include/pub_datalist.php");
- require_once(dirname(__FILE__)."/../include/inc_functi*****.php");
- setcookie("ENV_GOBACK_URL",$dedeNowurl,time()+3600,"/");
-
- function TestType($tname)
- {
- if($tname=="") return "所有栏目";
- else return $tname;
- }
-
- function TimeSetValue($ts)
- {
- if($ts==0) return "不限时间";
- else return "限时标记";
- }
-
- $sql = "Select
- #@__myad.aid,#@__myad.normbody,#@__myad.tagname,#@__arctype.typename,#@__myad.adname,#@__myad.timeset,#@__myad.endtime
- From #@__myad
- left join #@__arctype on #@__arctype.ID=#@__myad.typeid
- order by #@__myad.aid desc
- ";
-
- $dsql = new DedeSql(false);
- $dsql->SetQuery($sql);
- $dsql->Execute('aid');
- while($row = $dsql->getarray('aid'))
- {
- $filename = "../js/".$row['aid'].".js";//此处为Js存放路径和格式
- fopen($filename, w);
- $adbody = $row['normbody'];
- $adbody = str_replace('"','\"',$adbody);
- $adbody = str_replace("\r","\\r",$adbody);
- $adbody = str_replace("\n","\\n",$adbody);
- $adbody = "document.write(\"{$adbody}\");";
- $adbody = "<!--\r\n".$adbody;
- $adbody = $adbody."\r\n-->";
-
- // 首先我们要确定文件存在并且可写。
- if (is_writable($filename))
- {
- if (!$handle = fopen($filename, 'a')) {
- print "<br>不能打开文件 $filename<br>";
- exit;
- }
- // 将$adbody写入到我们打开的文件中。
- if (!fwrite($handle, $adbody)) {
- print "<br>不能写入到文件 $filename<br>";
- exit;
- }
- print "<br>成功生成 $filename<br>";
- fclose($handle);
- } else {
- print "<br>文件 $filename 不可写<br>";
- }
- }
- echo "<a href=ad_main.php>返回</a>";
- ?>
|
二,可以进入插件安装那里添加这个文件的地址,访问即可生成JS文件。但是为了便于调用静态代码,我还修改了一些模板。如下:
修改ad_edit.php
| 复制代码 - $jscode = "<script src='{$cfg_plus_dir}/ad_js.php?aid=$aid' language='javascript'></script>";
|
添加静态JS调用代码:
| 复制代码 - $jscode = "<script src='{$cfg_plus_dir}/ad_js.php?aid=$aid' language='javascript'></script>\r\n<script src='/js/$aid.js' language='javascript'></script>";
|
当然,也可以在广告主页面模板中加一条生成静态文件的链接,打开ad_main.php
添加一条管理链接:
| 复制代码 - <b> 广告管理</b> [<a href="ad_add.php"><u>增加一个新广告</u></a>] [<a href="ad_makejs.php"><u>广告静态化</u></a>]</td>
|

说下使用步骤:
1、保存楼主的代码并命名为ad_makejs.php,打开该文件,修改生成广告JS静态文件的存放路径(可在根目录新设置一个名为js的文件夹,就不需要修改这个路径了),然后存放该文件到后台管理文件夹dede/内。
2. 在后台,点击“辅助插件>>安装新插件,填入有关信息并提交确认:
插件名称:生成广告JS静态文件
作者:vus520
主程序文件:ad_makejs.php
3.在后台点击辅助插件,点击左边导航新增的“生成广告JS静态文件”,即可生成JS文件。
4.(这一步骤可做也可不做)找到dede/ad_edit.php文件中的代码:
$jscode = "<script src='{$cfg_plus_dir}/ad_js.php?aid=$aid' language='javascript'></script>";
修改为:(添加多一个静态JS调用代码)
$jscode = "<script src='{$cfg_plus_dir}/ad_js.php?aid=$aid' language='javascript'></script>\r\n<script src='/js/$aid.js' language='javascript'></script>";
5.把模板中原来的广告调用代码:
<script src='/plus/ad_js.php?aid=1' language='javascript'></script>
修改为:
<script src='/js/1.js' language='javascript'></script>(其中的数字是根据广告编号改变的)
即可。如果不改,就是使用原来的动态的JS调用广告。