Пак след голям застой, се почовърках по темата и взеха че се появиха някакви яки работи
Промените в случая са три на куп…
Промяна #13
Тук изтрих основната директория на темата…
Промяна #14
Тук се случиха многото неща…
- Промениха се името/описанието/директорията на темата – в крайна сметка прецених че съм направил достатъчно промени, че да мога спокойно да си прекръстя темата
- Интегрирах Options Framework-a, като в същото време направих и някои корекции(описани по-долу)
- Добавих Open Graph meta тагове, контролирани от новите Theme Options
- Променящ се box-shadow за основната картинка, както и за всички изображения които се отварят във FancyBox, както и за самия FancyBox.
- Добавих първия hook в темата
- Направих малка промяна по widget-a за връзки към архиви и feed-ове на категориите
Промяна #15
Тук само изтрих ненужните файлове от lib/cache директорията и добавих svn:ignore(със стойност “*”) property на lib/cache и lib/temp директориите. Това автоматично игнорира всички файлове намиращи се в тези директории и по този начин не позволява да се добавят в svn хранилището.
Сега по-подробно за промените
Темата вече не се казва “Night Sky” 1.0, а “Moon Watch” 1.1. В описанието все още се споменава, че това е модифицирана версия на “Night Sky”.
Относно интеграцията на Options Framework-a – по принцип това което е дадено там е направено да работи от основната директория на темата. Понеже обаче аз предпочитам core файловете да са в папка lib/, а не в основната директория трябваше малко да поровичкам кода – фикса беше доста лесен в общи линии – промених само две константи които държаха пътя – едната за сървърния път и другата за url пътя…
Също така от кода коментирах една функция която премахва Theme Options на Twenty Eleven темата. И последното нещо което промених беше да направя Theme Options основно меню, вместо под-меню на Appearance менюто и да го сложа най-горе.
Open Graph meta таговете(ползват от Facebook), както и цветовете за всеки един часови период се контролират от Theme Options страницата, което ми дава възможност да променям тези настройки изключително лесно
Сега за “фенси” сенките които се променят 4 пъти в денонощието Ето списък с цветовете(в момента) за различните части от деня:
- 24:00 – 06:00 –
- 06:00 – 12:00 –
- 12:00 – 18:00 –
- 18:00 – 24:00 –
Ако разгледате кода на която и да е страница ще видите
<link rel="stylesheet" href="https://themoonwatch.com/?mw_get_styles=1" type="text/css" media="screen" />
Това е линк към динамично генерирана стилова таблица, в която за сега се добавят само стиловете за текущия box-shadow.
Стигнах и до момента с първия hook(ако не сте запознати с hook-овете в WordPress, цъкнете тук)в темата. Той се активира, когато в текущото URL има следната част: “?mw_get_styles” или “&mw_get_styles“. Ето самата функция:
function mw_print_dynamic_styles_hook() { if ( isset($_GET['mw_get_styles']) ) { // Това казва на браузъра, че съдържанието ще е стилова таблица header("Content-type: text/css"); // Тук се вика така нареченото "действие", или "action", към което могат да се вързват функции do_action('mw_print_dynamic_styles'); exit; } } // Тук добавям горната функция към действието "init", с приоритет 1 add_action('init', 'mw_print_dynamic_styles_hook', 1); // Тази функция принтира стиловете за "фенси" сенките function print_daytime_color_styles($value='') { $prefix = daytime_class(); $color = of_get_option($prefix . '_color'); if ( $color != '' ) { ?> .<?php echo $prefix; ?> #img, .<?php echo $prefix; ?> #fancy_bg, .<?php echo $prefix; ?> a.fancybox img { -webkit-box-shadow: 0 0 16px 4px <?php echo $color; ?>; -moz-box-shadow: 0 0 16px 4px <?php echo $color; ?>; box-shadow: 0 0 16px 4px <?php echo $color; ?>; } <?php } } add_action('mw_print_dynamic_styles', 'print_daytime_color_styles', 10);
Ииии това ще е за тази вечер, че пак се отнесох много
Както и да е тея дни ще има още някои обновления