Für Menschen · Seien Sie begeistert und Sie werden begeistern !
Nicht selten setzt man WordPress für Nicht-Administratoren ein, sei es als CMS oder Weblog, - darum sollten auch nicht alle Nutzerrollen eine Informationen über Plugin- und Core-Updates bekommen.
Um dies einfach und schnell zu realisieren, nutze ich eine kleine Abfrage in der functions.php des Themes. Mit Hilfe des Objektes edit_plugins (Rechte für Userlevel und Objekte lassen sich im Codex nachlesen) prüfe ich, ob es sich um einen User handelt, der diese Möglichkeit besitzt und die im Standard nur Administratoren zu Teil wird. Damit stelle ich sicher, dass auch nur diese Nutzer die Information über Aktualisierungen von Plugins und dem Core bekommen.
Nicht jeder will die Form der Funktionalitäten in ein Theme integrieren, wo sie sicher auch nicht unbedingt perfekt aufgehoben sind. Alternativ werde ich diese Lösung im Plugin „Secure WordPress“ integriert, so dass man sie dort über eine Auswahlseite aktivieren kann.
/**
* remove core-Update-Information
* @rights: http://codex.wordpress.org/Roles_and_Capabilities
*/
if ( !current_user_can( 'edit_plugins' ) ) {
// core update
add_action( 'init', create_function( '$a', "remove_action( 'init', 'wp_version_check' );" ) );
add_filter( 'pre_option_update_core', create_function( '$a', "return null;" ) );
// plugin update
add_action( 'admin_menu', create_function( '$a', "remove_action( 'load-plugins.php', 'wp_update_plugins' );" ) );
add_action( 'admin_init', create_function( '$a', "remove_action( 'admin_init', 'wp_update_plugins' );" ), 2 );
add_action( 'init', create_function( '$a', "remove_action( 'init', 'wp_update_plugins' );" ), 2 );
add_filter( 'pre_option_update_plugins', create_function( '$a', "return null;" ) );
}
Wer also den obigen Codeschnippsel nicht nutzen möchte und eine komfortable Verwaltung sucht, der wartet bitte ein wenig - die aktuelle Version kommt sicher in den nächsten Tagen der nutzt das Plugin Secure WordPress, in dem ich die Erweiterung nun drin habe.
händischer Spam:
Beachte die Kommentarregeln, jede Form von versuchtem Spam wird gelöscht. Warum und wieso steht in einem meiner Beiträge.
Bezug auf Textstellen:
Du kannst direkt bezug auf Textstellen im Beitrag nehmen. Dazu muss lediglich der Bereich im Artikel markiert werden; daraufhin erscheint ein Button, der den markierten Text in das Kommentarfeld übernimmt und als Zitat auszeichnet. Die Funktion ist nur bei aktivem JavaScript nutzbar.
xHTML:
Du kannst folgende Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <blockquote cite=""> <code> <pre> <em> <strong> <strike> <ul> <ul> <li>
Achte darauf, wenn du Code im Kommentar hinterlegen willst, dann muss der Code maskiert sein. Dann wird er nicht interpretiert. Der Code muss mit Hilfe von HTML-Entities dargestellt werden, d.h. dass man z.B. < als < und > als > einfügt.
E-Mail-Benachrichtigung bei neuen Kommentaren ?
Wenn der Haken in der Checkbox gesetzt ist, dann wirst du über neue Kommentare vie E-Mail informiert. Der Versand erfolgt nur, wenn du die URL in der Bestätigungs-E-Mail genutzt hast oder schon Abonnent hier im Blog bist.
Kommentar erscheint nicht:
Alle Kommentare werden manuell geprüft, freigegeben und nach Möglichkeit beantwortet. Bitte um etwas Geduld und Nachsicht.
Identifikationsbilder (Avatare):
Auf Gravatar.com kann man sich mit seiner E-Mail-Adresse registrieren und ein Bild hochladen, dann erscheint dieses Gravatar hier und in vielen weiteren Blogs.
Spamschutz:
Das Kommentarformular ist mit einem Spamschutz ausgerüstet. Solltest du diesen Artikel ohne JavaScript besuchen und kommentieren wollen, so muss du die Frage beantworten und das jeweilige Wort in das Textfeld eingeben.
bueltge.de [by:ltge.de] wird von Frank Bültge geführt, administriert und gestaltet. Alle Inhalte sind persönlich von mir ausgewählt und erstellt, nach bestem Gewissen und Können, was die Möglichkeit von Fehlern nicht ausschließt.
Das Weblog wird angetrieben von WordPress und aktuell gibt es 971 Beiträge, 19461 Kommentare in 14 Kategorien und 459 Tags.
Das Blog wird liebevoll mit xHTML & CSS in Handarbeit gestaltet. Erstellt mit ♥ zum Befüllen und Erhalten.
Design und Code ist unter Copyright
© 2001 - 2012 bueltge.de [by:ltge.de]
23. Januar 2009 um 09:51
Würde sich das nicht perfekt in Adminimize machen? Hat ja schließlich auch mit Einschränkungen von Userrollen zu tun. Dann musst du kein ganzes Plugin draus machen.
23. Januar 2009 um 10:01
Psst, lass mal ganz unauffällig das Apostroph aus dem Titel verschwinden
23. Januar 2009 um 10:23
@Evergreen: danke, gefixt
@FuNKer: nein, Adminimize greift nicht in die Berechtigung ein, es blendet nur diverse Bereiche aus um die Übersicht besser zu gestallten. Die Rechte lassen sich mit dem Role Manager verwalten. Aus meiner Sicht gehört die Info über Updates nur an Admins mitgeteilt, vielleicht ist es ja irgendwann so im Core, so lange packe ich es in mein Secure WP Plugin, welches ich eh bei vielen Nutzern einsetze.
23. Januar 2009 um 10:54
Gute Sache. Finde es auch nicht schön die Meldungen immer sichtbar für jeden ist.
23. Januar 2009 um 11:09
Fraaaaank!
Interessantes Snippet. Hilft ungemein, „lästige“ Fragen der Kunden zu minimieren oder mindert gar die Gefahr, dass einige Schlaue denken, dann selber rumschrauebn zu müssen. Der nächste Anruf lässt sich dann so einleiten: „Gestern ging alles noch …“
23. Januar 2009 um 12:58
@datenkind:
ja, ich weis es ja auch, aber manchmal schreibt man so vor sich hin oder holt Entwürfe aus dem Backup und schaut nicht nochmal - verdammtes Zeitproblem.
24. Januar 2009 um 00:46
Ist doch nicht schlimm, dafür hast du ja deine Leser!
29. Januar 2009 um 22:38
Ich war bis jetzt ein "stiller" Leser. Heute schließe ich mich mal der Gruppe an.
Bin auch schon gespannt auf die aktuelle Version.
5. Februar 2009 um 17:48
Hallo,
es wäre eine tolle Sache.
Habe den Code probehalber in das Theme eingebaut. Leider ist die Datenbank Query Abfrage um mehr als einen Drittel langsamer als vorher. Kann es sein, dass der Code das System bremst?
Gruss Ivan
6. Februar 2009 um 08:49
@Ivan: nein, die Filter kommen auch viel früher und damit sollte ich damit nix ändern. Alternativ kannst du es ja über mein Plugin aktivieren und schauen, ob es dann auch bremst.
6. Februar 2009 um 12:12
Hallo Frank,
ich möchte gerne nur dieses Update Info in einem Plugin. Könntest Du mir angeben, welchen Code ich in das eigene Plugin kopieren muss, um das Update Info auszublenden?
6. Februar 2009 um 12:16
Der obige Code macht nur das, wenn du das also in ein Plugin kopierst, einen Namen vergibst, dann geht das.
6. Februar 2009 um 13:24
Hallo Frank,
das dachte ich mir auch, beim aktivieren erscheint nur noch eine weisse Seite, weder Inhalt noch die Adminstration erscheint. Nur noch das löschen via FTP hilft.
6. Februar 2009 um 13:35
Dann liegt ein Fehler in deinem Plugin vor. Warum nutzt du nicht das meine und läßt die anderen Optionen deaktiviert, ist doch kein Mehraufwand. Ansonsten muss der Code in Funktionen und diese müssen angesprochen werden. Seit WP 2.5 prüft WP das. Alternativ kannst du auch mein Plugin nehmen und löscht die Bereiche, die du nicht brauchst, alle Funktionen und Abfragen sind mit Doku versehen.
6. Februar 2009 um 19:37
Danke Dir Frank
werde Dein Plugin installieren