pixelgrade / customify

Intuitive Website Styling integrated into WordPress' Customizer
GNU General Public License v2.0
28 stars 5 forks source link

Add Development Mode Option to Improve Testing #97

Closed georgeolaru closed 6 years ago

georgeolaru commented 6 years ago

Obiectivul principal este sa putem testa default-urile din tema, atat in procesul de development, de configurare si editare a optiunilor, cat si in momentul in care vrem sa testam tema, cand ne jucam cu optiunile si vrem sa revenim la cum arata ea initial.

Avem momentan o serie de butoane in Settings → Customify care ofera posibilitatea de a reseta anumite optiuni (eg. Colors) insa sistemul actual nu suporta resetarea tutoror optiunilor (eg. Fonts).

Obiective sau ce urmarim cu acest feature:


O idee pe care am discutat-o cu @vladolaru ar fi sa avem un "Development Mode" care sa ofere cadrul necesar testarii optiunilor default din tema si sa ne ajute la nivel de productivitate in development. Astfel tot site-ul sa fie intr-un mod de "reset continuu", in care optiunile se pot schimba in Customizer, dar nu se salveaza si se "pierd" la refresh. customify - dev mode


O alta idee ar fi sa avem o notificare in cazul in care optiunile actuale sunt diferite fata de cele default si sa oferim un buton de Reset pe care sa-l folosim doar in momentul in care dorim asta: image


@pixelgrade/everybody Fiecare dintre noi cred ca a avut de-a face cu problema default-urilor diferite, cu faptul ca faceam o instalare noua doar ca sa testam defaulturile s.a.m.d. Va invit sa va spuneti parerea si sa incercam sa gasim o solutie care rezolva cat mai mult din cazurile de mai sus.

vladolaru commented 6 years ago

@georgeolaru In primul rand, frumos issue! Descris tzutzi tzutzi. Mai vreu de astea.

Acum eu nu mi-am putut abtine degetelele sa faca un MVP la ce ai propus tu.

Am introdus o constanta CUSTOMIFY_DEV_FORCE_DEFAULTS care trebuie pusa pe true in wp-config.php asa:

define( 'CUSTOMIFY_DEV_FORCE_DEFAULTS', true);

O data "activata" treaba, atat in frontend cat si in Customizer vor fi luate valorile default pentru toate optiunile din Customify. In plus, nu se vor salva in baza de date modificarile aduse optiunilor (desi merge live preview), ele ramanand in baza de date la valorile precendete.

Eu unul am mers pe prima varianta, pentru ca am reparat ( https://github.com/pixelgrade/customify/commit/e22d24a9e7736d68d95b11f9e239c4b14c07fb36 https://github.com/pixelgrade/customify/commit/5cdfbc25d505c7cd1b1f430d1f8dd84a9a9ae87e https://github.com/pixelgrade/customify/commit/c373df7fea03ea125928ba15e3803eb80afebbf8 ) logica de reset si acum apar butoanele de reset si merge peste tot (inclusiv multisite).

georgeolaru commented 6 years ago

@vladolaru hoho — te-ai miscat cu spor. Am testat si merge foarte bine — nice job! 👏

La fel de misto si faptul ca ai rezolvat butoanele de reset (daca mergeau inainte poate nu mai aparea nevoia si ideea acelei constante 😄 )

Ce cred ca ar fi nevoie sa completeze tot peisajul e partea de descoperire a optiunilor:

  1. Daca mergem pe varianta cu constanta, propun sa avem o sectiune "Development Tools" in ReadMe, in fiecare astfel de repo care suporta constante, unde sa explicam toate optiunile disponibile pentru development si ce face fiecare (inclusiv unde sunt butoanele de reset in cazul asta)
  2. Apreciez ca ai imbunatatit label-urile butoanelor de Reset din Customizer — cred ca putem merge un pas mai departe si sa fim si mai expliciti:
    • Reset Customify to Defaults → Reset All Customify Options to Default
    • Section's default → Reset All Options for This Section
  3. Valabil si pentru butonul de Reset Theme Mod din Settings — poti sa adaugi o descriere, ce reseteaza mai exact? (eg. logo, meniuri, widget-uri?)
vladolaru commented 6 years ago

@georgeolaru Multumesc. Am modificat copy-ul pentru butoane si am adaugat o descriere. Adaug si explicatiile in readme.md.

vladolaru commented 6 years ago

@georgeolaru @pixelgrade/everybody Si ca sa fie treaba si mai tzutzi, iaca ce am facut dis de dimineata: https://github.com/pixelgrade/pixelgrade-devmode

Our very own help plugin!

Acum putem seta constantele fara sa mai trebuiasca sa le tinem minte (toti).

georgeolaru commented 6 years ago

@vladolaru lovely ❤️ (acum nu mai am nevoie nici de plugin-ul pentru Jetpack sa-l pun in devmode)