Стилизация сайта для конкретного клиента на основе поддоменов
Я пытаюсь стилизовать сайт на основе заголовка субдомена, используемого для доступа к сайту, например, так:
- customer1.mysite.com
- customer2.mysite.com
У меня есть файлы CSS, сохраненные для каждой компании в хранилище Azure
- https://mysite.blob.core.windows.net/companystles/customer1
- https://mysite.blob.core.windows.net/companystles/customer2
Я пытаюсь получить поддомен, а затем добавить ссылку на стиль в начало моей страницы _layout, но она не работает, может кто-нибудь увидеть, что я делаю здесь неправильно?
$(document).ready(function () {
var subdomain = window.location.host.split('.mysite.com')[0];
alert(subdomain);
$('<link rel="stylesheet" type="text/css" href="https://metalearning.blob.core.windows.net/companystyles/' + subdomain + ' >').appendTo('head');
});
Это правильно возвращает меня customer1 или customer2 в окне предупреждения для субдомена, но ссылка не добавляется в начало страницы макета
2 ответа
Вы можете попробовать вставить его в конце вашего body
тег.
$('body').append('<link rel="stylesheet" type="text/css" href="https://metalearning.blob.core.windows.net/companystyles/' + subdomain + '>');
Это изменение работает для вас?
Попробуйте добавить это к документу (просто добавьте его, сделайте тело документа)
<style type="text/css">
@import url(css/company1.css);
</style>
Изменить, я только что попробовал это:
$("body").append('<style type="text/css">@import url(css/company1.css);</style>');
Кажется, работает.
Редактировать 2, как насчет этого?
$("body").append('<style type="text/css">@import url(https://metalearning.blob.core.windows.net/companystyles/' + subdomain + ');</style>');