Как я могу узнать, какие условия поиска (если таковые имеются) привели пользователя на мой сайт? - PullRequest
3 голосов
/ 11 сентября 2008

Я хочу создать динамический контент на основе этого. Я знаю, что это где-то, так как механизмы веб-аналитики могут получить эти данные, чтобы определить, как люди попали на ваш сайт (реферер, использованные поисковые термины и т. Д.), Но я не знаю, как это сделать сам.

Ответы [ 2 ]

7 голосов
/ 11 сентября 2008

Вы можете использовать часть запроса, которую отправил пользователь, чтобы выяснить, что он искал. Пример из Google:

http://www.google.no/search?q=stack%20overflow

Таким образом, вы должны искать строку (в ASP (.NET) это можно найти, просматривая Request.Referer) для «q =», а затем URL-кодировать содержимое.

Кроме того, вам следует ознакомиться с этой статьей, в которой больше говорится о рефералах, а также о других методах отслеживания посетителей:

http://www.15seconds.com/issue/021119.htm

0 голосов
/ 11 сентября 2008

Это некоторый код для резервного копирования идеи использования метода строки запроса, а если он недоступен, используя свойство UrlReferrer объекта Request. Затем его можно спрятать в объекте сеанса (или где-то еще, если это работает лучше для вас), чтобы вы могли отслеживать источник между страницами. (Кажется, что Page_Load неправильно отформатирован внутри примера кода)

public void Page_Load(Object Sender, EventArgs E) {
            if (null == Session["source"] || Session["source"].ToString().Equals(string.Empty)) {
                if (Request.QueryString["src"] != null) {
                    Session["source"] = Server.UrlDecode(Request.QueryString["src"].ToString());
                } else {
                    if (Request.UrlReferrer != null) {
                        Session["source"] = Request.UrlReferrer.ToString();
                    } else {
                        Session["source"] = string.Empty;
                    }
                }
            }}
...