У меня есть многоязычный сайт. Как добавить параметры или URL без особой работы? - PullRequest
1 голос
/ 29 января 2012

У меня есть веб-сайт компании (Visual Studio / VB / ASP.NET 4.0).Я локализовал свой веб-сайт на 10 разных языках и культурах.

Проблема: Хотя @Stefan отметил, что Google не накажет меня за дублированный контент, все мои URL одинаковы.Например, about.aspx по-английски по-прежнему about.aspx по-французски - он просто вызывает страницу из файла ресурсов «fr» вместо файла ресурсов «en» и отображает ее соответственно. Таким образом, URL никогда не меняется , хотя язык на странице меняется.

@ Аристос предложил добавить параметр или URL к моемусайт, которому я не против.Это позволит клиентам понять, что они находятся во французской или шведской части сайта, и, возможно, Googlebots, Yahoobots, понравится это больше.На самом деле, я думаю, что мне ДЕЙСТВИТЕЛЬНО нравится это предложение.

Я думаю, что @Aristos предлагал, когда он сказал «добавить параметр», что у меня будет about.aspx? Lang = FR или что-то в концеURL.Мои текущие ссылки выглядят так:

                    <asp:LinkButton ID="LinkButton7" runat="server"
       CommandArgument="nl" OnClick="RequestLanguageChange_Click" class="flagbutton">
           <asp:Image ID="Image1" runat="server" ImageUrl="~/images/flagnl.png" tooltip="Bekijk deze website in het Nederlands" title="Bekijk deze website in het Nederlands"/>
           <img class="map" src="images/flaghovernl.png" alt=""/>
    </asp:LinkButton>

Но как мне добавить параметр? Это будет сложный процесс?Все мои файлы ресурсов находятся в app_globalresources.Я ищу самое простое решение, которое будет наиболее дружественным к SEO.Любое руководство в этом отношении будет с благодарностью!

1 Ответ

1 голос
/ 29 января 2012

Теперь давайте посмотрим на ваш новый вопрос. То, что я вижу здесь, также является плохим SEO и НЕ лучшим способом изменить язык.

И причина в том, что вы используете post back для смены языка. И индексаторы никогда не отправляют сообщения обратно на страницы, редко запускают JavaScript, а LinkButton - это JavaScript, который вызывает сообщение назад. Хорошо использовать обратную запись только тогда, когда вы вставляете данные или делаете действие, и вам все равно, найдут ли поисковые системы или будут следовать тому, что было после обратной отправки.

Что на самом деле нужно сделать, так это создать простую ссылку, которая меняет язык, а не пост обратно.

<a href="about.aspx?lang=el">ellinika</a>

Теперь на вашем PageLoad вы проверяете, нашли ли вы этот параметр lang=el, и, если вы его найдете, вы показываете этот языковой ресурс, если нет, то показывает ресурс по умолчанию.

Позже вы также можете переписать URL и преобразовать about.aspx?lang=el в /el/about.aspx

...