Update-Hinweis bei den Themes entfernen?

  • Hallo,
    ich suche nach einer Möglichkeit, den Update-Hinweis bei den Themes zu entfernen, auszublenden, unsichtbar zu machen. Mehr als das u.a. habe ich bisher nicht gefunden. Aber das funktioniert leider nicht und erzeugt eine Meldung, den Code zu überprüfen. Wozu ich nicht in der Lage bin.

    /** Ausblenden Theme-Update-Hinweis */
    remove_action( ‚load-update-core.php‘, ‚wp_update_themes‘ );
    add_filter( ‚pre_site_transient_update_themes‘, create_function( ‚$a‘, „return null;“ ) );
    wp_clear_scheduled_hook( ‚mng_17_update_themes‘ );

    Ich verwende WP 6.0.2

    Danke.

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Als Naiver WP-Nutzer frage ich mich nach dem Sinn, Update-Hinweise zu entfernen. Ich habe über Updates (u.a. hier) sehr viel gelernt :)

  • Als Naiver WP-Nutzer frage ich mich nach dem Sinn, Update-Hinweise zu entfernen. Ich habe über Updates (u.a. hier) sehr viel gelernt :)

    Es geht nur um den Update-Hinweis bei Themes. Ganz konkret nur um eines. Der Bekannte soll auf seiner Site auch nicht aus Versehen auf Update klicken.

  • Im zitierten Code sind zunächst mal alle Hochkommata falsch, was ggf. kann auch am fehlerhaften Einfügen (nicht als "Code") im Forum liegen könnte. Bitte korrekt einfügen.

    Weiterhin wurde der Code offensichtlich einfach 1:1 von irgendwelchen Webseiten kopiert und passt daher ggf. nicht zum verwendeten Theme, das nicht genannt wurde und/oder zur PHP Version. Link zum Website? Siehe auch Forenregeln, Punkt II.

  • Alles richtig. Tut mir leid.
    Inzwischen habe ich (wiedermal auf einer englisch-sprachigen Site) eine Lösung gefunden, die auch auf Anhieb funktionierte.

    PHP
    add_filter( 'site_transient_update_themes', 'disable_theme_update_notification' );

    Vielen Dank für Euer Interesse.

  • Dieser Code ist schlichtweg falsch, die darin verwendete Filterfunktion [FONT=Courier New]disable_theme_update_notification[/FONT] fehlt. Falls diese Zeile vermeintlich funktioniert, dann nur aus dem Grund, dass intern bei jedem Aufruf des Filters ein PHP Fehler auftritt und das fehlende eigentlich als Ergebnis erwartete Array anderweitig ab- bzw. aufgefangen wird.

    Für spätere Mitleser erneut der Hinweis: Theme Updates können sicherheitsrelevante Fehlerbehebungen enthalten und sollten nicht endlos aufgeschoben/ausgeblendet werden.

    Die hier als "Lösung" genannte Herangehensweise ist a) fehlerhaft und b) auch ohne Fehler keinesfalls empfehlenswert.

  • Der Weg über eine Benutzerrolle - wie oben schon beschrieben - ist sicherlich der beste Weg.
    Alternativ gibt es auch die Möglichkeit über ein Plugin: Easy Update Mangager. - wie oben auch schon beschrieben.
    Das hat den Vorteil, dass man sich kurzzeitig die Update Meldungen anzeigen lassen kann um diese abarbeiten und dann diese wieder zu verstecken. Bei Eintragungen in der wp-config oder functions-Datei ist es wesentlich komplizierter.

    @klaus999: Vielleicht magst du noch die fehlerhaften Inhalte löschen

  • Dieser Code ist schlichtweg falsch, die darin verwendete Filterfunktion [FONT=Courier New]disable_theme_update_notification[/FONT] fehlt. Falls diese Zeile vermeintlich funktioniert, dann nur aus dem Grund, dass intern bei jedem Aufruf des Filters ein PHP Fehler auftritt und das fehlende eigentlich als Ergebnis erwartete Array anderweitig ab- bzw. aufgefangen wird.

    Leider verstehe ich an dieser Stelle gar nichts. Das mag ja alles richtig sein, doch mit der von mir gefundenen "Lösung" ist es dem User real nicht möglich, ein Update des Theme durchzuführen. Ich kann das jederzeit. Getestet habe ich das mit einigen anderen Themes, indem ich dort die Versionsnummer manipuliert habe. War sie zu niedrig, war der Hinweis da, war sie richtig oder höher, war der Hinweis weg. Genau das wollte ich, und ich wollte es über die function-php.

  • Der Weg über eine Benutzerrolle - wie oben schon beschrieben - ist sicherlich der beste Weg.
    Alternativ gibt es auch die Möglichkeit über ein Plugin: Easy Update Mangager. - wie oben auch schon beschrieben.
    Das hat den Vorteil, dass man sich kurzzeitig die Update Meldungen anzeigen lassen kann um diese abarbeiten und dann diese wieder zu verstecken. Bei Eintragungen in der wp-config oder functions-Datei ist es wesentlich komplizierter.

    Nun, so kompliziert ist es nicht, wenn man "WPCode - Insert Headers, Footers, and Code Snippets" verwendet. Benutzerrolle geht natürlich, doch mein Bekannter ist nun mal der Admin seiner Site. Und ein weiteres Plugin soll es nicht sein.
    Dennoch danke für die Hinweise, auch wenn sie nichts mit meiner ursprünglichen Frage zu tun haben.

  • Leider verstehe ich an dieser Stelle gar nichts.

    • Der Code ist fehlerhaft.
    • Die darin genannte Funktion existiert nicht.
    • Jeder Seitenaufruf von WordPress erzeugt damit PHP Fehler.
    • Die Error Logs auf dem Server werden mit zig Meldungen wie dieser stetig zugemüllt:
    Code
    PHP Warning:  call_user_func_array() expects parameter 1 to be a valid callback, function 'disable_theme_update_notification' not found or invalid function name in /wp-includes/class-wp-hook.php
    • Die Error Logs auf dem Server werden mit zig Meldungen wie dieser stetig zugemüllt:

    Da das alles sehr profihaft klingt, habe ich mir mal alle vorhandenen error_log- und proxy_error_log-Dateien runtergeladen, entpackt und angesehen. Man weiß ja nie, und sicher ist sicher. Zu meiner Beruhigung konnte ich keine von dir vermuteten zig Meldungen finden - schon die geringe Größe der einzelnen Dateien ließ darauf schließen.

    Da du offensichtlich ein Profi (zumindest im Gegensatz zu mir) bist - warum schreibst du hier nicht einfach eine funktionierende Lösung des Problems hin? Würde mich gefreut haben.

  • Die Lösung des Problems steht in Antwort #6.

    Warum der erstgenannte Code nicht funktioniert, steht in Antwort #8.

    Warum der zweitgenannte Code fehlerhaft ist, steht in Antwort #10 und #15.

    5 Mal editiert, zuletzt von b3317133 (9. September 2022 um 22:24)

  • "Die Lösung des Problems" wäre ein funktionierender Code für die function-php.
    Ich kann nur ganz rudimentär PHP und will es mit 68 auch nicht mehr lernen.
    Vielen Dank.

  • Hier eine funktionierende Lösung:

    remove_action( 'load-update-core.php', 'wp_update_themes' );
    add_filter( 'pre_site_transient_update_themes', create_function( '$a', "return null;" ) );
    wp_clear_scheduled_hook( 'mng_17_update_themes' );

  • Die hier als "Lösung" genannte Herangehensweise wird a) mit einer aktuellen PHP Version einen [FONT=Courier New]Fatal error: Uncaught Error: Call to undefined function create_function() ...[/FONT] erzeugen und ist b) auch ohne Fehler keinesfalls empfehlenswert.

    Passende Lösungsansätze für das beschriebene Problem sind mehrfach oben aufgeführt.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!