TL;DR
https://github.com/qpSHiNqp/docker-wordpress-dev
Wenn Sie dies klonen und "Docker-Compose" erstellen, wird die WordPress-Umgebung sofort gestartet.
Es kam vor, dass ich mit WordPress spielen musste. Um die Entwicklungsumgebung vorzubereiten, richten Sie bisher einen MySQL-Server lokal ein, erstellen Sie eine Datenbank, erstellen und ordnen Sie Benutzer und Berechtigungen, erstellen Sie eine PHP-Umgebung, erstellen Sie eine Webserverumgebung, stellen Sie eine Verbindung her, überprüfen Sie den Betrieb. Ich habe mein Bestes getan, um das zu tun, was MAMP heißt, aber heutzutage ist das nicht normal. Deshalb habe ich ein wenig nachgeforscht, um mit Docker eine Umgebung aufzubauen.
Als ich es nachgeschlagen habe, gab es ein Docker-Image namens "wordpress", und natürlich gab es auch ein Docker-Image für "mysql", also habe ich beschlossen, es mit dem guten Gefühl "docker-compose.yml" zu machen.
Wie es gemacht wird, wurde sorgfältig in Beschreibung des Docker Hub von wordpress
geschrieben, daher werde ich es als Referenzinformation beschreiben.
In der Mitte der Seite ist der Abschnitt "... über Docker Stack Deploy oder Docker-Compose" fast identisch.
Dieses Mal wollte ich ein Thema oder Plugin erstellen, also habe ich "docker-compose.yml" erstellt, um "wp-content / theme" und "wp-content / plugins" zu mounten.
version: '3.1'
services:
wordpress:
image: wordpress
restart: always
ports:
- 8080:80
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: exampleuser
WORDPRESS_DB_PASSWORD: examplepass
WORDPRESS_DB_NAME: exampledb
volumes:
- wordpress:/var/www/html
- ./wp-content/themes:/var/www/html/wp-content/themes
- ./wp-content/plugins:/var/www/html/wp-content/plugins
db:
image: mysql:5.7
restart: always
environment:
MYSQL_DATABASE: exampledb
MYSQL_USER: exampleuser
MYSQL_PASSWORD: examplepass
MYSQL_RANDOM_ROOT_PASSWORD: '1'
volumes:
- db:/var/lib/mysql
volumes:
wordpress:
db:
Wenn Sie nun "Docker-Compose Up" und "http: // localhost: 8080" öffnen, wird der WordPress-Setup-Bildschirm sofort geöffnet. Wenn Sie also so weitermachen, wie er ist, können Sie zum Verwaltungsbildschirm wechseln.
Von hier an habe ich es in der Zwischenzeit geschrieben, daher denke ich, dass es nur als eigenes Memorandum verwendet werden kann.
Beim Erstellen meines eigenen Themas denke ich, dass das Layout und das Erscheinungsbild von style.css gesteuert werden. Da WordPress jedoch ein CMS ist, das mit einem WYSIWYG-Editor ausgestattet ist, muss das Layout des in WordPress bereitgestellten Inhaltsteils verwendet werden.
Der integrierte Stil wird im Abschnitt "Von WordPress generierte Klassen" von CSS «WordPress Codex beschrieben. Durch Kopieren in den unteren Bereich meines eigenen Themas konnte ich das zum Zeitpunkt der Bearbeitung mit WYSIWYG angegebene Layout auf der tatsächlichen Anzeige wiedergeben.
Anfänglich wurde der in meiner eigenen style.css definierte Stil auf die Elemente des Inhaltsteils angewendet, sodass es ein Problem gab, das anders aussah als WYSIWYG, aber es liegt wahrscheinlich in der Verantwortung des Markups wie folgt. Ich habe das Gefühl, dass die Abgrenzung im Allgemeinen funktionieren wird.
<? Php the_content ();?>
Beeinflusst nicht das Layout des einzubettenden Inhaltskörpers`` Ich mache es style.css`<h1>
(oder <h2>
) für die Anzeige des Beitragstitels zuständig ist, ist es besser, die Anzeige auf der Vorlagenseite zu steuern.Kurz gesagt, der HTML-Code, den WYSIWYG von WordPress ausspuckt, ist unvorhersehbar, sodass es wahrscheinlich unmöglich ist, das Blocklayout des Inhaltskörpers mit Ihrem eigenen CSS zu steuern. Ich bin eher der Meinung, dass der Themenersteller ein Klassen- / Auswahldesign benötigt, mit dem das Blocklayout des Inhaltskörpers unkontrolliert bleiben kann.
Es war in Ordnung, die Farbpalettenfunktion zu unterstützen, aber dieses Mal musste ich kein Allzweckthema erstellen, das WordPress-Funktionen vollständig unterstützt, und habe es daher mit minimaler Funktionsunterstützung implementiert.
Recommended Posts