2013-03-11 3 views
4

Я работаю над двумя разными сайтами WordPress, которые во многом схожи, но схожи по-разному.Совместное использование стилей CSS в разных доменах

Например, предположим, что я работаю над двумя «журнальными» сайтами, которые имеют один и тот же CSS-макет, например. сетчатая система, маржа и т. д., но различные свойства декодирования CSS, например. градиенты, цвета, тени.

Каков наилучший способ заставить их использовать один и тот же базовый макет CSS, но другой декоративный CSS?

Первоначально я думал, что-то вроде ...

<link rel="stylesheet" type="text/css" media="all" href="LINK-TO-BASE-CSS-ON-PRIMARY-DOMAIN.css" /> 
<link rel="stylesheet" type="text/css" media="all" href="<?php bloginfo('template_url'); ?>/style.css" /> <!-- This would be the 'top-up' CSS --> 

Это не кажется особенно чистым для меня, хотя. Я признаю, однако, есть также очень похожий вопрос here.

Это все еще считается лучшим способом? Есть ли недостатки для связи с другим доменом? Я читал, что это может быть даже преимуществом из-за загрузки по нескольким доменам.

+0

единственного недостатком загрузки таблицы стилей междоменных заключается в том, что если домен опускается вниз, таблица стилей не будет загружена, основное преимущество в том, что оно будет кэшироваться, поэтому его нужно будет загружать только один раз для всех сайтов, которые его используют – Pete

+0

. Другим преимуществом является то, что браузер разрешает ограниченное количество одновременных подключений на один домен, поэтому размещение ресурсов в другом домене позволит вам загружать больше ресурсов одновременно и therefo сделайте свой сайт быстрее. См. Также этот вопрос: http://stackoverflow.com/questions/985431/max-parallel-http-connections-in-a-browser – Michiel

ответ

6

Что вы предложили в порядке. Я не уверен, что есть преимущество , называемое «междоменная загрузка», но размещение таблиц стилей на другом сервере является очень распространенной практикой. Этот другой сервер известен как CDN или сеть доставки контента. Вот некоторая информация о КДС и их преимущества:

http://www.sitepoint.com/7-reasons-to-use-a-cdn/


Кроме того, про-совет: сделать некоторые DNS prefetching, если вы собираетесь использовать отдельный домен для размещения файлов. Это так же просто, как:

<link rel="dns-prefetch" href="//myexternalcdn.com" /> 
1

попытка отделить структуру макета и шаблонов и назвать все из того же домена

<link rel="stylesheet" type="text/css" media="all" href="fileserverdomain/css/structure.css" /> 
<link rel="stylesheet" type="text/css" media="all" href="fileserverdomain/css/firsttamplatename.css" /> 

ИЛИ

<link rel="stylesheet" type="text/css" media="all" href="fileserverdomain/css/structure.css" /> 
<link rel="stylesheet" type="text/css" media="all" href="fileserverdomain/css/secondtamplatename.css" /> 

Преимущество этого решения заключается в том, что вы можете adtionaly предложение переключения шаблонов: D

+0

Спасибо за ответ, но есть ли какие-либо преимущества в вызове всего из того же домена? например скорость?FYI, нет никакого способа, которым им когда-либо понадобится, чтобы их тема переключилась на другую, поскольку они являются отдельными журналами. – SparrwHawk

+0

Существует несколько преимуществ: скорость - браузеры кэшируют файлы из того же домена, разделения и производительности - этот домен может указывать на разделение файловый сервер, если вы используете файловый сервер для js, css и изображений, вы можете сохранить передачу данных на веб-сервере. – tkeram

0

Вы можете использовать этот фильтр, чтобы отфильтровать стили с любым условием или альтернативным вывод HREF строкой, например:

add_filter('style_loader_src', function($href){ 
if(strpos($href, "name-of-allowed.css") !== false) { 
return $href; 
} 
return false; 
}); 
Смежные вопросы