CI‑gesteuertes Drupal‑Konfigurationsmanagement mit Jenkins und GitLab CI
1. Warum CI‑gesteuertes Konfigurationsmanagement wichtig ist
Drupals Konfigurationssystem ist eine der größten Stärken der Plattform — und eine ihrer zuverlässigsten Schmerzquellen. Die Möglichkeit, jede einzelne Site‑Konfiguration als YAML‑Dateien zu exportieren und zu importieren, ist mächtig, aber nur dann, wenn alle sich einig sind, wer dafür verantwortlich ist, diese Dateien zwischen den Umgebungen zu bewegen. In den meisten Teams existiert diese Einigung nie so richtig.
Aktualisierung von Drupal 7 auf die neueste Drupal‑Version
Obwohl der Support für Drupal 7 bereits ausgelaufen ist und es keine neuen Updates mehr geben wird, werden alle neuen Module ausschließlich für Drupal 11+ veröffentlicht. Dennoch nutzen weiterhin viele Websites Drupal 7 und können nicht auf neuere Versionen migrieren. Dafür gibt es Gründe, insbesondere bei Websites mit einer großen Menge an individuellem Custom-Code.
Wie man jQuery Cookie und die core/js-cookie‑Bibliothek in Drupal mit dem js_cookie‑Modul umschreibt
Warum diese Änderung?
- In Drupal 9 wurde jQuery Cookie aus dem Core entfernt und durch die js-cookie-Bibliothek ersetzt. Ein BC‑Shim (
core/jquery.cookie) existierte während Drupal 9, wurde jedoch für Drupal 10 entfernt.
Drupal-Aktualisierung
Dieser Abschnitt behandelt die Aktualisierung des Drupal‑Kerns von früheren Versionen (einschließlich der Legacy‑Versionen Drupal 6 und Drupal 7) auf die neueste aktuelle Version. Hier werde ich außerdem Artikel darüber veröffentlichen, wie man contributed Module für Drupal aktualisiert.
Unendliche UnterstĂĽtzung fĂĽr CKEditor 4 in Drupal
Das Drupal‑CKEditor‑Modul stellt die Unterstützung für CKEditor 4 ein. Dennoch habt ihr weiterhin die Möglichkeit, CKEditor 4 über benutzerdefinierte Module einzubinden und weiterzuverwenden. Natürlich ist die Nutzung der neuen Version CKEditor 5 oder höher vorzuziehen, aber das Legacy‑Modul CKEditor wird immer noch von mehr als 140.000 Websites verwendet (jede vierte Drupal‑Website!):
Verwendung von Chat GPT zur Ăśberarbeitung von JavaScript-Code ohne jQuery
Prompt fĂĽr ChatGPT, um jQuery in JavaScript umzuschreiben
Wenn Sie jQuery-Code mithilfe von ChatGPT in reines JavaScript umschreiben möchten, navigieren Sie zu chat.openai.com und geben Sie den folgenden klaren, präzisen Prompt ein:
Bitte schreibe den folgenden jQuery-Code in Vanilla JavaScript um und behalte dabei die gleiche Funktionalität bei. Stelle die Kompatibilität mit modernen JavaScript-Standards (ES6+) sicher. Integriere zudem die Verwendung von Drupal.behaviors, falls zutreffend. [Fügen Sie hier Ihren jQuery-Code ein]
Drush zeigt Fehler: UnterstĂĽtzen Sie bash, um 'source' zu unterstĂĽtzen, mit RĂĽckgriff auf $0, falls dies nicht mit bash ausgefĂĽhrt wird.
Ich habe eine groĂźe Anzahl von Konfigurationen und fĂĽhre normalerweise den Config-Import mit php -d memory_limit=-1 aus (um das PHP-Speicherlimit zu deaktivieren):
php -d memory_limit=-1 ./vendor/bin/drush config-import -y
Aber dieses Mal erhielt ich einen Fehler:
LAMP auf Ubuntu installieren
Apache installieren
sudo apt-get update
sudo apt-get install apache2
AuĂźerdem die Einstellungen fĂĽr Apache aktualisieren:
sudo ufw app list
sudo ufw allow in "Apache Full"
Du kannst den Ordner /var/www fĂĽr eine Website verwenden, aber es ist sinnvoll, einen anderen Ordner im eigenen Home-Verzeichnis anzulegen. FĂĽge dazu folgende Einstellungen in deine Apache-Konfiguration ein:
sudo nano /etc/apache2/apache2.conf
Wie erstellt man ein modales Fenster mit Colorbox?
Das Hauptproblem bei modalen Fenstern ist das unterschiedliche Verhalten der Eigenschaft scrollTop auf iPhone und Android. Daher mĂĽssen wir eine lange Liste von Befehlen verwenden, um die scrollTop-Position zu ermitteln.
Xdebug auf Ubuntu mit LAMP installieren
Zuerst mĂĽssen wir die PHP-Bibliothek fĂĽr Xdebug installieren:
sudo apt update
sudo apt install php7.2-xdebug
FĂĽr andere PHP-Versionen kannst du php7.x-xdebug oder php5.x-xdebug fĂĽr PHP 5.x Versionen verwenden.
Als nächstes sollten wir den Ordner /usr/lib/php ansehen und unsere xdebug.so-Datei finden: