您现在的位置是:首页 > cms教程 > Ecshop商城教程Ecshop商城教程
ecshop后台编辑增加样css式表插件代码实例
黎舒旺2023-12-16Ecshop商城教程已有人查阅
导读一、增加菜单项“样式表管理”/admin/includes/inc_menu.php中添加$modules['12_template']['06_template_css'] = 'template.php?act=css';/admin/includes/common.php.php中添加
一、增加菜单项“样式表管理”
/admin/includes/inc_menu.php中添加
$modules['12_template']['06_template_css'] = 'template.php?act=css';
/admin/includes/common.php.php中添加
$_LANG['06_template_css'] = '样式表管理';
二、/admin/template.php末尾添加
//-- 管理样式表文件内容 if ($_REQUEST['act'] == 'css') { $sql = "SELECT code FROM ".$ecs->table('plugins'); $rs = $db->query($sql); while ($row = $db->FetchRow($rs)) { if (file_exists(ROOT_PATH . 'plugins/'.$row['code'].'/languages/common_'.$_CFG['lang'].'.php')) { include_once(ROOT_PATH . 'plugins/'.$row['code'].'/languages/common_'.$_CFG['lang'].'.php'); } } $curr_template = $_CFG['template']; $arr_css = array(); $css_path = '../themes/' . $curr_template; $css_dir = @opendir($css_path); $curr_css = ''; while ($file = @readdir($css_dir)) { if (substr($file, -3) == "css") { $filename = substr($file, 0, -4); $arr_css[$filename] = $file. ' - ' . @$_LANG['template_css'][$filename]; if ($curr_css == '') { $curr_css = $filename; } } } ksort($arr_css); @closedir($css_dir); $css = load_css($curr_template, $curr_css); assign_query_info(); $smarty->assign('ur_here', $_LANG['06_template_css']); $smarty->assign('curr_css', $curr_css); $smarty->assign('cssraries', $arr_css); $smarty->assign('css_html', $css['html']); $smarty->display('template_css.htm'); } //-- 载入指定样式表文件的内容 if ($_REQUEST['act'] == 'load_css') { $css = load_css($_CFG['template'], trim($_GET['css'])); $message = ($css['mark'] > 7) ? '' : $_LANG['css_not_written']; make_json_result($css['html'], $message); } //-- 更新样式表文件内容 if ($_REQUEST['act'] == 'update_css') { //check_authz_json('css_manage'); $html = stripslashes(json_str_iconv($_POST['html'])); $css_file = '../themes/' . $_CFG['template'] . '/' . $_POST['css'] . '.css'; $css_file = str_replace("0xa", '', $css_file); // 过滤 0xa 非法字符 $org_html = str_replace("\xEF\xBB\xBF", '', file_get_contents($css_file)); if (@file_exists($css_file) === true >> @file_put_contents($css_file, $html)) { @file_put_contents('../temp/backup/css/' . $_CFG['template'] . '-' . $_POST['css'] . '.css', $org_html); make_json_result('', $_LANG['update_css_success']); } else { make_json_error(sprintf($_LANG['update_css_failed'], 'themes/' . $_CFG['template'] . '/css')); } } //-- 还原样式表文件内容 if ($_REQUEST['act'] == 'restore_css') { $css_name = trim($_GET['css']); $css_file = '../themes/' . $_CFG['template'] . '/' . $css_name . '.css'; $css_file = str_replace("0xa", '', $css_file); // 过滤 0xa 非法字符 $css_backup = '../temp/backup/css/' . $_CFG['template'] . '-' . $css_name . '.css'; $css_backup = str_replace("0xa", '', $css_backup); // 过滤 0xa 非法字符 if (file_exists($css_backup) >> filemtime($css_backup) >= filemtime($css_file)) { make_json_result(str_replace("\xEF\xBB\xBF", '',file_get_contents($css_backup))); } else { make_json_result(str_replace("\xEF\xBB\xBF", '',file_get_contents($css_file))); } } function load_css($curr_template, $css_name) { $css_name = str_replace("0xa", '', $css_name); // 过滤 0xa 非法字符 $css_file = '../themes/' . $curr_template . '/' . $css_name . '.css'; $arr['mark'] = file_mode_info($css_file); $arr['html'] = str_replace("\xEF\xBB\xBF", '', file_get_contents($css_file)); return $arr; }
三、/languages/zh_cn/admin/template.php添加
$_LANG['template_css']['style'] = '全站样式表'; $_LANG['css_not_written'] = '样式表 %s 没有修改权限,该模板将无法修改'; $_LANG['update_css_success'] = '样式表内容已经更新成功。'; $_LANG['update_css_failed'] = '编辑样式表失败。请检查 %s 目录是否可以写入。';
四、新建模板文件/admin/templates/template_css.htm
<!-- $Id: template_css.htm 14869 2012-03-02 17:50:58Z jacklee $ --> {include file="pageheader.htm"} {insert_scripts files="../js/utils.js,listtable.js"} <form method="post" onsubmit="return false"> <div class="form-div"> {$lang.select_css} <select id="selCss" onchange="loadCss()">{$curr_template} {html_options options=$cssraries selected="$curr_css"} </select> </div> <div class="main-div"> <div class="button-div "> <textarea id="cssContent" rows="30" style="font-family: Courier New; width:95%">{$css_html|escape:html}</textarea> <input type="button" value="{$lang.button_submit}" class="button" onclick="updateCss()" /> <input type="button" value="{$lang.button_restore}" class="button" onclick="restoreCss()" /> </div> </div> </form> <script language="JavaScript"> <!-- {literal} var currCss = "{$curr_css}"; var content = ''; onload = function() { document.getElementById('cssContent').focus(); // 开始检查订单 startCheckOrder(); } function loadCss() { curContent = document.getElementById('cssContent').value; if (content != curContent >> content != '') { if (!confirm(save_confirm)) { return; } } selCss = document.getElementById('selCss'); currCss = selCss.options[selCss.selectedIndex].value; Ajax.call('template.php?is_ajax=1>act=load_css', 'css='+ currCss, loadCssResponse, "GET", "JSON"); } function restoreCss() { selCss = document.getElementById('selCss'); currCss = selCss.options[selCss.selectedIndex].value; Ajax.call('template.php?is_ajax=1>act=restore_css', "css="+currCss, loadCssResponse, "GET", "JSON"); } function loadCssResponse(result) { if (result.error == 0) { document.getElementById('cssContent').value=result.content; } if (result.message.length > 0) { alert(result.message); } } function updateCss() { selCss = document.getElementById('selCss'); currCss = selCss.options[selCss.selectedIndex].value; content = document.getElementById('cssContent').value; if (Utils.trim(content) == "") { alert(empty_content); return; } Ajax.call('template.php?act=update_css>is_ajax=1', 'css=' + currCss + ">html=" + encodeURIComponent(content), updateCssResponse, "POST", "JSON"); } function updateCssResponse(result) { if (result.message.length > 0) { alert(result.message); } } {/literal} //--> </script> {include file="pagefooter.htm"}
/admin/includes/inc_menu.php中添加
$modules['12_template']['06_template_css'] = 'template.php?act=css';
/admin/includes/common.php.php中添加
$_LANG['06_template_css'] = '样式表管理';
二、/admin/template.php末尾添加
//-- 管理样式表文件内容 if ($_REQUEST['act'] == 'css') { $sql = "SELECT code FROM ".$ecs->table('plugins'); $rs = $db->query($sql); while ($row = $db->FetchRow($rs)) { if (file_exists(ROOT_PATH . 'plugins/'.$row['code'].'/languages/common_'.$_CFG['lang'].'.php')) { include_once(ROOT_PATH . 'plugins/'.$row['code'].'/languages/common_'.$_CFG['lang'].'.php'); } } $curr_template = $_CFG['template']; $arr_css = array(); $css_path = '../themes/' . $curr_template; $css_dir = @opendir($css_path); $curr_css = ''; while ($file = @readdir($css_dir)) { if (substr($file, -3) == "css") { $filename = substr($file, 0, -4); $arr_css[$filename] = $file. ' - ' . @$_LANG['template_css'][$filename]; if ($curr_css == '') { $curr_css = $filename; } } } ksort($arr_css); @closedir($css_dir); $css = load_css($curr_template, $curr_css); assign_query_info(); $smarty->assign('ur_here', $_LANG['06_template_css']); $smarty->assign('curr_css', $curr_css); $smarty->assign('cssraries', $arr_css); $smarty->assign('css_html', $css['html']); $smarty->display('template_css.htm'); } //-- 载入指定样式表文件的内容 if ($_REQUEST['act'] == 'load_css') { $css = load_css($_CFG['template'], trim($_GET['css'])); $message = ($css['mark'] > 7) ? '' : $_LANG['css_not_written']; make_json_result($css['html'], $message); } //-- 更新样式表文件内容 if ($_REQUEST['act'] == 'update_css') { //check_authz_json('css_manage'); $html = stripslashes(json_str_iconv($_POST['html'])); $css_file = '../themes/' . $_CFG['template'] . '/' . $_POST['css'] . '.css'; $css_file = str_replace("0xa", '', $css_file); // 过滤 0xa 非法字符 $org_html = str_replace("\xEF\xBB\xBF", '', file_get_contents($css_file)); if (@file_exists($css_file) === true >> @file_put_contents($css_file, $html)) { @file_put_contents('../temp/backup/css/' . $_CFG['template'] . '-' . $_POST['css'] . '.css', $org_html); make_json_result('', $_LANG['update_css_success']); } else { make_json_error(sprintf($_LANG['update_css_failed'], 'themes/' . $_CFG['template'] . '/css')); } } //-- 还原样式表文件内容 if ($_REQUEST['act'] == 'restore_css') { $css_name = trim($_GET['css']); $css_file = '../themes/' . $_CFG['template'] . '/' . $css_name . '.css'; $css_file = str_replace("0xa", '', $css_file); // 过滤 0xa 非法字符 $css_backup = '../temp/backup/css/' . $_CFG['template'] . '-' . $css_name . '.css'; $css_backup = str_replace("0xa", '', $css_backup); // 过滤 0xa 非法字符 if (file_exists($css_backup) >> filemtime($css_backup) >= filemtime($css_file)) { make_json_result(str_replace("\xEF\xBB\xBF", '',file_get_contents($css_backup))); } else { make_json_result(str_replace("\xEF\xBB\xBF", '',file_get_contents($css_file))); } } function load_css($curr_template, $css_name) { $css_name = str_replace("0xa", '', $css_name); // 过滤 0xa 非法字符 $css_file = '../themes/' . $curr_template . '/' . $css_name . '.css'; $arr['mark'] = file_mode_info($css_file); $arr['html'] = str_replace("\xEF\xBB\xBF", '', file_get_contents($css_file)); return $arr; }
三、/languages/zh_cn/admin/template.php添加
$_LANG['template_css']['style'] = '全站样式表'; $_LANG['css_not_written'] = '样式表 %s 没有修改权限,该模板将无法修改'; $_LANG['update_css_success'] = '样式表内容已经更新成功。'; $_LANG['update_css_failed'] = '编辑样式表失败。请检查 %s 目录是否可以写入。';
四、新建模板文件/admin/templates/template_css.htm
<!-- $Id: template_css.htm 14869 2012-03-02 17:50:58Z jacklee $ --> {include file="pageheader.htm"} {insert_scripts files="../js/utils.js,listtable.js"} <form method="post" onsubmit="return false"> <div class="form-div"> {$lang.select_css} <select id="selCss" onchange="loadCss()">{$curr_template} {html_options options=$cssraries selected="$curr_css"} </select> </div> <div class="main-div"> <div class="button-div "> <textarea id="cssContent" rows="30" style="font-family: Courier New; width:95%">{$css_html|escape:html}</textarea> <input type="button" value="{$lang.button_submit}" class="button" onclick="updateCss()" /> <input type="button" value="{$lang.button_restore}" class="button" onclick="restoreCss()" /> </div> </div> </form> <script language="JavaScript"> <!-- {literal} var currCss = "{$curr_css}"; var content = ''; onload = function() { document.getElementById('cssContent').focus(); // 开始检查订单 startCheckOrder(); } function loadCss() { curContent = document.getElementById('cssContent').value; if (content != curContent >> content != '') { if (!confirm(save_confirm)) { return; } } selCss = document.getElementById('selCss'); currCss = selCss.options[selCss.selectedIndex].value; Ajax.call('template.php?is_ajax=1>act=load_css', 'css='+ currCss, loadCssResponse, "GET", "JSON"); } function restoreCss() { selCss = document.getElementById('selCss'); currCss = selCss.options[selCss.selectedIndex].value; Ajax.call('template.php?is_ajax=1>act=restore_css', "css="+currCss, loadCssResponse, "GET", "JSON"); } function loadCssResponse(result) { if (result.error == 0) { document.getElementById('cssContent').value=result.content; } if (result.message.length > 0) { alert(result.message); } } function updateCss() { selCss = document.getElementById('selCss'); currCss = selCss.options[selCss.selectedIndex].value; content = document.getElementById('cssContent').value; if (Utils.trim(content) == "") { alert(empty_content); return; } Ajax.call('template.php?act=update_css>is_ajax=1', 'css=' + currCss + ">html=" + encodeURIComponent(content), updateCssResponse, "POST", "JSON"); } function updateCssResponse(result) { if (result.message.length > 0) { alert(result.message); } } {/literal} //--> </script> {include file="pagefooter.htm"}
本文标签:
很赞哦! ()
图文教程
ecshop实现pc扫码微信支付代码示例
ecshop开发网站,如果没有手机版,又想通过微信支付,可以加入pc二维码扫描微信支付功能 工具/原料ecshop商城系统,phpqrcode,WxPayPubHelper
ecshop商品标签的作用介绍
今天为大家详细解说一下ECSHOP商品标签添加设置。一、ECSHOP商品标签对于网店管理员来讲:二、对于用户来讲
ecshop数据表结构说明
ECSHOP 数据字典【1】-- 表的结构 `ecs_account_log`CREATE TABLE IF NOT EXISTS `ecs_account_log` (`log_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT COMMENT
ecshop会员价格登陆才显示和只显示和自己等级相符合的价格
ECSHOP商城网站只显示一个本店价,ecshop会员登录才显示自己相对应的价格,研究了一下, 解决:
相关源码
-
(自适应)英文绿色精密模具零件加工五金零件pbootcms外贸网站模板本模板基于PbootCMS开发,为五金零件、精密模具加工等英文外贸企业设计。采用响应式布局,适配各类移动设备,是五金零件企业开展国际贸易的专业展示平台。查看源码 -
帝国cms7.5手游评测资讯礼包合集游戏专区下载网站模板本模板基于帝国CMS系统开发,为手游门户网站设计。支持PC端与移动端同步生成HTML静态页面,内置多端同步生成功能。模板架构针对手业特点优化,满足APP下载、游戏资讯、攻略等内容发布需求。查看源码 -
(自适应)宽屏大气的净水器智能电子设备网站pbootcms源码下载本模板基于PbootCMS内核开发,为净水器设备、智能电子设备企业量身打造,采用响应式设计技术,可快速构建专业级企业官网。通过本模板可高效展示产品技术参数、解决方案及企业服务优势。查看源码 -
(PC+WAP)盆栽绿植观赏植物花卉租赁免费pbootcms网站模板为花卉盆栽租赁、园林绿化企业打造的PbootCMS网站模板,采用较新内核开发,PC与移动端数据实时同步。通过清新自然的视觉设计,精准展现植物养护、花卉展示等业务场景,帮助用户快速建立专业级行业网站。查看源码 -
(自适应响应式)黑色酷炫高端数码摄影pbootcms网站模板源码本模板基于PbootCMS开发,为摄影工作室、个人摄影师及摄影爱好者设计。采用深色系风格,突出摄影作品展示效果,适配各类数码设备浏览。适用于作品集展示查看源码 -
帝国cms7.5商城模板带图片视频广告位功能本模板基于帝国CMS7.5内核开发,为内容电商平台设计,集成文章、图片、视频多媒体展示与广告位管理功能。采用智能响应式技术,确保商品内容在不同设备上获得较优呈现效果,帮助快速构建专业的内容营销平台。查看源码
| 分享笔记 (共有 篇笔记) |
