ecshop 默认只有商品名称有样式,为了能让文章也有特色的标题,开发以下插件为文章标题加样式
文章标题加样式修改:1、ALTER TABLE `ecs_article` ADD `title_style` VARCHAR( 60 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '+'2、languages\zh_cn\admin\article.php 加入语言//文章标题加样式 by neo$_LANG['select_font'] = '字体样式';$_LANG['font_styles'] = array('strong' => '加粗', 'em' => '斜体', 'u' => '下划线', 'strike' => '删除线');$_LANG['js_languages']['cancel_color'] = '无样式';3、admin\js\colorselector.js 复制一个,改名 colorselector2.js并把里面的document.getElementById("goods_name_color").value = this.bgColor;document.getElementsByName("goods_name").item(0).style.color = this.bgColor;改成document.getElementById("title_color").value = this.bgColor;//文章标题加样式 by neodocument.getElementsByName("title").item(0).style.color = this.bgColor;//文章标题加样式 by neo4、admin\templates\article_info.htm页面顶部加入,colorselector2.js如下效果:{include file="pageheader.htm"}{insert_scripts files="../js/utils.js,selectzone.js,colorselector2.js,validator.js"}再找到
{$lang.title} | {$lang.require_field} |
修改成
{$lang.title} | {$lang.require_field} |
5、admin\article.php1).找到require_once(ROOT_PATH . 'includes/cls_image.php');下加入$image = new cls_image($_CFG['bgcolor']);//文章标题加样式 by neo2).找到(有2处都需要改)$smarty->assign('article', $article);上加入/* 文章标题加样式 by neo */$title_style = explode('+', empty($article['title_style']) ? '+' : $article['title_style']);$smarty->assign('title_color', $title_style[0]);$smarty->assign('title_style', $title_style[1]);3).找到$sql = "INSERT INTO ".$ecs->table('article')."(title, cat_id, article_type, is_open, author, ". "author_email, keywords, content, add_time, file_url, open_type, link, description) ". "VALUES ('$_POST[title]', '$_POST[article_cat]', '$_POST[article_type]', '$_POST[is_open]', ". "'$_POST[author]', '$_POST[author_email]', '$_POST[keywords]', '$_POST[FCKeditor1]', ". "'$add_time', '$file_url', '$open_type', '$_POST[link_url]', '$_POST[description]')";修改成$title_style = $_POST['title_color'] . '+' . $_POST['title_style'];//文章标题加样式 by neo$sql = "INSERT INTO ".$ecs->table('article')."(title, cat_id, article_type, is_open, author, ". "author_email, keywords, content, add_time, file_url, open_type, link, description, title_style) ". "VALUES ('$_POST[title]', '$_POST[article_cat]', '$_POST[article_type]', '$_POST[is_open]', ". "'$_POST[author]', '$_POST[author_email]', '$_POST[keywords]', '$_POST[FCKeditor1]', ". "'$add_time', '$file_url', '$open_type', '$_POST[link_url]', '$_POST[description]', '$title_style')";4).找到if ($exc->edit("title='$_POST[title]', cat_id='$_POST[article_cat]',
article_type='$_POST[article_type]', is_open='$_POST[is_open]',
author='$_POST[author]', author_email='$_POST[author_email]', keywords
='$_POST[keywords]', file_url ='$file_url', open_type='$open_type',
content='$_POST[FCKeditor1]', link='$_POST[link_url]', description =
'$_POST[description]'", $_POST['id']))修改成$title_style = $_POST['title_color'] . '+' . $_POST['title_style'];//文章标题加样式 by neoif ($exc->edit("title='$_POST[title]', cat_id='$_POST[article_cat]',
article_type='$_POST[article_type]', is_open='$_POST[is_open]',
author='$_POST[author]', author_email='$_POST[author_email]', keywords
='$_POST[keywords]', file_url ='$file_url', open_type='$open_type',
content='$_POST[FCKeditor1]', link='$_POST[link_url]', description =
'$_POST[description]', title_style = '$title_style'", $_POST['id']))======================以上步骤能实现了后台的文章标题样式添加和修改============================前台php部分:在要实现文章标题样式页面找到对应的php添加查询的字段 title_style 和 循环时添加$arr[$article_id]['title_style'] = add_style($row['title'],$row['title_style']);//文章标题加样式 by neo$arr[$article_id]['short_title_style'] = add_style($arr[$article_id]['short_title'],$row['title_style']);//文章标题加样式 by neo前台dwt,lbi模板部分{$article.short_title_style}或者{$article.title_style}1、index.php找到function index_get_new_articles()里面的sql添加 , a.title_style 这个字段进去如:$sql = 'SELECT a.article_id, a.title, a.title_style, ac.cat_name,
a.add_time, a.file_url, a.open_type, ac.cat_id, ac.cat_name ' . ' FROM ' . $GLOBALS['ecs']->table('article') . ' AS a, ' . $GLOBALS['ecs']->table('article_cat') . ' AS ac' . ' WHERE a.is_open = 1 AND a.cat_id = ac.cat_id AND ac.cat_type = 1' . ' ORDER BY a.article_type DESC, a.add_time DESC LIMIT ' . $GLOBALS['_CFG']['article_number'];在里面foreach里添加$arr[$idx]['title_style'] = add_style($row['title'],$row['title_style']);//文章标题加样式 by neo$arr[$idx]['short_title_style'] = add_style($arr[$idx]['short_title'],$row['title_style']);//文章标题加样式 by neo