Offizielle PHP-Library für WooCommerce-REST-API mit Basic-Auth verwenden

Wenn eine WordPress-Installation via .htaccess Basic-Auth geschützt ist, funktionieren die WooCommerce-REST-API-Anfragen mit der offiziellen PHP-Bibliothek nicht ohne weiteres. Ich habe das GitHub-Issue nicht mehr gefunden, in dem darauf verwiesen wurde, dass mit CURL die Anmeldedaten angegeben werden können, aber darüber bin ich letztlich auf eine Frage und die Antworten bei Stack Overflow gestoßen, die mir geholfen haben:

$ch = curl_init(); curl_setopt( $ch, CURLOPT_USERPWD, 'user:password' );
Code-Sprache: PHP (php)

Diese beiden Zeilen habe ich an den Anfang meines Skripts geschrieben und user sowie password gegen die entsprechenden Werte ausgetauscht. Damit konnten jetzt auch Anfragen an die geschützte Installation gestellt werden.

Parallele Anfragen an die WooCommerce-REST-API mit der PHP-Requests-Bibliothek

In zwei kürzlich geschriebenen Artikeln bin ich bereits auf die REST-API von WooCommerce eingegangen, sowie auf einen PHP-Bibliothek von Automattic, die die Nutzung der API mit PHP vereinfacht. Hier stelle ich einen Weg vor, wie mehrere Anfragen gleichzeitig an den Shop gemacht werden können.

"Parallele Anfragen an die WooCommerce-REST-API mit der PHP-Requests-Bibliothek" Weiterlesen

Theme-Editor-Styles für Gutenberg erstellen

Mit WordPress 5 wird ein neuer Editor mit Codename »Gutenberg« kommen, der komplett anders ist als der aktuelle TinyMCE. Das bedeutet nicht nur eine Umstellung für die User, sondern auch für Theme-Developer, die die Styles im Editor so anpassen möchten, dass der Inhalt möglichst aussieht wie im Frontend. Hier zeige ich wie das für den neuen Editor funktioniert.

"Theme-Editor-Styles für Gutenberg erstellen" Weiterlesen

Titel einer Customize-Section verändern

Beim Erstellen einer Customize-Section wird ein Titel vergeben. In einigen Fällen kann es sein, dass dieser Titel während einer Customize-Session dynamisch verändert werden soll, um beispielsweise den veränderten Wert eines Formularfeldes wiederzugeben, wie unten im GIF zu sehen ist.

Ein GIF, das die Detailansicht einer Section zeigt. Beim Verändern eines Select-Feldes wird der Section-Titel ebenfalls aktualisiert.

Ich habe keine Möglichkeit gefunden den Titel über die Customize-JS-API zu verändern, also blieb nur der Weg über die direkte Manipulation des DOM.

"Titel einer Customize-Section verändern" Weiterlesen

Eigenes Template für den Head-Container einer Customizer-Section nutzen

Wenn ihr im Customizer ein Panel öffnet, kommen entweder direkt Optionen (wie bei dem »Website-Informationen«-Panel) oder Verweise auf Sections, in denen dann die Optionen zu finden sind (wie bei den Menüs). Standardmäßig sehen diese Verweise aus wie im Screenshot unten das Slider settings – der Titel der Section in einem Bereich mit hellerem Hintergrund und rechts einem Pfeil.

Wir möchten das verändern, sodass stattdessen ein beschreibender Text und ein Button angezeigt wird, der dann die Section öffnet – so wie es im Screenshot für Portfolio feature zu sehen ist.

"Eigenes Template für den Head-Container einer Customizer-Section nutzen" Weiterlesen

Eine Customize-Section via JS schließen

Manchmal kann es nützlich sein, im Customizer von WordPress zum Beispiel nach einem Klick auf einen Button eine Section zu schließen. Das ist an sich leicht gemacht, es hat neulich aber doch ein bisschen gedauert, bis ich herausgefunden habe wie es geht.

Mit diesem Einzeiler lässt sich eine Section schließen:

wp.customize.section('hannover_portfolio_archive_page_options').collapse();
Code-Sprache: JavaScript (javascript)

Dabei ist hannover_portfolio_archive_page_options die ID der Section.

Theme-Mod nach Button-Klick im Customizer entfernen

In der kommenden Version meines Hannover-Themes soll es neben überarbeitetem Design und Code auch eine verbesserte User-Experience im Customizer geben. Dabei soll es für den Nutzer unter anderem möglich sein, Sections über einen Button-Klick zu entfernen (wie beim Löschen eines Menüs im Customizer). Daraufhin soll natürlich nicht nur die Section aus dem Customizer verschwinden, sondern auch die entsprechenden Theme-Mods aus der Datenbank gelöscht werden. Hier zeige ich, wie ich dazu vorgegangen bin.

"Theme-Mod nach Button-Klick im Customizer entfernen" Weiterlesen