در حال بارگزاری ...

چند زبانه کردن سایت و مشکل Domain Authority

یک سال قبل
#1623 نقل و قول
من سایتم را چند زبانه کردم ولی الان با تغییر زبان آدرس سایت هیچ تغییر نمیکنه و سایت همچنان بصورت http://DomainName.com نشون می دهد. می خواهم برای زبان انگلیسی به انتهای سایت en/ اضافه کند و آدرس سایت بصورت http://DomainName.com/en باشد.
0
یک سال قبل
#1624 نقل و قول
مطلب زیر را در انجمن ببینید:
نمایش fa و en در آدرس سایت
0
یک سال قبل
#1628 نقل و قول
من این کار رو انجام دادم ولی یه باگی هست.

ریدایکرت 302 داره میزنه از لحاظ سئو باید 301 بزنه چون 302 اعتبار صفحه رو انقال نمیده به عبارت دیگه domain authority انتقال پیدا نمیکنه و سایت با مشکل مواجه خواهد شد

من دنبال این حالتم که مثلا پیش فرض زبان فارسی هست و زمان زدن domain.com به زبان فارسی باز بشه بدون fa و وقتی زبان رو روی انگلیسی قرار میدهیم بشه domain.com/en
0
یک سال قبل
#1630 نقل و قول
وقتی تیک گزینه ذکر شده در پست قبلی را می زنید به تمام روت ها fa یا en  یا هر زبانی که دارید را اضافه می کند.
فایل زیر را باز کنید:
\Presentation\Nop.Web.Framework\Localization\LocalizedRouteExtensions.cs


داخل متد ClearSeoFriendlyUrlsCachedValueForRoutes میتونید یه if بزارید اگه زبان جاری فارسی باشه بیخیالش بشه


        public static void ClearSeoFriendlyUrlsCachedValueForRoutes(this IEnumerable<IRouter> routers)
        {
            if (routers == null)
                throw new ArgumentNullException(nameof(routers));

            //clear cached settings
            foreach (var router in routers)
            {
                var routeCollection = router as RouteCollection;
                if (routeCollection == null)
                    continue;

                for (var i = 0; i < routeCollection.Count; i++)
                {
                    var route = routeCollection[i];
                    (route as LocalizedRoute)?.ClearSeoFriendlyUrlsCachedValue();
                }
            }
        }

دستور if را بالای دستور (route as LocalizedRoute) بنویسید.
2
دسته بندی ها