900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 分享一个自己写的wordpress广告位管理插件

分享一个自己写的wordpress广告位管理插件

时间:2024-01-07 09:03:33

相关推荐

分享一个自己写的wordpress广告位管理插件

<?php/*Plugin Name: 广告位管理Plugin URI: Description: 更友善的管理广告位省去了改代码的麻烦Version: gdadsen1346Author: 邵保杰Author URI: */function gd_add($name) {global $wpdb,$table_prefix;$table_name = $table_prefix . "adsen";$sql = 'select * from '.$table_name.' where ad_name = "'.$name.'"';if($gdinfo = $wpdb->get_results($sql)){$ad_code = $gdinfo[0]->ad_code;}else{$ad_code = '该广告位尚未登记';}return $ad_code;}register_activation_hook(__FILE__,'my_wp_plugins_install');/* 注册激活插件时要调用的函数 */register_deactivation_hook( __FILE__, 'my_wp_plugins_remove' );/* 注册停用插件时要调用的函数 */function my_wp_plugins_install() {global $wpdb,$table_prefix;$table_name = $table_prefix . "adsen";if($wpdb->get_var("show tables like '$table_name'") != $table_name){/* 在数据库的 wp_options 表中添加一条记录,第二个参数为存储的值 */$sql = 'CREATE TABLE IF NOT EXISTS `wp_adsen` (`id` int(11) NOT NULL auto_increment,`ad_name` varchar(200) default NULL,`ad_code` text,`ad_bei` varchar(200) default NULL,UNIQUE KEY `id` (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;'; require_once(ABSPATH . 'wp-admin/upgrade-functions.php');dbDelta($sql);} }function my_wp_plugins_remove() {global $wpdb,$table_prefix;$table_name = $table_prefix . "adsen";if($wpdb->get_var("show tables like '$table_name'")== $table_name){$sql = 'DROP TABLE `'.$table_name.'`';$wpdb->query($sql);} }if( is_admin() ) {//判断是否在 WordPress 后台add_action('admin_menu', 'my_wp_plugins_menu');//添加菜单}function my_wp_plugins_menu() {add_options_page('广告位管理', '广告位管理', 'administrator','my_wp_plugins', 'plugins_option_menu');//在设置栏下添加菜单,与add_submenu_page添加效果相同,只是wordpress提供的方便形式}function PAPI_GetSafeParam($pi_strName, $pi_Def = "", $pi_iType = XH_PARAM_TXT){if ( isset($_GET[$pi_strName]) ) $t_Val = trim($_GET[$pi_strName]);else if ( isset($_POST[$pi_strName]))$t_Val = trim($_POST[$pi_strName]);else return $pi_Def;// INTif ( XH_PARAM_INT == $pi_iType){if (is_numeric($t_Val))return $t_Val;elsereturn $pi_Def;}// String$t_Val = str_replace("&", "&",$t_Val); $t_Val = str_replace("<", "<",$t_Val);$t_Val = str_replace(">", ">",$t_Val);if ( get_magic_quotes_gpc() ){$t_Val = str_replace("\\\"", """,$t_Val);$t_Val = str_replace("\\''", "'",$t_Val);}else{$t_Val = str_replace("\"", """,$t_Val);$t_Val = str_replace("'", "'",$t_Val);}return $t_Val;}function LastUrl(){ header("Location: ".$_SERVER ['HTTP_REFERER' ]);// return $_SERVER ['HTTP_REFERER' ];}function plugins_option_menu(){?><div><h2>广告位管理</h2><form method="post" action="#"><table width="50%" border="0" cellspacing="0" cellpadding="0"><tr><td width="21%">广告位名称</td><td width="79%"><input type="text" name="ad_name" value=""/> </td></tr><tr><td>尺寸:</td><td><input type="text" name="ad_bei" value=""/> </td></tr><tr><td>广告位代码:</td><td><textarea name="ad_code" style="width:400px; height:60px"></textarea></td></tr><tr><td colspan="2"> <input type="hidden" name="action" value="update" /><!-- 要存的form控件名 = 此处的value值 = wp_options表option_name字段值。多个form控件名在value值中用 , 分开--><input type="hidden" name="page_options" value="my_wp_plugins_text,my_wp_plugins_text2" /><input type="submit" name="submit" value="保存设置" class="button-primary" /></td></tr></table></form><table width="100%" class="widefat"><tr align="center" style="line-height:25px;"><td width="2%">id</td><td width="9%">广告位</td><td width="10%">尺寸</td><td width="46%">代码</td><td width="16%">前台引用</td><td width="17%">操作</td></tr><?phpglobal $wpdb,$table_prefix;$table_name = $table_prefix."adsen";$sql = 'select * from '.$table_name.'';$info = $wpdb->get_results($sql); for($i=0;$i<count($info);$i++){ ?><form action="#" method="post"><tr align="center" valign="middle" style="line-height:30px;"><td><?=$info[$i]->id?></td><td><?=$info[$i]->ad_name?></td><td><input type="text" name="ad_bei" value="<?=$info[$i]->ad_bei?>"/></td><td><input type="hidden" name="id" value="<?=$info[$i]->id?>"> <textarea name="ad_code" style="width:500px; height:30px"><?=$info[$i]->ad_code?></textarea></td><td><input type="text" style="width:200px" name="ad_codehtml" readonly value="<?="<?=gd_add('".$info[$i]->ad_name."')?>"?>"/></td><td> <input type="submit" name="submit_upda" value="确定" class="button-primary" /> | <input type="submit" name="submit_del" value="删除" class="button-primary" onClick="return confirm('确定要删除吗')"/></td></tr></form><?php}?></table></div><?php} global $wpdb,$table_prefix;$table_name = $table_prefix."adsen";$data['ad_name'] = PAPI_GetSafeParam('ad_name','',XH_PARAM_TXT);$data['ad_code'] = PAPI_GetSafeParam('ad_code','',XH_PARAM_TXT);$data['ad_bei'] = PAPI_GetSafeParam('ad_bei','',XH_PARAM_TXT);$data['id'] = PAPI_GetSafeParam('id',0,XH_PARAM_INT);if($_POST['submit']=='保存设置'){$sql = "insert into $table_name (ad_name,ad_code,ad_bei) values ('".$data['ad_name']."','".$data['ad_code']."','".$data['ad_bei']."')";if($wpdb->query($sql)){LastUrl();}else{echo 'sql执行错误'; }}if($_POST['submit_upda']=='确定'){//echo 123;$sql = 'update '.$table_name.' set ad_code="'.$data['ad_code'].'" ,ad_bei = "'.$data['ad_bei'].'" where id = '.$data['id'];if($wpdb->query($sql)){LastUrl();}else{echo 'sql执行错误'; };}if($_POST['submit_del']){$sql = 'delete from '.$table_name.' where id ='.$data['id'];if($wpdb->query($sql)){LastUrl();}else{echo 'sql执行错误'; };}?>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。