此文章中包含的解决方案可能影响Google搜索排名,因为其包含Javascript重定向。 因此,它们可能不适合长期或大规模部署。
如果您已从帮助中心删除文章,您可能已注意到,用户偶尔仍会试图访问与这些文章关联的Url。 无论此类流量的来源如何,您都可以自动将访问这些Url的用户重定向到更有用的页面。
这篇文章包含多种解决方案,在多数情况下,应可以帮助您重定向流量:
访问帮助中心的自定义JavaScript文件
要实现任何此类解决方案,您必须先访问帮助中心的JavaScript文件:
- 以管理员身份登录Zendesk Support。 单击 Zendesk产品 图标(
)在顶栏中,然后选择 指南.
- 在Zendesk Guide的右上角选择 指南管理员.
- 单击 自定义设计 图标(
侧栏中。
- 单击您要更新的主题以打开。
- 单击选项菜单(3个横线点),然后选择 编辑代码.
- 打开 脚本。js的 文件。
- 例如:将一组已删除文章重向到新的文章等级
这是一个例子,其中帮助中心有一组旧的、已删除的页面,每个页面对应于我们正在重向的新页面。
在JS文件的前几行内,您将看到一行读:
$(文件)。准备就绪(功能){
直接在此行上插入以下代码:
var旧体= ["217352077", "216552968"];
var newid= ["216553098", "216552958"];
for(var i=0;i<oldIds。长度;i++){
if(窗口。位置。href。索引(oldIds[i])>-1){
窗口。位置。href='https://YOURSUBDOMAIN。zendesk.com/hc/en-us/articles/ '+newid[i];
}
}
在保存脚本之前,您需要自定义关于此脚本的一些内容。 让我们来看看下面的。
您将编辑的代码的第一部分就在这里:
var旧体= ["217352077", "216552968"];
var newid= ["216553098", "216552958"];
这是旧文章Id和新文章Id的列表。 您将不得不在这里添加自己的文章Id。 要查找文章ID,只需在您的浏览器中查看文章(或来自您的分析平台的URL)。 URL将与此类似:
https://[YOURSUBDOMIAN].zendesk.com/hc/en-us/articles/203664386-Help-Center-guide-for-agents-and-end-users
在这种情况下,文章ID是"203664386"。
要使用此解决正确重定向,它们必须在阵列中的相同位置。 因此,在这种情况下,URL包含"217352077"的文章现将重定向到"216553098"。 而一篇包含"216552968"的文章现将重定向到"216552958"。
请务必将这些Id用引号包起来,如上所示,并在每个例中用逗号分隔。 因此,如果您添加一组新的重向,它将是这样:
var旧体= ["217352077", "216552968", "216552902"];
var newid= ["216553098", "216552958", "216552944"];
其次,您将要编辑此行中的URL:
窗口。位置。href='https://YOURSUBDOMAIN。zendesk.com/hc/en-us/articles/ '+newid[i];
请确保您使用子域名,或交替,使用您的整个帮助中心URL,如正常显示在帮助中心,如果它是白色标签到您自己的URL。 不要移除行尾,其读作"+newIds[i];"。 这是循环将您的新文章ID附加到您的URL的方式。 没有它,代码将失败。
例如:将未翻译的文章重向到现有语言
这是一个例子,您有多种语言的帮助中心内容。 假设您的所有内容都以英语存在,但只有一些以法语和德语存在。 当用户尝试用法语或德语访问这些文章时,他们将得到错误页面。 此代码允许将其从错误页面转向回到现有的英语文章:
var notDefaultLanguage=窗口。位置。href。indexOf('/en-us/')==-1;
var isArticle=窗口。位置。href。indexOf('/articles/')>-1;
var isErrorPage=$("。错误-页")。长度>0;
if(isArticle&¬DefaultLanguage&&isErrorPage){
var newURL=窗口。位置。href。替换(/(。*\/hc\/)([\w-]+)(\/。*)/,"en1en-us3 3");
窗口。位置。href=newURL;
}
在此例子中,只需要进行一个自定义。 如果您的默认帮助中心语言不是英语,您可以替代此语言。 在代码中,您将看到"en-us"出现在两个位置:
var notDefaultLanguage=窗口。位置。href。indexOf('/en-us/')==-1;
和
var newURL=窗口。位置。href。替换(/(。*\/hc\/)([\w-]+)(\/。*)/,"en1en-us3 3");
您将用默认的语言代码替换这两行中的"en-us"。 在url中查找您任何主要文章的默认语言代码。 例如,法语帮助中心页面的URL将看起来像
https://[YOURSUBDOMAIN]。zendesk.com/hc/fr/articles/214943538
用"fr"表示国家代码。
例如:将所有已删除文章重向到一个特定页面
这是一个例子,帮助中心将所有已删除的文章(注:不包含社区帖子)重定向到一个特定的文章。
在JS文件的前几行内,您将看到一行读:
$(文件)。准备就绪(功能){
在这种情况下,将以下代码直接插入在线下。 重要提示,插入上面(如上一个例子)将不适用于此例子:
if(窗口。位置。href。indexOf('文章') > -1 && $(".未找到")。长度>0){
窗口。位置。href='https://[YOURSUBDOMAIN]。zendesk.com/hc/en-us/articles/216553068-error-redirect';
}
您需要在此脚本中自定义URL,才可以保存。 请确保将其替换为您希望帮助中心重向到的文章URL。
此解决方案将仅当我们确保一个"。未找到"类存在于您的错误页面中。 让我们添加一个。
在出现"JS"链接的灰色条上,单击"主页"链接。 在该下拉菜单中查找并选择"错误页"。 在错误页面中,您将找到以代码开始的区域 {{#是错误'not_found'}}
. 它将看起来像这样:
{{#是错误'not_found'}}
<h2>{{t'nonexistent_page'}}</h2>
<p>{{t'mistyped_address_or_moved_page'}}</p>
{{/是}}
您将要向h2元素(或'not_found'#is标签中的任意元素)添加一个新的类,使其看起来像这样:
<h2类="未找到">{t'nonexistent_page'}}</h2>
现在您有所有元素,您将需要一个全面删除文章重向。
示例:泛化或指定哪些文章(或社区帖子)重定向到一个特定的页面
您可以通过自定义if语句,使用此解决方案更具体或通用。 例如,要从任何已删除的文章或社区帖子重定向,将if语句更改为:
if($("。未找到")。长度>0)
或者,要仅重定向标题中带有"白脱牛奶"一词的已删除文章,将if语句更改为:
if(窗口。位置。href。indexOf('白脱牛奶') > -1 && $(".未找到")。长度>0)
与第一个解决方案不同,这些解决方案将首先简短显示错误页面,然后重向到新页面。 这是因为我们使用JS在页面中搜索一个元素,为此,我们必须先等待页面加载。
评论
0 条评论
请登录写评论。