Für die durch das Plugin German Market erstellten Rechnungen meines Shops nutze ich einen Font den ich nach jedem Plugin-Update erneut integrieren muss, da er nicht standardmäßig in dem Plugin eingebunden ist. Damit ich das nicht (mehr) vergesse, lasse ich mir eine Admin-Notice anzeigen, sobald ein Update für das Plugin verfügbar ist. Das ist nicht besonders schwer und schnell umgesetzt, der komplette Code sieht so aus:
/**
* Display admin notice so I remember uploading the Clavo font after updating German Market
*/
function fbn_german_market_typography_notice() {
$update_plugins_transient = get_site_transient( 'update_plugins' );
if ( $update_plugins_transient->response['woocommerce-german-market/WooCommerce-German-Market.php'] ) {
add_action( 'all_admin_notices', function () { ?>
<div class="notice notice-warning">
<p><strong>Nach dem »German Market«-Update den Clavo-Font für Rechnungen wieder hochladen!</strong></p>
</div>
<?php } );
}
}
add_action( 'admin_init', 'fbn_german_market_typography_notice' );
Code-Sprache: PHP (php)
Ich übergebe an den admin_init
-Hook die Funktion fbn_german_market_typography_notice()
. Darin wird zunächst der Wert des Site-Transients update_plugins
in einer Variable gespeichert – in diesem Transient sind Infos zu Plugin-Updates gespeichert. Wenn nun $update_plugins_transient->response['woocommerce-german-market/WooCommerce-German-Market.php']
vorhanden ist, dann ist ein Update für das Plugin verfügbar.
In diesem Fall wird eine Admin-Notice ausgegeben (ich nutze hier all_admin_notices
, damit es in einer Multisite nicht nur im Netzwerk-Admin angezeigt wird) die mich hoffentlich zukünftig daran erinnert, den Font für die Rechnungs-PDF wieder hochzuladen … 🙂
Für andere Plugins ist der Array-Schlüssel natürlich ein anderer. Ihr könnt euch einfach per var_dump( $update_plugins_transient );
den Inhalt des Transients ausgeben lassen, um den richtigen Schlüssel zu finden.
PS: Mehr zu Admin-Notices gibt es im Beitrag »Admin Notices in Plugin UIs« von Caspar Hübinger.