标签: sitecore

Sitecore多个站点 - 使用带有hostName属性的通配符

我在使用Sitecore站点的web.config文件中设置站点时遇到问题.具体来说,我无法想象如何使用hostName属性捕获域的"www"子域(例如www.mydomain.com)以及没有指定的子域(例如mydomain.com).

我做了一点实验,发现我可以做*.mydomain.com这样的工作.但问题是我们希望用户也能够访问mydomain.com并让网站出现.当我将hostName配置为*.mydomain.com时,这显然是不可能的.

有任何想法吗?Sitecore开发者网络对此没有太多说法(除非它隐藏在我找不到的地方).

克雷格

sitecore

8
推荐指数
3
解决办法
4121
查看次数

如何将Solr实现到Sitecore中

我必须在Sitecore中实现Solr索引,我想知道什么是最好的方法?

我看了下面的方法:

  1. 捕获发布结束事件(或其他事件),然后将项目推送到solr索引
  2. 实现自定义数据库搜寻器并从历史记录表中获取所有更改.然后使用自定义索引推送数据进行solr.

第二种方法听起来像是一种方式(在我看来).在这种情况下,我是否需要创建新的搜索索引或搜索管理器?

如果有人以前做过,你能指出我正确的方向吗?此外,如果您可以发布一些关于sitecore-solr实现的文章的链接.

更新 好的,在阅读sitecore文档后,这就是我提出的:

  1. 创建自定义SolrConfiguration类,您可以在其中设置solrserviceurl,添加索引及其定义(自定义solr索引)等属性

  2. 创建SolrIndex并将其(在配置文件中)添加到SolrConfiguration.哪个实例化,solrindex应订阅Sitecore History Manager的AddEntry事件,并与solr crawler进行通信.

  3. 创建自定义处理器并挂钩到sitecore初始化管道.处理器应初始化SolrConfiguration(从步骤1开始)

  4. 由于配置文件中的所有内容都将使用refrection构建,因此您可以根据配置文件获取配置实例

听起来怎么样?我可以有任何意见吗?

solr sitecore sitecore6

8
推荐指数
1
解决办法
2595
查看次数

Sitecore FieldRenderer输出CMS 6.5和7.0之间的差异

我最近一直在将内容和代码库从旧的Sitecore CMS 6.5安装(具有大量自定义)迁移到CMS 7.0的全新安装.

在原始站点中,Single-line text已使用字段将任意Javascript呈现到页面中(用于跟踪).这工作正常,Javascript被渲染到页面中,未编码并按预期执行.

但是在新安装中我注意到内容现在是HTML编码的,这意味着它不会在我正在使用的Sitecore 7安装下执行.

在我的Sublayout中,我有一个像这样的FieldRenderer:

<sc:FieldRenderer ID="tracker" FieldName="Script" runat="server" />
Run Code Online (Sandbox Code Playgroud)

我不确定是否存在我未迁移的自定义/配置,或者这是否是Sitecore 7中引入的更改(可能出于安全原因).

任何人都可以对此有所了解吗?我是否需要创建自己的字段类型以允许所需的行为,或者我是否可以通过"开箱即用"字段类型执行此操作?

.net c# sitecore sitecore7

8
推荐指数
2
解决办法
5607
查看次数

路径'/'的控制器未找到或未在Sitecore中实现IController

我正在从这里学习Sitecore中的Controller渲染.

我创建了一个简单的控制器(HelloWorld)和相关视图(Index.schtml).在Sitecore Explorer的渲染部分中映射它(使用Name PageContent)并在Sitecore Explorer的内容部分中的Home Item中添加渲染项目.但是当我浏览它时,它会给出错误.

The controller for path '/' was not found or does not implement IController. 
Run Code Online (Sandbox Code Playgroud)

我读过的所有帖子都与Asp .Net MVC有关..但我有与Sitecore MVC有关的问题

Sample.html(Sitecore Explorer渲染部分中的页面内容)

@using Sitecore.Mvc

<html>
<body>
    @Html.Sitecore().Placeholder("content")

    <p>Today's date is @DateTime.Now.ToShortDateString()</p>
</body>

</html>
Run Code Online (Sandbox Code Playgroud)

只有这条线给出了问题

@Html.Sitecore().Placeholder("content")
Run Code Online (Sandbox Code Playgroud)

如果我删除此行...它工作正常,浏览器上的页面显示日期和时间

的index.html

<p>Hello from Controller -todays Date is @DateTime.Now.ToString()</p>
Run Code Online (Sandbox Code Playgroud)

调节器

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace MVC.Controllers
{
    public class HelloWorldController : Controller
    {
        //
        // GET: /HellowWorld/

        public ActionResult Index()
        {
            return View();
        } …
Run Code Online (Sandbox Code Playgroud)

.net c# controller sitecore sitecore-mvc

8
推荐指数
2
解决办法
3万
查看次数

TermQuery不会返回已知的搜索词,但WildcardQuery会这样做

我希望有足够洞察Lucene内部运作的人可能能够指出我正确的方向=)

我将跳过大部分周围的相关代码,并切入正确的追逐.我有一个Lucene索引,我将以下字段添加到索引中(变量由其文字值替换):

document.Add( new Field("Typenummer", "E5CEB501A244410EB1FFC4761F79E7B7", 
                        Field.Store.YES , Field.Index.UN_TOKENIZED));
Run Code Online (Sandbox Code Playgroud)

稍后,当我搜索我的索引(使用其他类型的查询)时,我能够验证该字段确实出现在我的索引中 - 比如循环遍历Document.GetFields()返回的所有Fields

Field: Typenummer, Value: E5CEB501A244410EB1FFC4761F79E7B7
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好 :-)

现在真正的问题是 - 为什么我不能使用TermQuery来搜索这个值并实际获得结果.

此代码产生0次点击:

// Returns 0 hits
bq.Add( new TermQuery( new Term( "Typenummer", 
        "E5CEB501A244410EB1FFC4761F79E7B7" ) ), BooleanClause.Occur.MUST );
Run Code Online (Sandbox Code Playgroud)

但是,如果我将其切换为WildcardQuery(没有通配符),我会得到我期望的1点击.

// returns the 1 hit I expect
bq.Add( new WildcardQuery( new Term( "Typenummer", 
        "E5CEB501A244410EB1FFC4761F79E7B7" ) ), BooleanClause.Occur.MUST );
Run Code Online (Sandbox Code Playgroud)

我检查了字段长度,我已经检查过我使用相同的分析仪等等,我仍然在方块1上为什么会这样.

任何人都可以指出我应该看的方向吗?

lucene lucene.net sitecore sitecore6

7
推荐指数
1
解决办法
1661
查看次数

在TDS CI部署结束时自动发布Sitecore内容

我正在使用Teamcity自动化(单击)部署到我们的QA环境中.目前正在部署内容项目,但QA人员必须手动触发重新发布网站.

无论如何使用TDS,Sitecore Rocks或ANOther工具在部署过程结束时自动重新发布.

我知道我可以将Sitecore配置为每x分钟自动发布一次,但我宁愿将其停用,因为QA也将执行负载测试,我不希望调度程序妨碍.

continuous-integration sitecore sitecore6 tds

7
推荐指数
3
解决办法
3409
查看次数

Sitecore item.IsClone vs item.IsItemClone

item.IsClonevs 之间有什么区别item.IsItemClone

c# asp.net sitecore sitecore6

7
推荐指数
1
解决办法
360
查看次数

Sitecore项目:已创建vs项目:已添加

事件item:createdvs 之间有什么区别item:added?每个事件什么时候被击中?

c# asp.net sitecore content-management-system sitecore6

7
推荐指数
1
解决办法
2169
查看次数

使用查询来获取"常规链接"字段的来源

是否可以修改Sitecore中的"常规链接"字段,以便在模板字段定义中的"源"中使用查询?我希望可以添加一个管道处理器来处理General Link字段的查询,其方式与本文描述的为Treelists和Datasources启用查询的方式类似.

sitecore

7
推荐指数
1
解决办法
966
查看次数

升级到Sitecore 8后,在Content Editor上出现错误

我已经从Sitecore 7.5升级到Sitecore 8,并且在尝试访问内容编辑器时出现错误.

'/'应用程序中的服务器错误.

值不能为空.

参数名称:fieldNameTranslator

描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.异常详细信息:System.ArgumentNullException:Value不能为null.参数名称:fieldNameTranslator

源错误: 在执行当前Web请求期间生成了未处理的异常.可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息.

[ArgumentNullException:Value不能为null.参数名称:fieldNameTranslator] Sitecore.ContentSearch.Linq.Solr.SolrIndexParameters..ctor(IIndexValueFormatter> valueFormatter,IFieldQueryTranslatorMap`1 fieldQueryTranslators,> FieldNameTranslator fieldNameTranslator,IExecutionContext [] executionContexts,> IFieldMapReaders fieldMap,Boolean convertQueryDatesToUtc)+310

Sitecore.ContentSearch.SolrProvider.LinqToSolrIndex`1..ctor(SolrSearchContext> context,IExecutionContext [] executionContexts)+192 Sitecore.ContentSearch.SolrProvider.SolrSearchContext.GetQueryable(IExecutionCo> ntext [] executionContexts)+83 Sitecore.ContentTesting.ContentSearch.TestingSearch .GetRunningTests()+ 637 Sitecore.ContentTesting.Data.SitecoreContentTestStore.GetActiveTests(DataUri> hostItemDataUri,String searchText)+252 Sitecore.ContentTesting.Pipelines.GetContentEditorWarnings.GetContentTestingWar> nings.Process(GetContentEditorWarningsArgs args)+247(Object,Object [] )+141 Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)+365 Sitecore.Shell.Applications.ContentManager.Editor.GetWarnings(Boolean> hasSections)+271 Sitecore.Shell.Applications.ContentManager.Editor.Render(RenderContentEditorArg> s args,Control parent)+178 Sitecore.Shell.Applications.ContentManager.ContentEditorForm.RenderEditor(Item> item,Item root,Control parent,Boolean showEditor)+231 Sitecore.Shell.Applications.ContentManager.ContentEditorForm.UpdateEditor (Item> folder,Item root,Boolean showEditor)+374 Sitecore.Shell.Applications.ContentManager.ContentEditorForm.Update()+411 Sitecore.Shell.Applications.ContentManager.ContentEditorForm.OnPreRendered(Even> tArgs e)+212Boolean showEditor)+374 Sitecore.Shell.Applications.ContentManager.ContentEditorForm.Update()+411 Sitecore.Shell.Applications.ContentManager.ContentEditorForm.OnPreRendered(Even> tArgs e)+212Boolean showEditor)+374 Sitecore.Shell.Applications.ContentManager.ContentEditorForm.Update()+411 Sitecore.Shell.Applications.ContentManager.ContentEditorForm.OnPreRendered(Even> tArgs e)+212

sitecore sitecore-mvc sitecore8

7
推荐指数
1
解决办法
3945
查看次数