Wordpress теми за деца
Дете тема WordPress (подтема) - това е допълнителна тема, която ви позволява да промените / допълване на функциите и появата на основната тема. В този случай, основната тема остава непокътнат, така че това може да се актуализира без страх, че промените ще бъдат загубени.
Дете тема - тема, разработена на базата на родителя. "Въз основа на" означава, че ако не бъде намерено темите на искания файл, той ще бъде взет от майка тема: родител тема, тъй като застрахова дъщерно тема. От техническа гледна точка, за да се създаде дете тема, тя се превръща в основен и допълнителен родител темата.
Защо едно дете тема?
теми за деца, необходими за разработчиците да актуализирате / подобри нейната тема и потребители могат да актуализират темата и не се губят в същото време промените.
Какво може да се променя в темата дете?
В него можете да промените почти всичко, но трябва да се разбере какво и как се работи (вж. По-долу). Въпреки това, да се променят някои неща трябва да бъдат създадени тема родител, като се вземат предвид евентуалните промени. Ако разработчик родител тема, не планира никакви промени, промяната ще бъде някои моменти или трудно или невъзможно.
От тук можем да заключим, че темата родител има добри и лоши. Често, което трябва да се докосне до не е много: стиловете променят изба и други малки предмети, но това може да бъде направено за всеки родител тема без никакви проблеми.
Създаване на дете тема
Създаване подтема лесно! Следното се създава едно дете да twentyfifteen тема.
Създайте папка с произволно име в директорията: WP-съдържание / теми. Нека twentyfifteen дете
Създаване на нова папка в style.css на файла. Със съдържанието:
Не забравяйте да посочите с шаблони ред: twentyfifteen. (String е с малки букви), това показва, че тази подтема twentyfifteen нишки.
директива @import трябва да е първото правило в style.css. Ако пишете правило пред нея, тя не работи и стилове родител тема не са свързани.
директива @import забавя зареждането на страницата, така че стилът на родителски теми по-добре се свържете по-различно.
В резултат на това, ние трябва да получите тази структура:
twentyfifteen-дете може да съдържа и други файлове, включително:
style.css - (задължително) напълно замества родителя от същия тема файла.
functions.php - допълва functions.php конци майки (зареден пред него).
Шаблон файлове - index.php. home.php т.н. кой е / не е в темата родител. Ако файлът е в темата на детето, а след това този файл ще замени файла родител. Например: създаване footer.php и копирате съдържанието на footer.php от темата родител, можем да променим изхода без да се променя основния тема файла.
style.css - само изисква файл в подтема. WordPress дава информация за идентифициране на дъщерно темата.
подтема style.css style.css напълно замества майка на дадена тема, родител тема стилове файл не се зарежда.
В главата на информацията, която трябва да бъде в началото на файла е задължително Шаблон параметър. Тя е за него WP разбира, че е дъщерно тема и името на компанията-майка.
Един пример за дете тема style.css.
- Тема Име - (задължително) името на темата дете.
Шаблон - (задължително) главни и малки букви на името на майка тема директория.
Забележка: когато промените искате да нулирате, той трябва да премине към друга тема и да се върне.
За разлика от други подтема файлове, за functions.php не замества файла родител, а го допълва: тя се зарежда директно в предната част на подтемите майки и други файлове.
Това означава, че, за да промените темата майка, в functions.php да използвате куки и да "замени" функция, ако се изчислява.
Използването на куки
В footer.php файл в темата twentyfifteen един twentyfifteen_credits събития. Към това трябва да добавите следния код в темата на functions.php дете да добавите свой собствен текст в мазето, можете да използвате това събитие:
Замяна на функция
twentyfifteen родителя тема functions.php файлове имат функция twentyfifteen_fonts_url () - записва шрифтове Google. Тя изглежда така:
Състояние. function_exists ( "twentyfifteen_fonts_url") - ако функцията не съществува, за да се определи една и съща функция в functions.php дете тема.
В този случай, спусъка е единствената ни дефинирана функция, а не в зависимост от темата майка - тя не се регистрират в PHP, защото на условията.
Например, добавянето на следния код в functions.php дъщерно тема, ще деактивираме шрифтове връзка:
Забележка към разработчиците, нека способност да замени функциите в дъщерни теми за тази тема, за да се създаде увийте функция в състояние:
В този случай, темата на дете може да замени родителската темата, просто като го обявява в functions.php.
Файлът с шаблон в темата на дете като style.css. замества родителски тема файла. Т.е. в подтема може да бъде заменен от един от родителите на файлове, просто създадете файл със същото име.
Няколко примера са създаването на файла на шаблона в дъщерното темата:
# 1 Добавяне на шаблон, който не е в темата родител
Създаване на шаблон за страница "карта на сайта". За тази цел, подтема създадете файл страница sitemap.php, а сайтът ще създаде страница с карта на сайта на етикета. Готово!
# 2 Редактиране на шаблон, наличен в темата родител
Да кажем, че имаме home.php в темата родител и ние трябва да го промените.
Създаване home.php в подтема.
След това копирайте файл кода на тема майка.
Как работи: стъпка по стъпка
В процеса на работа от страна на дете тема WordPress на:
WP теми style.css отваря системата и чете заглавията в настройката.
Директива Шаблон: съобщава, че нишките имат тема родител, и посочва неговото име. Сега WP работи с темата както на дъщерното дружество.
За да се локализира WP ще използва за превод на файлове родител темата. И, разбира се, трябва да се преведат на струните не може да има. Ето защо, за подтемите, които искате да създадете файл за превод и да го свържете към кода на подтема.
За връзка има промоции. функция: load_child_theme_textdomain (). Използваме го в functions.php подтеми:
Също така, трябва да създадете файл с превод в дъщерно Заглавие: езици / en_US.mo.
Сега можете да използвате WordPress локализиране на функция в подтема:
Така например, за едно дете тема ние ще прехвърли някои файлове, и ще се използва за майки родния файлове.
WordPress функция, свързана с деца теми
get_stylesheet_directory_uri () - получава адреса на текущата тема (дъщерно дружество, а не майка).
get_template_directory_uri () - получава адреса на текущите теми (родителя, а не на детето).
get_stylesheet_directory () - получава по пътя към текущата тема (дъщерно дружество, а не майка).
get_template_directory () - получава по пътя към текущата тема (родителя, а не на детето).
get_stylesheet () - получава името на текущата тема директория (дъщерно дружество, а не майка).
get_template () - получава името на текущата тема директория (родителя, а не на детето).
Т.е. ако искате да получите препратка към темата файл, но използва дъщерно предмет, адресите от: get_stylesheet_directory_uri () и get_template_directory_uri () ще бъдат различни: първото ще бъде дъщерно дружество предмет, а втората на родителя.
Plug-in за бързо създаване на дъщерни дружества
За да не се забъркваш с създаване на папки и файлове, можете да използвате модула в едно кликване на детето Тема.
Тя ви позволява да създадете едно дете тема на тока с едно кликване. След като създадете тема плъгин може да бъде отстранен. Приставката много добри отзиви.
рекордни формати
add_theme_support функция ( "пост-формати") подменя формати, определени от темата майка, а не да я допълват.
@import в детската тема style.css
Въпреки факта, че навсякъде пише използвате @import в style.css подтеми. Аз не го препоръчвам. Тъй като в този случай браузърът не може да се зареди и двете паралелни файлови стилове от родител тема и от дъщерното дружество. Той ще трябва да ги свалите последователно: тематични стилове първото дете, когато той вижда @import и едва след това да започне изтеглянето на родителските тематични стилове. Резултатът е, че ние губим по реда на 200ms на скоростта на зареждане. Толкова много се изразходват за товарене CSS файл. Под натоварване има за цел да изпрати искане до сървъра, да дочака отговор, изтеглите файла.
По-добре е да се свържете файловете стил отделно в HTML: първо стил на родителство теми, а след това на детето, че те са по-ниски, отколкото в HTML код и да прекъсне родителски стилове. Ето как:
В резултат на това в главата част на HTML документ ще получите две връзки към два файла от стилове, които ще бъдат заредени по време на зареждане паралелно, а не последователно. Това ще ни спести време на една заявка към сървъра от brazuera.