Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

仿D4广告功能(真正的后台控制)!!<<写入后台>>已更新<11/1 22:29>

[复制链接]
爱好者 发表于 2005-10-29 17:00:18 | 显示全部楼层
支持你哦!
回复

使用道具 举报

 楼主| Magic.factory 发表于 2005-10-29 17:01:21 | 显示全部楼层
Thank you sir!
回复

使用道具 举报

 楼主| Magic.factory 发表于 2005-10-29 17:38:42 | 显示全部楼层

纯支持。

有待开发。
回复

使用道具 举报

 楼主| Magic.factory 发表于 2005-10-29 20:05:07 | 显示全部楼层
我照你ad_setting.php里的代码改了一下。就这效果。还行吧.跟联盟论坛很像
回复

使用道具 举报

 楼主| Magic.factory 发表于 2005-10-29 20:06:28 | 显示全部楼层
这个不是PHOTOSHOP效果.这是改出来的。
回复

使用道具 举报

 楼主| Magic.factory 发表于 2005-10-30 15:54:27 | 显示全部楼层
插件名称:仿4.0官方广告后台完美控制正式版FOR 2.5F/sp1
作者: .League
修改模板: admin/menu.php,admin/misc.php, admincp.php,
增加文件: admin/tpl/misc_forumadv.php
技术支持: LEAGUE 论坛
安装难度:易
功能: 类似Discuz!4.0官方..广告横幅条
演示: LEAGUE 论坛
已经经过测试
安装方法:

一、打开后台,升级数据库,输入:


  1. CREATE TABLE `cdb_forumadvs` (
  2.   `id` smallint(6) unsigned NOT NULL auto_increment,
  3.   `displayorder` tinyint(3) NOT NULL default '0',
  4.   `name` varchar(255) NOT NULL default '',
  5.   `url` varchar(255) NOT NULL default '',
  6.   `note` varchar(255) NOT NULL default '',
  7.   PRIMARY KEY  (`id`)
  8. ) TYPE=MyISAM AUTO_INCREMENT=7 ;
复制代码


二、打开include/common.php文件,找到最末尾的:

  1. ?>
复制代码

在上面加上:

  1. //广告后台完美控制正式版FOR 2.5 by LEAGUE
  2. function ad_show() {
  3.         global $db;
  4.         $ad_count_rs = $db->query("SELECT COUNT(*) FROM cdb_forumadvs");
  5.         $ad_count = $db->result($ad_count_rs,0);
  6.         $ad_text_rs = $db->query("SELECT * FROM cdb_forumadvs");
  7.         $text .= '<br><table cellspacing="1" cellpadding="' . TABLESPACE . '" width="' . TABLEWIDTH . '" align="center" class="tableborder">';
  8.         if($ad_count == 0) {
  9.                 return '';
  10.         } else if($ad_count == 1) {
  11.                 $ad_text = $db->fetch_array($ad_text_rs);
  12.                 $text .= '<tr align="center" class="altbg2">';
  13.                 $text .= '<td width="100%" height="24"> <a href="' . $ad_text['url'] . '" title="' . $ad_text['note'] . '" target="_blank">' . $ad_text['name'] . '</a></td>';
  14.                 $text .= '</tr>';
  15.         } else if($ad_count == 2) {
  16.                 $text .= '<tr align="center" class="altbg2">';
  17.                 while($ad_text = $db->fetch_array($ad_text_rs)) {
  18.                         $text .= '<td width="50%" height="24"> <a href="' . $ad_text['url'] . '" title="' . $ad_text['note'] . '" target="_blank">' . $ad_text['name'] . '</a></td>';
  19.                 }
  20.                 $text .= '</tr>';
  21.         } else if($ad_count == 3) {
  22.                  $text .= '<tr align="center" class="altbg2">';
  23.                 while($ad_text = $db->fetch_array($ad_text_rs)) {
  24.                         if($num == 3) {
  25.                                 $text .= '<td width="34%" height="24"> <a href="' . $ad_text['url'] . '" title="' . $ad_text['note'] . '" target="_blank">' . $ad_text['name'] . '</a></td>';
  26.                         } else {
  27.                                 $text .= '<td width="33%" height="24"> <a href="' . $ad_text['url'] . '" title="' . $ad_text['note'] . '" target="_blank">' . $ad_text['name'] . '</a></td>';
  28.                         }
  29.                         $num++;
  30.                 }
  31.                 $text .= '</tr>';
  32.         } else if($ad_count == 4) {
  33.                  $text .= '<tr align="center" class="altbg2">';
  34.                 while($ad_text = $db->fetch_array($ad_text_rs)) {
  35.                         $text .= '<td width="25%" height="24"> <a href="' . $ad_text['url'] . '" title="' . $ad_text['note'] . '" target="_blank">' . $ad_text['name'] . '</a></td>';
  36.                 }
  37.                 $text .= '</tr>';
  38.         } else if($ad_count > 4) {
  39.                 if(($ad_count % 4) == 0) {
  40.                         $hrnum = floor($ad_count / 4);
  41.                 } else {
  42.                         $hrnum = floor($ad_count / 4);
  43.                         $hrnum += 1;
  44.                 }
  45.                 while($ad_text = $db->fetch_array($ad_text_rs)) {
  46.                         if($num == 0) {
  47.                                  $text .= '<tr align="center" class="altbg2">';
  48.                                 $text .= '<td width="25%" height="24"> <a href="' . $ad_text['url'] . '" title="' . $ad_text['note'] . '" target="_blank">' . $ad_text['name'] . '</a></td>';
  49.                                 $num++;
  50.                         } else if($num == 3) {
  51.                                 $text .= '<td width="25%" height="24"> <a href="' . $ad_text['url'] . '" title="' . $ad_text['note'] . '" target="_blank">' . $ad_text['name'] . '</a></td>';
  52.                                 $text .= '</tr>';
  53.                                 $num = 0;
  54.                         } else {
  55.                                 $text .= '<td width="25%" height="24"> <a href="' . $ad_text['url'] . '" title="' . $ad_text['note'] . '" target="_blank">' . $ad_text['name'] . '</a></td>';
  56.                                 $num++;
  57.                         }
  58.                 }
  59.         }
  60.         if(substr($text,strlen($text) - 5,5) == '</tr>') {
  61.                 $text .= '</table>';
  62.         } else {
  63.                 $text .= '</tr></table>';
  64.         }
  65.         return $text;
  66. }
  67. $ad = ad_show();
  68. //END
复制代码

三、修改模板文件index.htm,以便广告能在首页显示。
找:

  1. <!--{if !empty($newpmexists)}-->
  2.         {template pmprompt}
  3. <!--{/if}-->
复制代码



在上面加上:

  1. $ad
复制代码

四、修改模板文件forumdisplay.htm,以便广告能在浏览板块时显示。
找:
  1.   
  2. <!--{if !empty($newpmexists)}-->
  3.         {template pmprompt}
  4. <!--{/if}-->
复制代码

在上面加上:
  1.   
  2. $ad
复制代码

五、修改模板文件viewthread.htm,以便广告能在浏览帖子时显示。
找:

  1. <!--{if $newpmexists}-->
  2.         {template pmprompt}
  3. <!--{/if}-->
复制代码

在上面加上:

  1. $ad
复制代码

======================================================
引用了魔焰男孩的代码。感谢他
======================================================
接下来
六、 编辑admincp.lang.php



  1.         'forumlinks_edit' => '联盟论坛编辑',
  2.         'forumlinks_edit_name' => '论坛名称',
  3.         'forumlinks_edit_url' => '论坛 URL',
  4.         'forumlinks_edit_note' => '文字说明',
  5.         'forumlinks_edit_logo' => 'logo 地址(可选)',
复制代码

下加上

  1.         'forumadvs_edit' => '论坛广告编辑',
  2.         'forumadvs_edit_name' => '广告名称',
  3.         'forumadvs_edit_url' => '广告 URL',
  4.         'forumadvs_edit_note' => '文字说明',
复制代码

找到

  1.         'menu_misc_links' => '联盟论坛',
复制代码

下面加上

  1.         'menu_misc_advlist' => '论坛广告',
复制代码

找到

  1.         'forumlinks_succeed' => '联盟论坛成功更新。',
复制代码

在下面加上

  1.         'forumadvs_succeed' => '论坛广告成功更新。',
复制代码

找到

  1.         'forumlinks_tips' => '<ul><li>如果您不想在首页显示联盟论坛,请把已有各项删除即可。</ul><ul><li>未填写文字说明的项目将以紧凑型显示。</ul>',
复制代码

下面加上

  1.         'forumadvs_tips' => '<ul><li>如果您不想显示论坛广告,请把已有各项删除即可。</ul><ul><li>未填写文字说明的项目将.............。</ul>',
复制代码

Sorry...
打开admincp.php


  1. $action == 'forumlinks'
复制代码

后添加

  1. || $action == 'forumadvs'
复制代码

增加新文件misc_forumadv.php 放至 admin/tpl目录下

  1. <?php  if(!defined('IN_ADMINCP')) exit('Access Denied'); ?>
  2. <table cellspacing="0" cellpadding="0" border="0" width="95%" align="center">
  3. <tr><td bgcolor="<?=BORDERCOLOR?>">
  4. <table border="0" cellspacing="<?=BORDERWIDTH?>" cellpadding="<?=TABLESPACE?>" width="100%">
  5. <tr class="header"><td><?=$lang['tips']?></td></tr>
  6. <tr bgcolor="<?=ALTBG1?>"><td>
  7. <br><?=$lang['forumadvs_tips']?>
  8. </td></tr></table></td></tr></table>

  9. <br><form method="post" action="admincp.php?action=forumadvs">
  10. <input type="hidden" name="formhash" value="<?=FORMHASH?>">
  11. <table cellspacing="0" cellpadding="0" border="0" width="95%" align="center">
  12. <tr><td        bgcolor="<?=BORDERCOLOR?>">
  13. <table border="0" cellspacing="<?=BORDERWIDTH?>" cellpadding="<?=TABLESPACE?>" width="100%">
  14. <tr class="header"><td colspan="6"><?=$lang['forumadvs_edit']?></td></tr>
  15. <tr align="center" class="category">
  16. <td><input type="checkbox" name="chkall" class="category" onclick="checkall(this.form)"><?=$lang['del']?></td>
  17. <td><?=$lang['display_order']?></td><td><?=$lang['forumadvs_edit_name']?></td><td><?=$lang['forumadvs_edit_url']?></td><td><?=$lang['forumadvs_edit_note']?></td></tr>
  18. <?=$forumadvs?>
  19. <tr bgcolor="<?=ALTBG2?>"><td colspan="6" height="1"></td></tr>
  20. <tr bgcolor="<?=ALTBG1?>" align="center">
  21. <td><?=$lang['add_new']?></td>
  22. <td><input type="text" size="3"        name="newdisplayorder"></td>
  23. <td><input type="text" size="15" name="newname"></td>
  24. <td><input type="text" size="15" name="newurl"></td>
  25. <td><input type="text" size="15" name="newnote"></td>
  26. </tr></table></td></tr></table><br>
  27. <center><input type="submit" name="forumadvsubmit" value="<?=$lang['submit']?>"></center></form></td></tr>
复制代码

打开admin/menu.php <<SORRY.人太累写错了。现在更新过来了。>>
找到

  1. array('name' => $lang['menu_misc_links'], 'url' => 'admincp.php?action=forumlinks')));
复制代码

替换为

  1. array('name' => $lang['menu_misc_links'], 'url' => 'admincp.php?action=forumlinks'),
  2. array('name' => $lang['menu_misc_advlist'], 'url' => 'admincp.php?action=forumadvs')));
复制代码

打开admin/misc.php 在后
  1. } elseif($action == 'forumlinks') {
  2. .............................
  3.                 cpmsg('forumlinks_succeed', 'admincp.php?action=forumlinks');

  4.         }
复制代码

添加

  1. } elseif($action == 'forumadvs') {

  2.         if(!submitcheck('forumadvsubmit')) {

  3.                 $forumadvs = '';
  4.                 $query = $db->query("SELECT * FROM cdb_forumadvs ORDER BY displayorder");
  5.                 while($forumadv = $db->fetch_array($query)) {
  6.                         $forumadvs .= "<tr bgcolor="".ALTBG2."" align="center">\n".
  7.                                 "<td bgcolor="".ALTBG1.""><input type="checkbox" name="delete[]" value="$forumadv[id]"></td>\n".
  8.                                 "<td bgcolor="".ALTBG2.""><input type="text" size="3" name="displayorder[$forumadv[id]]" value="$forumadv[displayorder]"></td>\n".
  9.                                 "<td bgcolor="".ALTBG1.""><input type="text" size="15" name="name[$forumadv[id]]" value="$forumadv[name]"></td>\n".
  10.                                 "<td bgcolor="".ALTBG2.""><input type="text" size="15" name="url[$forumadv[id]]" value="$forumadv[url]"></td>\n".
  11.                                 "<td bgcolor="".ALTBG1.""><input type="text" size="15" name="note[$forumadv[id]]" value="$forumadv[note]"></td></tr>\n";
  12.                 }
  13.                 include CP_TPL.'misc_forumadv.php';

  14.         } else {

  15.                 if($ids = implode_ids( $delete )) {
  16.                         $db->query("DELETE FROM        cdb_forumadvs WHERE        id IN ($ids)");
  17.                 }

  18.                 if(is_array($name)) {
  19.                         foreach($name as $id =>        $val) {
  20.                                 $db->query("UPDATE cdb_forumadvs SET displayorder='$displayorder[$id]', name='$name[$id]', url='$url[$id]', note='$note[$id]' WHERE id='$id'");
  21.                         }
  22.                 }

  23.                 if($newname != '') {
  24.                         $db->query("INSERT INTO        cdb_forumadvs (displayorder, name, url, note)        VALUES ('$newdisplayorder', '$newname',        '$newurl', '$newnote')");
  25.                 }

  26.                 updatecache('forumadvs');
  27.                 cpmsg('forumadvs_succeed', 'admincp.php?action=forumadvs');

  28.         }
复制代码

图片演示

[ 本帖最后由 Magic.factory 于 2005-11-22 19:39 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

魔焰男孩 发表于 2005-10-30 15:59:59 | 显示全部楼层
Thanks for you.
回复

使用道具 举报

fhg007 发表于 2005-10-30 16:03:22 | 显示全部楼层
改的东西好多呀
回复

使用道具 举报

 楼主| Magic.factory 发表于 2005-10-30 16:05:14 | 显示全部楼层
.呵呵。我觉得....我个人认为.还有一点不好。..不能编辑.. .不过也没事. 和DZ联盟论坛一样的用。..呵
回复

使用道具 举报

 楼主| Magic.factory 发表于 2005-10-30 16:06:03 | 显示全部楼层

回复 #28 fhg007 的帖子

哪里多。 也就 2 .3个文件嘛
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2025-1-22 09:14 , Processed in 0.034663 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表