Releases: lukelocksmith/important-cta
Release list
v3.4.2
Style formularzy wyprowadzone z wtyczki do motywu, żeby wszystkie formularze na important.is miały jeden wspólny design.
Jedno źródło prawdy
Wygląd formularzy siedzi teraz wyłącznie w gravity-skin.css w motywie (ładowany na całej stronie). Sekcja GF w tej wtyczce jest celowo pusta, z notatką dlaczego. Dwa źródła prawdy to dokładnie powód, dla którego karty na blogu rozjechały się z /kontakt.
Co naprawione w skinie motywu
- Zgoda RODO (
--type-consent) nie była stylowana w ogóle, więc GF malował etykietę swoim#112337. Na ciemnej karcie kontrast 1,1:1, czyli tekst niewidoczny. Teraz natywny checkbox zaccent-color, kontrast 10,1:1. - Kolory odcięte od tokenów szablonu.
--color-inkznaczy „kolor tekstu na tej podstronie" i zmienia wartość:#edebe7na ciemnym/kontakt,#232323na jasnym blogu. Formularz wędruje między szablonami, więc taki token go psuł. - Kolory odcięte też od przestrzeni nazw GF. Prefiks
--gf-*należy do wtyczki: GF deklaruje--gf-color-primaryna.gform-theme--framework, czyli tym samym elemencie co.gform_wrapper, więc oparcie malowania o tę nazwę zrobiło przycisk niebieskim#204ce5. Nasza paleta to--imp-gf-*.
Weryfikacja na produkcji
/kontakt jest identyczny jak przed zmianą (input 56px, textarea 96px, przycisk 44px pigułka, siatka 14/16, te same kolory), a formularz newslettera na blogu raportuje dokładnie te same wartości.
Uwaga: motyw important-classic nie jest pod kontrolą wersji, więc zmiany skinu nie ma w tym repozytorium. Backup przed zmianą leży na serwerze.
v3.4.1
Poprawki wizualne bloków CTA na blogu plus podłączenie newslettera pod Gravity Forms.
Naprawione
Przeciek stylów prozy. Karty CTA są wstrzykiwane w the_content, więc reguły .prose.sp-content p i .prose.sp-content img z motywu wchodziły do środka. Oba selektory mają wagę (0,2,1), czyli tylko remisowały z resetami wtyczki, a theme.css ładuje się później, więc motyw wygrywał i resety wyglądały na ignorowane. Resety schodzą teraz o poziom głębiej przez realnego rodzica, co daje (0,3,0)/(0,3,1), bez !important.
Zmierzone na żywo, karta CTA1 z 502px na 386px:
- odstępy 14/43/57px na 14/14/29px (margines prozy nie dodaje się już do flex-gap)
- avatar 60px kwadrat zjechany 29px poza swój wrapper, teraz 80px kółko i offset 0
- przycisk 67px prostokąt, teraz 44px pigułka zgodna z
.btn-primarymotywu - odręczny dopisek 26,6px przy nagłówku 23,1px, teraz 19,6px przy 26,6px
Zero hairline'ów zgodnie z zasadą projektu: border karty, separator podpisu, ring wokół avatara i hr w CTA3. Separacja idzie odstępem i kontrastem.
Fluent Forms. Wtyczka nigdy nie była tu zainstalowana, dlatego [fluentform id="4"] renderował się jako goły tekst. Shortcode był zahardkodowany jako domyślna wartość w dwóch miejscach, więc naprawa samej bazy przywróciłaby problem przy nowej kategorii. Domyślne są teraz puste, a podpowiedź w panelu pokazuje składnię Gravity Forms.
Gravity Forms
Pola i przyciski nie potrzebowały własnego CSS, bo motyw ma globalny ciemny skin GF, który już pasuje. Domknięte tylko dwie luki:
- kolor etykiety zgody (GF maluje ją na
#112337, praktycznie niewidoczna na ciemnej karcie, teraz kontrast 10,1:1) - komunikat potwierdzenia, który dziedziczył ciemny atrament przeznaczony dla jasnych stron
v3.3.0 — CTA redesign on theme tokens
Co nowego
Redesign trzech bloków CTA, oparty na design systemie motywu important-classic.
Wygląd
- Odręczne dopiski w Mansalvie otwierają kartę, w kolorze akcentu, lekko przekrzywione. Nagłówki zostają w Rubiku (twarda zasada UI kitu: jeden element odręczny na blok).
- CTA1 przebudowany: dopisek → nagłówek → opis → przycisk → podpis ze zdjęciem eksperta. Wcześniej zdjęcie renderowało się pierwsze w markupie i na mobile osierocało się pod przyciskiem.
- Większe odstępy i typografia w skali strony, karta z hairlinem zamiast samego cienia.
Design system
- Cały
cta-block.cssprzepisany na tokeny motywu (var(--token, fallback)). Fallbacki w px, żeby wtyczka degradowała się sensownie na innym motywie. - Kolory zgodne z brandem:
#e22007 → #FF3434,#18181b → #1b1b1b. Dotyczy wartości domyślnych; zapisane ustawienia trzeba zmienić osobno w panelu.
Responsywność
- Breakpoint stackowania 600 → 782px,
min-width: 0na tekście CTA2, zawijanie etykiet przycisków. Naprawia ucinanie przycisku podoverflow: hiddenprzy 601–782px i na wąskich telefonach.
Dostępność
- Widoczny
:focus-visiblena przyciskach (domyślny outline ginął na ciemnej karcie). - Kontrast dopisku 3.7:1 → 4.9:1.
prefers-reduced-motionobejmuje też submit formularza.
Bezpieczeństwo
esc_html()na nagłówkach we wszystkich trzech rendererach (wcześniej jedyne nieescapowane pole).altportretu to nazwisko autora, nie tekst nagłówka.
Znane ograniczenia
Sekcja stylów Fluent Forms celowo nietknięta, czeka na migrację na Gravity Forms.
v3.2.0
Blog Lead Magnet v3.2.0
Reading Progress Bar
- Red bar at top of page fills as user scrolls through article
- Toggle on/off in Settings → BLM Pływający pasek
- Configurable color
Server-side TOC (SEO improvement)
- Before: TOC generated by JavaScript only — invisible to Google and AI crawlers
- After: TOC rendered in PHP server-side, with heading IDs added in HTML source
- Schema.org
SiteNavigationElementmarkup on TOC nav itemprop="url"anditemprop="name"on each link- Visually hidden (screen-reader accessible), floating bar JS picks up existing IDs
- Impact: Google can now index TOC anchor links, AI models can see article structure
v3.1.0
Blog Lead Magnet v3.1.0
Floating Bar (TOC + CTA button)
Moved from theme to plugin — now fully configurable.
Settings: Settings → BLM Pływający pasek
3 modes:
- Przycisk CTA + Spis treści — avatar, autor, przycisk "Umów się" + rozwijany TOC
- Tylko przycisk CTA — kompaktowy pasek z autorem i przyciskiem
- Tylko Spis treści — nawigacja po artykule bez CTA
Configurable fields:
- Button text & URL
- Author name, role, avatar (media picker)
- Bar background color, button color
How it works:
- Fixed bar at bottom of screen on article pages
- TOC auto-generated from H2/H3 headings
- IntersectionObserver highlights current section
- Panel slides up smoothly on toggle
- Mobile responsive (hides author details on small screens)
After enabling in plugin, you can remove the old TOC/CTA code from single.php in your theme.
v3.0.0
Blog Lead Magnet v3.0.0
Content Gate (email paywall)
- Hide article content after Nth H2 heading — reader must enter email to unlock
- Enable per-category in plugin settings OR per-post with a checkbox in the editor
- Fluent Forms integration — content auto-unlocks after successful form submission
- localStorage remembers unlocked articles
- Gradient fade overlay with lock icon, smooth reveal animation
- Fully configurable: headline, description, form shortcode, colors, trigger position
Analytics Dashboard
- New admin page: Settings → BLM Analityka
- Tracks CTA views (via IntersectionObserver), button clicks, and gate unlocks
- Summary table with conversion rates per CTA type
- Top 20 posts by total events
- Date range filter: 7 / 30 / 90 days / all time
- AJAX tracking with rate limiting (10 events/min/IP)
- Custom DB table
wp_icta_events
v2.0.1
Fix auto-update URL to point to correct GitHub repository.
v2.0.0
Blog Lead Magnet v2.0.0
Renamed from "Important CTA" to "Blog Lead Magnet".
Bug fix
- Critical: unchecking one CTA no longer disables all CTAs across categories
- Sanitize now only processes the active tab, preserving other tabs' data
- Category fallback correctly defers to global settings when category is not explicitly enabled
New features (from v1.1.0)
- Label badge (small uppercase text above headline)
- Text color picker (per CTA)
- Configurable H2 trigger position (CTA1 & CTA2)
- WordPress Media Library picker for CTA1 avatar
- Dark theme defaults (#18181b background, #ffffff text)
Styling
- Box shadow on all CTA blocks
- Border radius increased to 14px
- Divider line in CTA3 between text and form
- Improved mobile responsive layout