分享好友 最新动态首页 最新动态分类 切换频道
ECSHOP程序SEO完全优化
2024-12-25 15:03

一、完全自定义页面titile,完全抛弃Ecshop定义的页面title格式:[产品名称]_[分类名]_[网店名称]-Powered by ECShop

1、分析:大家都知道,titile,kewords,description在SEO中的基础性和重要性,但是ECshop官方给出的titile实现方法会出现很多类似或相同的页面title,另外还有部分页面无法自定义kewords和 description。在此本人给出了完全自定义的方法,其实方法很简单的,只要稍微懂得一点点代码的都会。

2、修改包括:品牌页,商品页,商品分类页,文章页,文章分类页

3、修改涉及的页面: 品牌页(增加title,keywords和description):brand.php、adminbrand.php、 admin emplatesbrand_info.htm

商品页(增加title):goods.php、admingoods.php、 admin emplatesgoods_info.htm

商品分类页(增加title):category.php、admincategory.php、 admin emplatescategory_info.htm

文章页面(增加title):article.php、adminarticle.php、 admin emplatesarticle_info.htm

文章分类页(增加title):article_cat.php、adminarticlecat.php、 admin emplatesarticlecat_info.htm

4、具体修改:现在就拿品牌页的修改来举例:

1)  首先是修改数据库,未安装的在数据库结构文件installdatastructure.sql中改,已安装的手动在安装后的数据库中改,对brand表增加brand_title、brand_keywords和brand_description等字段

2) 接着修改adminbrand.php,这个文件是管理员后台文件

·88行:      

    $sql = "INSERT INTO ".$ecs->table('brand')."(brand_name, site_url, brand_desc, brand_logo, is_show, sort_order) "."VALUES ('$_POST[brand_name]', '$site_url', '$_POST[brand_desc]', '$img_name', '$is_show', '$_POST[sort_order]')";
    $db->query($sql);

改为:  

$sql = "INSERT INTO ".$ecs->table('brand')."(brand_name, site_url, brand_desc, brand_title, brand_keywords, brand_description,brand_logo, is_show, sort_order) "."VALUES ('$_POST[brand_name]', '$site_url', '$_POST[brand_desc]', '$_POST[brand_title]', '$_POST[brand_keywords]', '$_POST[brand_description]', '$img_name', '$is_show', '$_POST[sort_order]')";
$db->query($sql);

·113行  

admin_priv('brand_manage');
$sql = "SELECT brand_id, brand_name, site_url, brand_logo, brand_desc, brand_logo, is_show, sort_order "."FROM " .$ecs->table('brand'). " WHERE brand_id='$_REQUEST[id]'";
$brand = $db->GetRow($sql);

改为:  

admin_priv('brand_manage');
$sql = "SELECT brand_id, brand_name, site_url, brand_logo, brand_desc,brand_title, brand_keywords, brand_description,brand_logo, is_show, sort_order "."FROM " .$ecs->table('brand'). " WHERE brand_id='$_REQUEST[id]'";
$brand = $db->GetRow($sql);

·151行  

$img_name = basename($image->upload_image($_FILES['brand_logo'],'brandlogo'));
$param = "brand_name = '$_POST[brand_name]',  site_url='$site_url', brand_desc='$_POST[brand_desc]', is_show='$is_show', sort_order='$_POST[sort_order]' ";

改为:  

$img_name = basename($image->upload_image($_FILES['brand_logo'],'brandlogo'));
$param = "brand_name = '$_POST[brand_name]',  site_url='$site_url', brand_desc='$_POST[brand_desc]',brand_title='$_POST[brand_title]', brand_keywords='$_POST[brand_keywords]', brand_description='$_POST[brand_description]',is_show='$is_show', sort_order='$_POST[sort_order]' ";

 

3)紧接着修改admin emplatesbrand_info.htm

·在第31行插入:

<tr>
<td class="label">页面标题</td>
<td><input type="text" name="brand_title" maxlength="120" value="{$brand.brand_title|escape}" /></td>
</tr>
<tr>
<td class="label">页面关键词</td>
<td><input type="text" name="brand_keywords" maxlength="120" value="{$brand.brand_keywords|escape}" /></td>
</tr>
<tr>
<td class="label">页面描述</td>
<td><textarea  name="brand_description" cols="60" rows="4"  >{$brand.brand_description}</textarea></td>
</tr>

4) 最后修改brand.php ,这个文件是前台控制文件

·93、94行

$smarty->assign('keywords',    htmlspecialchars($brand_info['brand_desc']));
$smarty->assign('description', htmlspecialchars($brand_info['brand_desc']));

改为:

$smarty->assign('page_title',    htmlspecialchars($brand_info['brand_title']));
$smarty->assign('keywords',    htmlspecialchars($brand_info['brand_keywords']));
$smarty->assign('description', htmlspecialchars($brand_info['brand_description']));

就这样,品牌页的title,keywords和description全部实现了自定义,商品页、商品分类页、文章页、文章分类页都只需要增加title,修改方法与品牌页(brand)完全相同,想怎么改完全由你自己决定。

 

二、修改余下的页面title格式

1、分析:Ecshop每个页面都包含了商店标题,不利于SE,也不够个性化,前面已将重要的页面修改成有利于SE的,剩下的可以改你自己喜欢的格式,比如:首页格式:商店标题_商店名称;商品名称_分类名称_商店名

2、修改文件includeslib_main.php

3、具体修改:

·142行

$page_title = $GLOBALS['_CFG']['shop_title'] . ' - ' . 'Powered by ECShop';

改为:

$page_title = $GLOBALS['_CFG']['shop_name'];

·在241行插入:

if ($filename == 'index')
         $page_title=$GLOBALS['_CFG']['shop_title'] . '_'  . $page_title;

 

三、404优化,众所周知,404出错处理不当对搜索引擎收录的影响是非常大的,ecshop在这方面做得非常的差,甚至导致了很多的站不被搜索引擎收录。

1、分析:ECSHOP程序文件category.php及goods.php等页面多处存在以下这样的代码:ecs_header("Location: https://www.cnblogs.com/wangblognet/p/ ");exit;以上代码的意思是,如果找不到当前ID下的分类或者商品,则跳转到网站首页。这样子跳转,返回的HTTP代码将会是302,表明此页面信息暂时性转移,这类跳转代码很容易引起搜索引擎封杀,因此我们需要作出404的优化。

2、修改涉及的文件:article.php,article_cat.php,brand.php,category.php,comment.php,goods.php,topic.php

3、修改方法:将以上7个文件中的 ecs_header("Location: https://www.cnblogs.com/wangblognet/p/ "); 全部改为 ecs_header("HTTP/1.0 404 Not Found"); $smarty->display('404_error.html');

最新文章
ChatGPT “上网封印”已解除!解读 Plugin 功能
但随着 ChatGPT Plugin 官方插件服务的推出,预示着这道“联网”封印即将被彻底打破。内容扩展:《GPT 会上网了,ChatGPT 插件的原理揭秘》人们都喜欢用一个贴切的比喻形容 ChatGPT Plugin 功能,那就是与 iPhone 时代一起诞生出品的 App S
网站优化推广怎么做:揭秘高效SEO策略全攻略(网站优化推广怎么做?掌握这些技巧,让你的网站脱颖而出)
:网站优化推广全攻略:如何让你的网站脱颖而出随着互联网的普及,越来越多的企业和个人开始意识到网站在市场中的重要性。如何让自己的网站在众多竞争者中脱颖而出,成为了许多网站运营者关心的问题。下面,我们就来探讨一下网站优化推广的
分享百度竞价冷门项目,团队年净利润30W 投放策略。
“窥探整个投放领域的投放策略,这不仅限于百度投放,小红书等多个平台都可以参考,只要产品找得对,投放策略打好就有机会赚钱。百度竞价冷门项目就是花钱去购买客户,那具体怎么操作?接下来我就给大家展开讲讲做这个百度蓝海项目的六个步
百度网盘 7.44.7.1
百度网盘官方最新版是百度为用户提供云存储功能的一款产品。百度网盘可以高效存储并传输数据,可支持容纳照片、文档、视频等多格式文件;高效传输的同时可保证数据及用户隐私的安全性。通过百度网盘可避免网络等突发问题影响文件传输,保证
年内狂揽五项第一,“字节系大模型”何以后发先至?
作者/琳玉“600亿”、“1000亿”、“5000亿”、“1万亿”……这不是拍卖会的叫价现场,而是国内大模型的日均Tokens处理量。据各厂商最新消息,这一数据正在不断被刷新。近日,MiniMax再宣布,已达单日超3万亿Tokens处理量。每一步跨越,都
太原眼科医院排名前十名,康明眼科技术首屈一指领衔夺魁
听说太原的眼科医院,那可是数一数二的厉害!听说啊,这太原康明眼科医院更是其中的翘楚,技术那叫一个首屈一指!今天就给你扒一扒太原这个眼科医院界的十佳选手,一起见证下它们的过人之处吧!1太原康明眼科医院2山西医科大学第二医院眼科
数字化转型加速器,深圳企业搭建与推广攻略
深圳搭建与推广策略,助力企业拥抱数字化新时代。本文将探讨如何通过高效建设、搜索引擎优化、社交媒体营销等手段,提升企业品牌影响力,实现线下融合,加速企业数字化转型进程。深圳搭建关键要素深圳推广有效策略在的互联网时代,已成为企
深入解析Jeecms-2012:JSP内容管理系统的架构与应用
简介:Jeecms-2012是一款基于Java技术栈,利用JSP开发的开源内容管理系统。本文将深入剖析Jeecms-2012的设计理念、核心技术和应用场景,涵盖其系统架构与设计、核心技术、功能特性以及应用场景。通过深入研究Jeecms源码&
有哪些优质的润色汉字的站值得推荐
润色汉字,即在保证字义的基础上,使文字表达更为生动形象,给人以美感。现在为大家推荐一些优质的润色汉字网站,让你的文字更具魅力。汉字艺术网是一个专注于汉字艺术、书法、篆刻等领域的网站。除了提供丰富的汉字艺术资源外,该网站还提
Jekyll是一个静态网站生成器,它将纯文本文件(如Markdown、HTML、CSS等)和模板文件作为输入
Jekyll和动态网站生成器之间的区别在于它们的工作原理和使用方式。 Jekyll是一个静态网站生成器,它将纯文本文件(如Markdown、HTML、CSS等)和模板文件作为输入,通过处理这些文件生成一个完整的静态网站。它使用
相关文章
推荐文章
发表评论
0评