=== StopModeTW ===
Contributors: todorweb
Tags: поддръжка, режим на поддръжка, страница за поддръжка, “Очаквайте скоро”
Requires at least: 4.0
Tested up to: 6.8
Stable tag: 1.9
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

StopModeTW осигурява лесно превключване между нормален режим и режим „Поддръжка“ – персонализирана страница за поддръжка.

== Описание ==
StopModeTW е мощен инструмент за WordPress, който позволява активиране/деактивиране на режима „Поддръжка“ чрез административната лента или настройки в панела. Плъгинът ви дава възможност да зададете персонализирани параметри за фон, лого, текст и частен достъп, като гарантира, че посетителите винаги виждат актуално съдържание чрез вграден анти-кеш механизъм.

== Основни функции ==
* Бързо превключване на режима „Поддръжка“ чрез административната лента.  
* Персонализирана страница за поддръжка с възможност за настройка на фон (цвят и снимка), лого и текст.  
* Избор на конкретни страници, публикации, специфични ресурси и продукти (WooCommerce).  
* Генериране на таен URL с GET параметър `access_key` за частен достъп.  
* Вграден анти-кеш механизъм за актуализиране на съдържанието.

== Инсталация ==
1. Изтеглете архива на плъгина и го разархивирайте.  
2. Качете папката `stopmodetw` в `/wp-content/plugins/` на вашия WordPress сайт.  
3. Влезте в админ панела → **Плъгини**, открийте **StopModeTW** и натиснете **Активирай**.

== Конфигурация ==
След активиране:
1. Отидете в **Настройки → StopModeTW** или кликнете върху бутона в админ лентата.  
2. В табовете **Обхват**, **Лого**, **Текст**, **Фон** и **Частен достъп** задайте вашите параметри.  
3. За възстановяване на демонстрационните стойности кликнете **Нулиране към демо**.

== Документация и Архитектура ==
Плъгинът е структуриран модулно и разделен на отделни компоненти:
1. **stopmodetw.php** – основен файл, съдържа метаданните и инициализира зареждането на останалите части.  
2. **admin/admin.php** – административен панел и бутон за превключване в админ лентата.  
3. **includes/class-config.php** – централизира управлението на опциите и генериране на динамичен CSS.  
4. **includes/ajax-handler.php** – обработва AJAX заявки за превключване на режима и регенериране на тайния ключ.  
5. **templates/** – шаблони за maintenance страницата и модулите в настройките (custom-ресурси, лого, текст, фон, частен достъп).  
6. **assets/css/** и **assets/js/** – стилизиране и динамично поведение както на админ панела, така и на публичната страна.

== Употреба ==
=== Превключване на режима „Поддръжка“ ===  
* **Административна лента** – бутонът показва текущото състояние (ВКЛ./ИЗКЛ.) и превключва режим чрез AJAX.  
* **Админ панел** – превключвател в таба „Обхват“, който обновява състоянието без презареждане.

=== Персонализация на страницата ===  
* **Фон** – основен цвят или качена снимка, мащабирана като cover и адаптирана за мобилни.  
* **Лого** – препоръчителна ширина 200 px, височината се мащабира пропорционално.  
* **Текст** – настройка на шрифт, размер и цвят за заглавие и основен текст.

=== Обхват на режима ===  
* Изберете „Приложи за целия сайт“ или маркирайте отделни страници/публикации.  
* След това изберете специфични ресурси (custom post types) и отделно – WooCommerce продукти.

=== Частен достъп ===  
* Тайният URL със `access_key` в GET параметър позволява достъп при активен режим.  
* Конфигурирайте продължителността на бисквитката (часове или постоянно).  
* Бутон **Регенерирай ключ** генерира нов ключ и прави стария невалиден.

== Версионен журнал ==

= 1.9 =
* Актуализиран Stable tag в readme.txt на 1.9.
* Унифицирани имената на дефинирани константи, функции и опции с префикс TKP_STOPMODETW_ за предотвратяване на конфликти, без да засягаме WP-дефинираната константа DONOTCACHEPAGE.
* Подсилена санитизация и валидация на всички входни данни (POST/AJAX) чрез sanitize_*(), filter_input_array() и absint().

= 1.8 =
* Коригирано нулиране на списъците със специфични ресурси и продукти при избор на „Приложи за целия сайт“.  
* Зареждане на всички ресурси и продукти с `posts_per_page => -1`.  
* Поправена логика за филтриране на custom post types.  
* Уеднаквен текстов домейн `stopmodetw`.  
* Добавена защита от директен достъп (`if ( ! defined( 'ABSPATH' ) ) exit;`) във всички изпълними файлове и шаблони.  
* Премахнати PHP затварящи тагове в `includes/` за предотвратяване на „headers already sent“ грешки.  
* Подобрени CSRF нонси и масивна валидация чрез `filter_input_array()`.  
* Актуализирани HTTP заглавки за отказ от кеширане при частен достъп.  
* Обновен `readme.txt` с коректен `Tested up to: 6.8` и добавен `Contributors: todorweb`.

= 1.7 =
* Добавен dual-list интерфейс за избор на ресурси и продукти.  
* Въведен таб “Частен достъп” с опции за бисквитка и регенериране на ключ.

= 1.6 =
* AJAX-бутон за превключване в административната лента.  
* Основни настройки за фон, лого и текст в админ панела.

= 1.5 =
* Първоначална версия с поддръжка на режим „Поддръжка“ за целия сайт и избор на страници/публикации.

== Често задавани въпроси (FAQ) ==
= Какво прави плъгинът StopModeTW? =  
StopModeTW позволява бързо превключване между нормален режим и режим „Поддръжка“ чрез административна лента или панел, като осигурява персонализирана страница за поддръжка с настройки за фон, лого и текст.

= Как да активирам режима "Поддръжка"? =  
Режимът може да се активира чрез бутона в административната лента или от настройките в административния панел. При активиране посетителите виждат страница със статус 503, която информира, че сайтът е временно недостъпен.

= Мога ли да ограничавам режима само за определени страници или продукти? =  
Да – в админ панела можете да изберете конкретни страници, публикации, ресурси или продукти. Ако няма избрани елементи, режимът се прилага за целия сайт.

= Как работи частният достъп? =  
В таб “Частен достъп” има обновяем таен линк с GET параметър, който позволява на потребители с валиден ключ да достъпят сайта дори при активен режим. Полезно за администратори, клиенти и разработчици за тестове и поддръжка. Можете да генерирате нов ключ по всяко време – старият става невалиден.

= Как мога да регенерирам тайния ключ? =  
В админ панела има бутон за регенериране на ключа. При натискане се генерира и записва нов ключ в базата данни, а URL-ът се обновява.

= Какво става, ако потребителят има валиден таен ключ? =  
Посещението чрез тайния URL задава бисквитка, която пропуска потребителя до сайта без показване на maintenance страницата. Ако бисквитката изтече или бъде изтрита, линкът трябва да се въведе отново.

= Какво да направя, ако заключено съдържание все още е видно? =  
Ако ползвате агресивно кеширане, изчистете кеша след инсталация или промяна на режима, за да избегнете показване на кеширано съдържание.

= Поддържа ли плъгинът WooCommerce? =  
Да, StopModeTW позволява избор на конкретни продукти от WooCommerce за активен режим.

= Как StopModeTW използва HTTP 503 за SEO? =  
При активиране изпраща HTTP 503 със `Retry-After` заглавие, което информира търсачките, че сайтът е временно недостъпен, без негативен ефект върху SEO.

= Как влияе StopModeTW на производителността? =  
Използва вграден в WordPress jQuery и минимален собствен код, което гарантира леко натоварване.

== Лиценз ==
GPLv2 или по-нова версия → http://www.gnu.org/licenses/gpl-2.0.html

== Поддръжка ==
За въпроси и докладване на бъгове посетете  
https://stopmodetw.eu/#contacts
