我可以使用查询字符串来驱动 Sitecore 7.5 中的个性化内容吗?
Can I use a Query String to drive personalized content in Sitecore 7.5?
如果我点击了特定页面上的特定 link,我将尝试在该页面上显示个性化内容。我的想法是在 link 上有一个参数,例如:
<a href="Product-Page/?home=1">Go to product page</a>
然后,在 "Product Page",希望使用规则引擎,检查参数 home 是否存在于查询字符串中。如果是,则显示一段内容。
我似乎无法找出使用 Sitecore 7.5 执行此操作的最佳方法。也许这是错误的做法。
所以你必须有这样的东西:
public ActionResult Index(string name)
{
Student student = new Student();
student.Name = "John";
if (!String.IsNullOrEmpty(Request.QueryString["name"]))
{
student.Name = Request.QueryString["name"];
}
return View(student);
}
对于这个例子,我的控制器名为 Test。所以如果我想调用这个方法,我会做 ~/test/index,如果我这样做,学生对象将包含名称 John ,但是如果我这样做 ~/test/index?name=Denis ,我将发送一个名为 Denis
的对象
这里的名称只有在我们传递带有值的查询字符串 "name" 时才会改变。
Sitecore 7.5 开箱即用,没有使用查询字符串的规则。
但您可以轻松创建规则并使用 Sitecore 的个性化功能。
见http://blog.martinmiles.net/post/rules-engine-and-sitecore-personalization-based-on-url-query-string-parameters
完整的描述和示例包括 link 到 github 和代码
https://github.com/MartinMiles/Personalization
如果我点击了特定页面上的特定 link,我将尝试在该页面上显示个性化内容。我的想法是在 link 上有一个参数,例如:
<a href="Product-Page/?home=1">Go to product page</a>
然后,在 "Product Page",希望使用规则引擎,检查参数 home 是否存在于查询字符串中。如果是,则显示一段内容。
我似乎无法找出使用 Sitecore 7.5 执行此操作的最佳方法。也许这是错误的做法。
所以你必须有这样的东西:
public ActionResult Index(string name)
{
Student student = new Student();
student.Name = "John";
if (!String.IsNullOrEmpty(Request.QueryString["name"]))
{
student.Name = Request.QueryString["name"];
}
return View(student);
}
对于这个例子,我的控制器名为 Test。所以如果我想调用这个方法,我会做 ~/test/index,如果我这样做,学生对象将包含名称 John ,但是如果我这样做 ~/test/index?name=Denis ,我将发送一个名为 Denis
的对象这里的名称只有在我们传递带有值的查询字符串 "name" 时才会改变。
Sitecore 7.5 开箱即用,没有使用查询字符串的规则。 但您可以轻松创建规则并使用 Sitecore 的个性化功能。
见http://blog.martinmiles.net/post/rules-engine-and-sitecore-personalization-based-on-url-query-string-parameters 完整的描述和示例包括 link 到 github 和代码 https://github.com/MartinMiles/Personalization