Die WordPress-Funktionsdatei, bekannt als functions.php, ist ein leistungsstarkes Werkzeug, das mit jedem WordPress-Theme geliefert wird. Es funktioniert wie ein Plugin und ermöglicht es Ihnen, Ihrer Website ganz einfach individuellen Code hinzuzufügen.
Wir verwenden individuellen Code auf unseren Websites, wenn ein kurzes Stück Code verwendet werden kann. Diese Vielseitigkeit und Flexibilität von WordPress ermöglicht es uns, die Funktionalität mehrerer Plugins auf eine einfach zu verwaltende Weise zu kombinieren.
In diesem Artikel werden wir einige dieser praktischen und nützlichen Tricks für die Verwendung Ihrer WordPress-Funktionsdatei vorstellen, die Ihnen helfen, mehr aus Ihrer WordPress Website herauszuholen.
Was ist die Funktionsdatei in WordPress?
Die Datei functions.php ist eine WordPress-Theme-Datei, die in allen kostenlosen und Premium-WordPress-Themes enthalten ist.
Es fungiert als Plugin und ermöglicht Themenentwicklern, Themenfunktionen zu definieren. Benutzer können es auch verwenden, um ihre benutzerdefinierten Code-Snippets in WordPress hinzuzufügen.
Allerdings ist es nicht sinnvoll, individuell angepassten Code in einer Funktionsdatei zu speichern.
Wenn Sie Ihr Theme aktualisieren, wird die Datei functions.php überschrieben, und Sie verlieren Ihre individuell angepassten Code-Snippets. Sie können ein Snippet nicht deaktivieren, ohne es zu löschen.
Stattdessen empfehlen wir jedem, WPCode zu verwenden, ein kostenloses Plugin, mit dem Sie Code-Snippets in Ihre WordPress-Website einfügen können, ohne ein Theme, ein Plugin oder die WordPress-Kerndateien zu bearbeiten.
Warum empfehlen wir WPCode?
- Speichern Sie individuelle Codeschnipsel, ohne Kerndateien zu bearbeiten.
- Automatisches Einfügen von Codefragmenten an den gewünschten Stellen
- Jeder Codeschnipsel wird separat gespeichert und kann einzeln ausgeschaltet werden.
- Ein eingebauter Sicherheitsmechanismus deaktiviert ein Code-Snippet, wenn es auf Ihrer Website einen Fehler verursacht.
Als Bonus verfügt das WPCode-Plugin über eine umfangreiche Bibliothek mit vorkonfigurierten Code-Snippets (darunter viele aus dieser Liste). Sie können diese Codeschnipsel mit ein paar Klicks bereitstellen.
Nachfolgend finden Sie eine Liste der Punkte, die wir in diesem Artikel behandeln werden. Sie können zu einem Punkt springen, der Sie interessiert, oder einfach weitergehen:
- How to Add These Code Snippets to Your Website
- Remove WordPress Version Number
- Add a Custom Dashboard Logo
- Change the Footer in WordPress Admin Panel
- Add Custom Dashboard Widgets in WordPress
- Change the Default Gravatar in WordPress
- Dynamic Copyright Date in WordPress Footer
- Randomly Change the Background Color in WordPress
- Update WordPress URLs
- Add Additional Image Sizes in WordPress
- Add New Navigation Menus to Your Theme
- Add Author Profile Fields
- Adding Widget-Ready Areas or Sidebars in WordPress Themes
- Manipulate the RSS Feed Footer
- Add Featured Images to RSS Feeds
- Hide Login Errors in WordPress
- Disable Login by Email in WordPress
- Disable Search Feature in WordPress
- Delay Posts in RSS Feed
- Change Read More Text for Excerpts in WordPress
- Disable RSS Feeds in WordPress
- Change Excerpt Length in WordPress
- Add an Admin User in WordPress
- Disable Language Switcher on Login Page
- Show the Total Number of Registered Users in WordPress
- Exclude Specific Categories From RSS Feed
- Disable URL Links in WordPress Comments
- Add Odd and Even CSS Classes to WordPress Posts
- Add Additional File Types to Be Uploaded in WordPress
- Change Sender Name in WordPress Emails
- Add an Author Info Box in WordPress Posts
- Disable XML-RPC in WordPress
- Automatically Link Featured Images to Posts
- Disable Block Editor in WordPress
- Disable Block Widgets in WordPress
- Display the Last Updated Date in WordPress
- Use Lowercase Filenames for Uploads
- Disable WordPress Admin Bar on Frontend
- Change Howdy Admin Text in Admin Area
- Disable Code Editing in Block Editor
- Disable Plugin / Theme File Editor
- Disable New User Notification Emails
- Disable Automatic Update Email Notifications
- Add a Link to Easily Duplicate a Post
- Remove Welcome Panel From the WordPress Admin Dashboard
- Add a Featured Image Column for Posts in WordPress Admin
- Block WordPress Admin Area for Everyone Except Administrators
So fügen Sie diese Codeschnipsel zu Ihrer Website hinzu
Bevor wir beginnen, schauen wir uns an, wie Sie die Codeschnipsel aus diesem Artikel in Ihre WordPress-Funktionsdatei einfügen.
1. Hinzufügen von benutzerdefiniertem Code zur Funktionsdatei mit WPCode (empfohlen)
Zunächst müssen Sie das WPCode-Plugin installieren und aktivieren. Weitere Details finden Sie in unserer Schritt-für-Schritt-Anleitung für die Installation eines WordPress-Plugins.
Gehen Sie nach der Aktivierung auf die Seite Code Snippets “ + Snippet hinzufügen. Sie sehen die Code-Bibliothek von WPCode mit vielen hilfreichen benutzerdefinierten Code-Schnipseln, die bereits hinzugefügt wurden.
Wenn Ihr Codeschnipsel dasselbe tut wie die Schnipsel in der Bibliothek, dann können Sie den bereits hinzugefügten ausprobieren.
Alternativ können Sie auch auf den Link „leeres Snippet“ klicken, um mit dem Hinzufügen Ihres benutzerdefinierten Code-Snippets fortzufahren.
Geben Sie auf dem nächsten Bildschirm einen Titel für Ihren benutzerdefinierten Code ein. Das kann alles sein, was Ihnen hilft zu erkennen, was dieses Code-Snippet tut.
Als nächstes müssen Sie den „Code-Typ“ auswählen. Wenn Sie einen Code hinzufügen, der in der Datei functions.php funktioniert, müssen Sie „PHP Snippet“ auswählen.
Darunter müssen Sie Ihren eigenen Code kopieren und in das Feld „Codevorschau“ einfügen.
Schließlich müssen Sie Ihr Snippet als „aktiv“ festlegen und auf die Schaltfläche „Snippet speichern“ klicken.
Das gespeicherte Snippet wird nun so ausgeführt, als hätten Sie es der Datei functions.php hinzugefügt.
Bei Bedarf können Sie den Vorgang wiederholen, um weitere Snippets hinzuzufügen. Sie können ein Snippet auch deaktivieren, ohne es zu löschen.
2. Benutzerdefinierten Code direkt in die Funktionsdatei einfügen
Die WPCode-Methode ist immer besser als das Hinzufügen von Code in die Funktionsdatei des Themes.
Manche Benutzer schreiben jedoch Code für das benutzerdefinierte WordPress-Theme eines Kunden oder ziehen es einfach vor, Code in die Datei functions.php einzufügen.
In diesem Fall können Sie folgenden Code in die Datei functions.php Ihres WordPress-Themes einfügen.
Stellen Sie zunächst mit einem FTP-Client eine Verbindung zu Ihrer WordPress-Website her. Sobald Sie verbunden sind, navigieren Sie zum Ordner /wp-content/themes/your-wordpress-theme/.
Dort finden Sie die Datei functions.php. Klicken Sie einfach mit der rechten Maustaste und wählen Sie „Bearbeiten“ oder laden Sie die Datei zur Bearbeitung auf Ihren Computer herunter.
Sie können es mit jedem einfachen Texteditor wie Notepad oder TextEdit bearbeiten.
Blättern Sie dann bis zum Ende der Datei functions.php und fügen Sie dort Ihren Code ein. Sie können Ihre Änderungen speichern und die aktualisierte Datei functions.php in Ihren Themenordner hochladen.
Sie können nun Ihre WordPress-Website besuchen, um Ihren benutzerdefinierten Code in Aktion zu sehen.
Schauen wir uns nun 46 verschiedene nützliche Tricks für die WordPress-Funktionsdatei an.
1. WordPress Versionsnummer entfernen
Sie sollten immer die neueste Version von WordPress verwenden. Möglicherweise möchten Sie jedoch die WordPress-Versionsnummer von Ihrer Website entfernen.
Fügen Sie diesen Codeschnipsel einfach in Ihre Funktionsdatei oder als neuen WPCode-Snippet ein:
function wpb_remove_version() {
return '';
}
add_filter('the_generator', 'wpb_remove_version');
Detaillierte Anweisungen finden Sie in unserem Leitfaden zum richtigen Entfernen der WordPress-Versionsnummer.
2. Hinzufügen eines benutzerdefinierten Dashboard-Logos
Sie möchten Ihren WordPress-Verwaltungsbereich mit einem White-Label versehen? Der erste Schritt besteht darin, ein individuelles Dashboard-Logo hinzuzufügen.
Zunächst müssen Sie Ihr benutzerdefiniertes Logo als custom-logo.png in den Bilderordner Ihres Themes hochladen. Ihr benutzerdefiniertes Logo sollte im Verhältnis 1:1 (ein quadratisches Bild) in 16×16 Pixel sein.
Danach können Sie diesen Code in die Funktionsdatei Ihres Themes oder als neues WPCode-Snippet einfügen:
function wpb_custom_logo() {
echo '
<style type="text/css">
#wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon:before {
background-image: url(' . get_bloginfo('stylesheet_directory') . '/images/custom-logo.png) !important;
background-position: 0 0;
color:rgba(0, 0, 0, 0);
}
#wpadminbar #wp-admin-bar-wp-logo.hover > .ab-item .ab-icon {
background-position: 0 0;
}
</style>
';
}
//hook into the administrative header output
add_action('wp_before_admin_bar_render', 'wpb_custom_logo');
Weitere Einzelheiten finden Sie in unserer Anleitung zum Hinzufügen eines benutzerdefinierten Dashboard-Logos in WordPress.
3. Ändern des Footers im WordPress Adminpanel
Die Fußzeile im WordPress-Verwaltungsbereich zeigt die Nachricht ‚Thank you for creating with WordPress‘. Sie können sie durch Hinzufügen dieses Codes nach Belieben ändern:
function remove_footer_admin () {
echo 'Fueled by <a href="http://www.wordpress.org" target="_blank">WordPress</a> | WordPress Tutorials: <a href="https://www.wpbeginner.com" target="_blank">WPBeginner</a></p>';
}
add_filter('admin_footer_text', 'remove_footer_admin');
Fühlen Sie sich frei, den Text und die Links zu ändern, die Sie hinzufügen möchten. So sieht es auf unserer Testseite aus.
4. Hinzufügen benutzerdefinierter Dashboard-Widgets in WordPress
Sie kennen wahrscheinlich die Widgets, die viele Plugins und Themes dem WordPress-Dashboard hinzufügen. Sie können selbst eines hinzufügen, indem Sie den folgenden Code einfügen:
add_action('wp_dashboard_setup', 'my_custom_dashboard_widgets');
function my_custom_dashboard_widgets() {
global $wp_meta_boxes;
wp_add_dashboard_widget('custom_help_widget', 'Theme Support', 'custom_dashboard_help');
}
function custom_dashboard_help() {
echo '<p>Welcome to Custom Blog Theme! Need help? Contact the developer <a href="mailto:yourusername@gmail.com">here</a>. For WordPress Tutorials visit: <a href="https://www.wpbeginner.com" target="_blank">WPBeginner</a></p>';
}
So würde es aussehen:
Weitere Informationen finden Sie in unserem Tutorial über das Hinzufügen von benutzerdefinierten Dashboard-Widgets in WordPress.
5. Ändern Sie den Standard-Gravatar in WordPress
Haben Sie den Standard-Avatar des mysteriösen Mannes in Blogs gesehen? Sie können ihn ganz einfach durch Ihren eigenen Avatar mit Ihrem Markenzeichen ersetzen.
Laden Sie einfach das Bild hoch, das Sie als Standard-Avatar verwenden möchten, und fügen Sie diesen Code in Ihre Funktionsdatei oder das WPCode-Plugin ein:
function wpb_custom_default_gravatar( $avatar_defaults ) {
$myavatar = 'https://example.com/wp-content/uploads/2022/10/dummygravatar.png';
$avatar_defaults[$myavatar] = 'Default Gravatar';
return $avatar_defaults;
}
add_filter( 'avatar_defaults', 'wpb_custom_default_gravatar' );
Jetzt können Sie die Seite Einstellungen “ Diskussion aufrufen und Ihren Standard-Avatar auswählen.
Detaillierte Anweisungen finden Sie in unserer Anleitung zum Ändern des Standard-Gravatars in WordPress.
6. Dynamisches Copyright-Datum im WordPress-Footer
Sie können einfach ein Copyright-Datum hinzufügen, indem Sie die Fußzeilenvorlage in Ihrem Thema bearbeiten. Es wird jedoch nicht angezeigt, wann Ihre Website gestartet wurde, und es wird nicht automatisch im folgenden Jahr geändert.
Dieser Code kann ein dynamisches Copyright-Datum in der WordPress-Fußzeile hinzufügen:
function wpb_copyright() {
global $wpdb;
$copyright_dates = $wpdb->get_results("
SELECT
YEAR(min(post_date_gmt)) AS firstdate,
YEAR(max(post_date_gmt)) AS lastdate
FROM
$wpdb->posts
WHERE
post_status = 'publish'
");
$output = '';
if($copyright_dates) {
$copyright = "© " . $copyright_dates[0]->firstdate;
if($copyright_dates[0]->firstdate != $copyright_dates[0]->lastdate) {
$copyright .= '-' . $copyright_dates[0]->lastdate;
}
$output = $copyright;
}
return $output;
}
Nachdem Sie diese Funktion hinzugefügt haben, müssen Sie Ihre Datei footer.php öffnen und den folgenden Code an der Stelle einfügen, an der Sie das dynamische Copyright-Datum anzeigen möchten:
<?php echo wpb_copyright(); ?>
Diese Funktion sucht nach dem Datum Ihres ersten Beitrags und dem Datum Ihres letzten Beitrags. Sie gibt dann die Jahre zurück, wo immer Sie die Funktion aufrufen.
Tipp: Wenn Sie das WPCode-Plugin verwenden, können Sie die beiden Code-Snippets kombinieren. Wählen Sie dann im Abschnitt „Einfügung“ der Snippet-Einstellungen die Position „Site Wide Footer“. Dadurch wird das Copyright-Datum automatisch in der Fußzeile angezeigt, ohne dass Sie die Datei footer.php Ihres Themes bearbeiten müssen.
Weitere Einzelheiten finden Sie in unserer Anleitung zum Hinzufügen dynamischer Copyright-Daten in WordPress.
7. Zufällige Änderung der Hintergrundfarbe in WordPress
Möchten Sie die Hintergrundfarbe Ihres WordPress-Blogs bei jedem Besuch und Neuladen der Seite zufällig ändern? Hier erfahren Sie, wie Sie dies ganz einfach tun können.
Fügen Sie zunächst diesen Code in die Funktionsdatei Ihres Themes oder in das WPCode-Plugin ein:
function wpb_bg() {
$rand = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');
$color ='#'.$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].
$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)];
echo $color;
}
Als nächstes müssen Sie die Datei header.php in Ihrem Thema bearbeiten. Suchen Sie den <body>-Tag
und ersetzen Sie ihn durch diese Zeile:
<body <?php body_class(); ?> style="background-color:<?php wpb_bg();?>">
Sie können nun Ihre Änderungen speichern und Ihre Website besuchen, um den Code in Aktion zu sehen.
Weitere Details und alternative Methoden finden Sie in unserem Tutorial zum zufälligen Ändern der Hintergrundfarbe in WordPress.
8. WordPress-URLs aktualisieren
Wenn Ihre WordPress-Anmeldeseite ständig aktualisiert wird oder Sie nicht auf den Verwaltungsbereich zugreifen können, müssen Sie die WordPress-URLs aktualisieren.
Eine Möglichkeit, dies zu tun, ist die Verwendung der Datei wp-config.php. Wenn Sie dies tun, können Sie jedoch nicht die richtige Adresse auf der Einstellungsseite festlegen. Die Felder WordPress-URL und Site-URL sind dann gesperrt und können nicht bearbeitet werden.
Fügen Sie stattdessen einfach diesen Code in Ihre Funktionsdatei ein, um das Problem zu beheben:
update_option( 'siteurl', 'https://example.com' );
update_option( 'home', 'https://example.com' );
Vergessen Sie nicht, example.com durch Ihren Domänennamen zu ersetzen.
Sobald Sie eingeloggt sind, können Sie im WordPress-Verwaltungsbereich auf die Seite Einstellungen gehen und die URLs festlegen.
Danach sollten Sie den Code entfernen, den Sie der Funktionsdatei oder WPCode hinzugefügt haben. Andernfalls werden diese URLs bei jedem Zugriff auf Ihre Website aktualisiert.
9. Zusätzliche Bildgrößen in WordPress hinzufügen
WordPress erzeugt automatisch mehrere Bildgrößen, wenn Sie ein Bild hochladen. Sie können auch zusätzliche Bildgrößen zur Verwendung in Ihrem Theme erstellen.
Fügen Sie diesen Code einfach in die Funktionsdatei Ihres Themes oder als WPCode-Snippet ein:
add_image_size( 'sidebar-thumb', 120, 120, true ); // Hard Crop Mode
add_image_size( 'homepage-thumb', 220, 180 ); // Soft Crop Mode
add_image_size( 'singlepost-thumb', 590, 9999 ); // Unlimited Height Mode
Mit diesem Code werden drei neue Bilder in unterschiedlichen Größen erstellt. Sie können den Code nach Belieben an Ihre Anforderungen anpassen.
Mit diesem Code können Sie dann an jeder beliebigen Stelle in Ihrem Thema eine Bildgröße anzeigen:
<?php the_post_thumbnail( 'homepage-thumb' ); ?>
Detaillierte Anweisungen finden Sie in unserem Leitfaden zur Erstellung zusätzlicher Bildgrößen in WordPress.
10. Neue Navigationsmenüs zu Ihrem Thema hinzufügen
WordPress ermöglicht es Theme-Entwicklern, Navigationsmenüs zu definieren und diese dann anzuzeigen.
Sie können diesen Code in die Funktionsdatei Ihres Themas oder als neues WPCode-Snippet einfügen, um eine neue Menüposition in Ihrem Thema zu definieren:
function wpb_custom_new_menu() {
register_nav_menu('my-custom-menu',__( 'My Custom Menu' ));
}
add_action( 'init', 'wpb_custom_new_menu' );
Sie können nun in Ihrem WordPress-Dashboard zu Erscheinungsbild “ Menüs gehen und unter die Option „Mein benutzerdefiniertes Menü“ als Themenstandort sehen.
Hinweis: Dieser Code funktioniert auch bei Block-Themes mit der vollständigen Website-Bearbeitungsfunktion. Wenn Sie ihn hinzufügen, wird der Bildschirm „Menüs“ unter „Erscheinungsbild“ aktiviert.
Nun müssen Sie diesen Code an der Stelle in Ihr Thema einfügen, an der Sie das Navigationsmenü anzeigen möchten:
<?php
wp_nav_menu( array(
'theme_location' => 'my-custom-menu',
'container_class' => 'custom-menu-class' ) );
?>
Detaillierte Anweisungen finden Sie in unserer Anleitung zum Hinzufügen benutzerdefinierter Navigationsmenüs in WordPress-Themes.
11. Felder des Autorenprofils hinzufügen
Möchten Sie zusätzliche Felder zu Ihren Autorenprofilen in WordPress hinzufügen? Das können Sie ganz einfach tun, indem Sie diesen Code in Ihre Funktionsdatei oder als neues WPCode-Snippet einfügen:
function wpb_new_contactmethods( $contactmethods ) {
// Add Twitter
$contactmethods['twitter'] = 'Twitter';
//add Facebook
$contactmethods['facebook'] = 'Facebook';
return $contactmethods;
}
add_filter('user_contactmethods','wpb_new_contactmethods',10,1);
Dieser Code fügt Twitter- und Facebook-Felder zu Benutzerprofilen in WordPress hinzu.
Sie können diese Felder nun in Ihrer Autorenvorlage wie folgt anzeigen:
<?php echo get_the_author_meta('twitter') ?>
Vielleicht interessiert Sie auch unsere Anleitung zum Hinzufügen zusätzlicher Benutzerprofilfelder in der WordPress-Registrierung.
12. Hinzufügen von Widget-fähigen Bereichen oder Seitenleisten in WordPress-Themes
Dies ist einer der am häufigsten verwendeten Codeschnipsel, und viele Entwickler wissen bereits, wie man Widget-bereite Bereiche oder Seitenleisten zu WordPress-Themes hinzufügt. Aber es verdient es, auf dieser Liste für die Leute zu sein, die es nicht wissen.
Sie können den folgenden Code in Ihre functions.php-Datei oder als neues WPCode-Snippet einfügen:
// Register Sidebars
function custom_sidebars() {
$args = array(
'id' => 'custom_sidebar',
'name' => __( 'Custom Widget Area', 'text_domain' ),
'description' => __( 'A custom widget area', 'text_domain' ),
'before_title' => '<h3 class="widget-title">',
'after_title' => '</h3>',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => '</aside>',
);
register_sidebar( $args );
}
add_action( 'widgets_init', 'custom_sidebars' );
Hinweis: Dieser Code funktioniert auch bei Block-Themes mit der vollständigen Website-Bearbeitungsfunktion. Durch das Hinzufügen wird der Bildschirm „Widgets“ unter „Erscheinungsbild“ aktiviert.
Sie können nun die Seite Erscheinungsbild “ Widgets besuchen und Ihren neuen benutzerdefinierten Widget-Bereich sehen.
Um diese Seitenleiste oder diesen Widget-Bereich auf Ihrer Website anzuzeigen, müssen Sie den folgenden Code in die Vorlage einfügen, in der Sie ihn anzeigen möchten:
<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('custom_sidebar') ) : ?>
<!–Default sidebar info goes here–>
<?php endif; ?>
Weitere Einzelheiten finden Sie in unserer Anleitung zum Hinzufügen von dynamischen Widget-Bereichen und Seitenleisten in WordPress.
13. Manipulation der RSS-Feed-Fußzeile
Kennen Sie Blogs, die ihre Werbung in ihren RSS-Feeds unter jedem Beitrag einfügen? Sie können dies mit einer einfachen Funktion erreichen. Fügen Sie einfach den folgenden Code ein:
function wpbeginner_postrss($content) {
if(is_feed()){
$content = 'This post was written by Syed Balkhi '.$content.'Check out WPBeginner';
}
return $content;
}
add_filter('the_excerpt_rss', 'wpbeginner_postrss');
add_filter('the_content', 'wpbeginner_postrss');
Weitere Informationen finden Sie in unserem Leitfaden zum Hinzufügen von Inhalten und zur vollständigen Manipulation Ihrer RSS-Feeds.
14. Featured Images zu RSS-Feeds hinzufügen
Die Post-Thumbnails oder Featured Images werden normalerweise nur im Design Ihrer Website angezeigt. Mit dem folgenden Code können Sie diese Funktion einfach auf Ihren RSS-Feed ausweiten:
function rss_post_thumbnail($content) {
global $post;
if(has_post_thumbnail($post->ID)) {
$content = '<p>' . get_the_post_thumbnail($post->ID) .
'</p>' . get_the_content();
}
return $content;
}
add_filter('the_excerpt_rss', 'rss_post_thumbnail');
add_filter('the_content_feed', 'rss_post_thumbnail');
Weitere Einzelheiten finden Sie in unserer Anleitung zum Hinzufügen von Miniaturansichten zu Ihrem WordPress-RSS-Feed.
15. Login-Fehler in WordPress ausblenden
Hacker können Anmeldefehler nutzen, um zu erraten, ob sie einen falschen Benutzernamen oder ein falsches Passwort eingegeben haben. Indem Sie Anmeldefehler in WordPress ausblenden, können Sie Ihren Anmeldebereich und Ihre WordPress-Website sicherer machen.
Fügen Sie einfach den folgenden Code in die Funktionsdatei Ihres Themes oder als neues WPCode-Snippet ein:
function no_wordpress_errors(){
return 'Something is wrong!';
}
add_filter( 'login_errors', 'no_wordpress_errors' );
Jetzt wird den Benutzern eine allgemeine Meldung angezeigt, wenn sie einen falschen Benutzernamen oder ein falsches Kennwort eingeben.
Weitere Informationen finden Sie in unserem Tutorial zur Deaktivierung von Login-Hinweisen in WordPress-Fehlermeldungen.
16. Anmeldung per E-Mail in WordPress deaktivieren
WordPress erlaubt es Benutzern, sich mit ihrem Benutzernamen oder ihrer E-Mail-Adresse anzumelden. Sie können die Anmeldung per E-Mail in WordPress ganz einfach deaktivieren, indem Sie diesen Code zu Ihrer Funktionsdatei oder als neues WPCode-Snippet hinzufügen:
remove_filter( 'authenticate', 'wp_authenticate_email_password', 20 );
Weitere Informationen finden Sie in unserer Anleitung zum Deaktivieren der Funktion „Anmeldung per E-Mail“ in WordPress.
17. Deaktivieren der Funktion „Suchen“ in WordPress
Wenn Sie die Suchfunktion Ihrer WordPress-Website deaktivieren möchten, fügen Sie diesen Code einfach in Ihre Funktionsdatei oder in ein neues WPCode-Snippet ein:
function wpb_filter_query( $query, $error = true ) {
if ( is_search() ) {
$query->is_search = false;
$query->query_vars[s] = false;
$query->query[s] = false;
if ( $error == true )
$query->is_404 = true;
}}
Dieser Code deaktiviert einfach die Suchabfrage, indem er sie verändert und einen 404-Fehler anstelle von Suchergebnissen zurückgibt.
Weitere Informationen finden Sie in unserem Tutorial zur Deaktivierung der WordPress-Suchfunktion.
Pro-Tipp: Anstatt die WordPress-Suche aufzugeben, empfehlen wir, SearchWP auszuprobieren. Es ist das beste WordPress-Such-Plugin auf dem Markt, mit dem Sie eine leistungsstarke und anpassbare Suchfunktion zu Ihrer Website hinzufügen können.
18. Beiträge im RSS-Feed verzögern
Manchmal kann es vorkommen, dass Sie einen Artikel mit einem grammatikalischen Fehler oder einem Rechtschreibfehler veröffentlichen.
Der Fehler wird live geschaltet und an Ihre RSS-Feed-Abonnenten verteilt. Wenn Sie in Ihrem WordPress-Blog E-Mail-Abonnements haben, erhalten auch diese Abonnenten eine Benachrichtigung.
Fügen Sie diesen Code einfach in die Funktionsdatei Ihres Themes oder als neues WPCode-Snippet ein, um Beiträge in Ihrem RSS-Feed zu verzögern:
function publish_later_on_feed($where) {
global $wpdb;
if ( is_feed() ) {
// timestamp in WP-format
$now = gmdate('Y-m-d H:i:s');
// value for wait; + device
$wait = '10'; // integer
// http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_timestampdiff
$device = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
// add SQL-sytax to default $where
$where .= " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$now') > $wait ";
}
return $where;
}
add_filter('posts_where', 'publish_later_on_feed');
In diesem Code haben wir 10 Minuten als $wait oder Verzögerungszeit verwendet. Sie können diese Zeit in eine beliebige Anzahl von Minuten ändern.
Eine Plugin-Methode und weitere Informationen finden Sie in unserer ausführlichen Anleitung, wie Sie das Erscheinen von Beiträgen im WordPress-RSS-Feed verzögern können.
19. Weiterlesen Text für Auszüge in WordPress ändern
Möchten Sie den Text, der nach dem Auszug in Ihren Beiträgen erscheint, ändern? Fügen Sie diesen Code einfach in die Funktionsdatei Ihres Themes oder als neues WPCode-Snippet ein:
function modify_read_more_link() {
return '<a class="more-link" href="' . get_permalink() . '">Your Read More Link Text</a>';
}
add_filter( 'the_content_more_link', 'modify_read_more_link' );
20. RSS-Feeds in WordPress deaktivieren
Nicht alle Websites benötigen RSS-Feeds. Wenn Sie RSS-Feeds auf Ihrer WordPress-Website deaktivieren möchten, fügen Sie diesen Code in die Funktionsdatei Ihres Themes oder als neues WPCode-Snippet ein:
function new_excerpt_more($more) {
global $post;
return '<a class="moretag"
href="'. get_permalink($post->ID) . '">Your Read More Link Text</a>';
}
add_filter('excerpt_more', 'new_excerpt_more');
Weitere Informationen zu einer Plugin-Methode finden Sie in unserer Anleitung zum Deaktivieren von RSS Feeds in WordPress.
21. Auszugslänge in WordPress ändern
WordPress begrenzt die Länge von Auszügen auf 55 Wörter. Sie können diesen Code zu Ihrer Funktionsdatei oder als neues WPCode-Snippet hinzufügen, wenn Sie dies ändern möchten:
function new_excerpt_length($length) {
return 100;
}
add_filter('excerpt_length', 'new_excerpt_length');
Ändern Sie einfach 100 in die Anzahl der Wörter, die Sie in den Auszügen anzeigen möchten.
Für alternative Methoden können Sie sich unseren Leitfaden zur Anpassung von WordPress-Auszügen ansehen (keine Codierung erforderlich).
22. Hinzufügen eines Admin-Benutzers in WordPress
Wenn Sie Ihr WordPress-Passwort und Ihre E-Mail-Adresse vergessen haben, können Sie einen Admin-Benutzer hinzufügen, indem Sie diesen Code mit einem FTP-Client in die Funktionsdatei Ihres Themes einfügen:
function wpb_admin_account(){
$user = 'Username';
$pass = 'Password';
$email = 'email@domain.com';
if ( !username_exists( $user ) && !email_exists( $email ) ) {
$user_id = wp_create_user( $user, $pass, $email );
$user = new WP_User( $user_id );
$user->set_role( 'administrator' );
} }
add_action('init','wpb_admin_account');
Vergessen Sie nicht, die Felder für den Benutzernamen, das Passwort und die E-Mail-Adresse auszufüllen.
Wichtig! Vergessen Sie nicht, den Code aus Ihrer Funktionsdatei zu löschen, sobald Sie sich bei Ihrer WordPress-Website angemeldet haben.
Weitere Informationen zu diesem Thema finden Sie in unserem Tutorial zum Hinzufügen eines Admin-Benutzers in WordPress per FTP.
23. Sprachumschalter auf der Anmeldeseite deaktivieren
Wenn Sie eine mehrsprachige Website betreiben, zeigt WordPress auf der Anmeldeseite einen Sprachwähler an. Sie können dies ganz einfach deaktivieren, indem Sie den folgenden Code in Ihre functions.php-Datei oder als neues WPCode-Snippet einfügen:
add_filter( 'login_display_language_dropdown', '__return_false' );
24. Anzeigen der Gesamtzahl der registrierten Benutzer in WordPress
Möchten Sie die Gesamtzahl der registrierten Benutzer auf Ihrer WordPress-Website anzeigen? Fügen Sie diesen Code einfach in die Funktionsdatei Ihres Themes oder als neues WPCode-Snippet ein:
function wpb_user_count() {
$usercount = count_users();
$result = $usercount['total_users'];
return $result;
}
// Creating a shortcode to display user count
add_shortcode('user_count', 'wpb_user_count');
Dieser Code erstellt einen Shortcode, mit dem Sie die Gesamtzahl der registrierten Benutzer auf Ihrer Website anzeigen können.
Jetzt müssen Sie nur noch den Shortcode [user_count]
zu Ihrem Beitrag oder der Seite hinzufügen, auf der Sie die Gesamtzahl der Benutzer anzeigen möchten.
Weitere Informationen und eine Plugin-Methode finden Sie in unserem Tutorial, wie Sie die Gesamtzahl der registrierten Benutzer in WordPress anzeigen können.
25. Bestimmte Kategorien vom RSS-Feed ausschließen
Möchten Sie bestimmte Kategorien von Ihrem WordPress-RSS-Feed ausschließen? Sie können diesen Code in die Funktionsdatei Ihres Themes oder als neues WPCode-Snippet einfügen:
function exclude_category($query) {
if ( $query->is_feed ) {
$query->set('cat', '-5, -2, -3');
}
return $query;
}
add_filter('pre_get_posts', 'exclude_category');
26. URL-Links in WordPress-Kommentaren deaktivieren
Standardmäßig wandelt WordPress eine URL in einen klickbaren Link in Kommentaren um.
Sie können dies verhindern, indem Sie den folgenden Code zu Ihrer Funktionsdatei oder als neuen WPCode-Snippet hinzufügen:
remove_filter( 'comment_text', 'make_clickable', 9 );
Weitere Informationen finden Sie in unserem Artikel über die Deaktivierung der automatischen Verlinkung in WordPress-Kommentaren.
27. Hinzufügen von ungeraden und geraden CSS-Klassen zu WordPress-Beiträgen
Sie haben vielleicht schon gesehen, dass WordPress-Themes eine ungerade oder gerade Klasse für WordPress-Kommentare verwenden. Dies hilft den Nutzern zu erkennen, wo ein Kommentar endet und der nächste beginnt.
Sie können die gleiche Technik für Ihre WordPress-Beiträge verwenden. Es sieht ästhetisch ansprechend aus und hilft den Nutzern, Seiten mit vielen Inhalten schnell zu durchsuchen.
Fügen Sie diesen Code einfach in die Funktionsdatei Ihres Themes ein:
function oddeven_post_class ( $classes ) {
global $current_class;
$classes[] = $current_class;
$current_class = ($current_class == 'odd') ? 'even' : 'odd';
return $classes;
}
add_filter ( 'post_class' , 'oddeven_post_class' );
global $current_class;
$current_class = 'odd';
Dieser Code fügt den WordPress-Beiträgen einfach eine gerade oder ungerade Klasse hinzu. Sie können nun benutzerdefinierte CSS hinzufügen, um sie anders zu gestalten.
Hier ist ein Beispielcode, der Ihnen den Einstieg erleichtern soll:
.even {
background:#f0f8ff;
}
.odd {
background:#f4f4fb;
}
Das Endergebnis wird in etwa so aussehen:
Benötigen Sie eine ausführlichere Anleitung? Werfen Sie einen Blick auf unser Tutorial über das Hinzufügen von ungeraden/geraden Klassen zu Ihren Beiträgen in WordPress-Themes.
28. Hinzufügen zusätzlicher Dateitypen, die in WordPress hochgeladen werden können
Standardmäßig erlaubt WordPress das Hochladen einer begrenzten Anzahl der gebräuchlichsten Dateitypen. Sie können sie jedoch erweitern, um andere Dateitypen zuzulassen.
Fügen Sie einfach diesen Code in die Funktionsdatei Ihres Themes ein:
function my_myme_types($mime_types){
$mime_types['svg'] = 'image/svg+xml'; //Adding svg extension
$mime_types['psd'] = 'image/vnd.adobe.photoshop'; //Adding photoshop files
return $mime_types;
}
add_filter('upload_mimes', 'my_myme_types', 1, 1);
Mit diesem Code können Sie SVG- und PSD-Dateien in WordPress hochladen.
Sie müssen die Mime-Typen für die Dateitypen finden, die Sie zulassen wollen, und sie dann im Code verwenden.
Weitere Informationen zu diesem Thema finden Sie in unserem Tutorial über das Hinzufügen zusätzlicher Dateitypen zum Hochladen in WordPress.
29. Absendernamen in WordPress-E-Mails ändern
WordPress verwendet standardmäßig eine nicht existierende E-Mail-Adresse (wordpress@yourdomain.com), um ausgehende E-Mails zu versenden.
Diese E-Mail-Adresse könnte von E-Mail-Anbietern als Spam eingestuft werden.
Die Verwendung des WP Mail SMTP-Plugins ist der richtige Weg, um dies zu beheben.
Es behebt E-Mail-Zustellbarkeitsprobleme und ermöglicht es Ihnen, eine tatsächliche E-Mail-Adresse für den Versand Ihrer WordPress-E-Mails zu wählen.
Weitere Informationen finden Sie in unserer Anleitung zur Behebung des Problems, dass WordPress keine E-Mails sendet.
Wenn Sie diese Adresse jedoch schnell in eine echte E-Mail-Adresse ändern möchten, können Sie den folgenden Code in Ihre Funktionsdatei oder als neuen WPCode-Snippet einfügen:
// Function to change email address
function wpb_sender_email( $original_email_address ) {
return 'tim.smith@example.com';
}
// Function to change sender name
function wpb_sender_name( $original_email_from ) {
return 'Tim Smith';
}
// Hooking up our functions to WordPress filters
add_filter( 'wp_mail_from', 'wpb_sender_email' );
add_filter( 'wp_mail_from_name', 'wpb_sender_name' );
Vergessen Sie nicht, die E-Mail-Adresse und den Namen durch Ihre eigenen Angaben zu ersetzen.
Das Problem bei dieser Methode ist, dass WordPress immer noch die mail()-Funktion zum Senden von E-Mails verwendet, und solche E-Mails landen höchstwahrscheinlich im Spam.
Bessere Alternativen finden Sie in unserer Anleitung zum Ändern des Absendernamens in ausgehenden WordPress-E-Mails.
30. Hinzufügen einer Autoren-Infobox in WordPress-Beiträgen
Wenn Sie eine Website mit mehreren Autoren betreiben und die Biografien der Autoren am Ende Ihrer Beiträge anzeigen möchten, können Sie diese Methode ausprobieren.
Fügen Sie diesen Code zunächst in Ihre Funktionsdatei oder als neues WPCode-Snippet ein:
function wpb_author_info_box( $content ) {
global $post;
// Detect if it is a single post with a post author
if ( is_single() && isset( $post->post_author ) ) {
// Get author's display name
$display_name = get_the_author_meta( 'display_name', $post->post_author );
// If display name is not available then use nickname as display name
if ( empty( $display_name ) )
$display_name = get_the_author_meta( 'nickname', $post->post_author );
// Get author's biographical information or description
$user_description = get_the_author_meta( 'user_description', $post->post_author );
// Get author's website URL
$user_website = get_the_author_meta('url', $post->post_author);
// Get link to the author archive page
$user_posts = get_author_posts_url( get_the_author_meta( 'ID' , $post->post_author));
// Get User Gravatar
$user_gravatar = get_avatar( get_the_author_meta( 'ID' , $post->post_author) , 90 );
if ( ! empty( $display_name ) )
$author_details = '<p class="author_name">About ' . $display_name . '</p>';
if ( ! empty( $user_description ) )
// Author avatar and bio will be displayed if author has filled in description.
$author_details .= '<p class="author_details">' . $user_gravatar . nl2br( $user_description ). '</p>';
$author_details .= '<p class="author_links"><a href="'. $user_posts .'">View all posts by ' . $display_name . '</a>';
// Check if author has a website in their profile
if ( ! empty( $user_website ) ) {
// Display author website link
$author_details .= ' | <a href="' . $user_website .'" target="_blank" rel="nofollow noopener">Website</a></p>';
} else {
// if there is no author website then just close the paragraph
$author_details .= '</p>';
}
// Pass all this info to post content
$content = $content . '<footer class="author_bio_section" >' . $author_details . '</footer>';
}
return $content;
}
// Add our function to the post content filter
add_action( 'the_content', 'wpb_author_info_box' );
// Allow HTML in author bio section
remove_filter('pre_user_description', 'wp_filter_kses');
Als Nächstes müssen Sie einige benutzerdefinierte CSS hinzufügen, damit es besser aussieht.
Sie können dieses CSS-Beispiel als Ausgangspunkt verwenden:
.author_bio_section{
background: none repeat scroll 0 0 #F5F5F5;
padding: 15px;
border: 1px solid #ccc;
}
.author_name{
font-size:16px;
font-weight: bold;
}
.author_details img {
border: 1px solid #D8D8D8;
border-radius: 50%;
float: left;
margin: 0 10px 10px 0;
}
So wird Ihre Autorenbox aussehen:
Eine Plugin-Methode und detailliertere Anweisungen finden Sie in unserem Artikel über das Hinzufügen eines Autoreninformationsfelds in WordPress-Beiträgen.
31. XML-RPC in WordPress deaktivieren
XML-RPC ist eine Methode, die es Anwendungen von Drittanbietern ermöglicht, aus der Ferne mit Ihrer WordPress-Website zu kommunizieren. Dies kann zu Sicherheitsproblemen führen und von Hackern ausgenutzt werden.
Um XML-RPC in WordPress zu deaktivieren, fügen Sie den folgenden Code in Ihre Funktionsdatei oder als neues WPCode-Snippet ein:
add_filter('xmlrpc_enabled', '__return_false');
Weitere Informationen finden Sie in unserem Artikel über die Deaktivierung von XML-RPC in WordPress.
32. Automatisches Verknüpfen von Featured Images mit Beiträgen
Wenn Ihr WordPress-Theme nicht automatisch Bilder mit vollständigen Artikeln verknüpft, können Sie diese Methode ausprobieren.
Fügen Sie diesen Code einfach in die Funktionsdatei Ihres Themes oder als neues WPCode-Snippet ein:
function wpb_autolink_featured_images( $html, $post_id, $post_image_id ) {
If (! is_singular()) {
$html = '<a href="' . get_permalink( $post_id ) . '" title="' . esc_attr( get_the_title( $post_id ) ) . '">' . $html . '</a>';
return $html;
} else {
return $html;
}
}
add_filter( 'post_thumbnail_html', 'wpb_autolink_featured_images', 10, 3 );
Lesen Sie auch unseren Artikel über die automatische Verknüpfung von Bildern mit Beiträgen in WordPress.
33. Block-Editor in WordPress deaktivieren
WordPress verwendet einen modernen und intuitiven Editor für das Schreiben von Inhalten und die Bearbeitung Ihrer Website. Dieser Editor verwendet Blöcke für häufig verwendete Inhalte und Layout-Elemente, weshalb er auch Block-Editor genannt wird.
In einigen Fällen kann es jedoch erforderlich sein, den älteren Classic Editor zu verwenden.
Der einfachste Weg, den Block-Editor zu deaktivieren, ist die Verwendung des Classic Editor-Plugins. Wenn Sie jedoch kein separates Plugin verwenden möchten, dann fügen Sie einfach den folgenden Code in Ihre Funktionsdatei oder als neuen WPCode-Snippet ein:
add_filter('gutenberg_can_edit_post', '__return_false', 5);
add_filter('use_block_editor_for_post', '__return_false', 5);
Weitere Einzelheiten finden Sie in unserer Anleitung zur Deaktivierung des Blockeditors und zur Verwendung des klassischen Editors.
34. Block-Widgets in WordPress deaktivieren
WordPress hat in WordPress 5.8 von klassischen Widgets auf Block-Widgets umgestellt. Die neuen Block-Widgets sind einfacher zu verwenden und geben Ihnen mehr Gestaltungsmöglichkeiten als klassische Widgets.
Einige Benutzer möchten jedoch möglicherweise weiterhin klassische Widgets verwenden. In diesem Fall können Sie den folgenden Code in der Funktionsdatei Ihres Themes oder als neues WPCode-Snippet verwenden:
add_filter( 'use_widgets_block_editor', '__return_false' );
Weitere Einzelheiten finden Sie in unserem Artikel über die Deaktivierung von Widgetblöcken (Wiederherstellung klassischer Widgets).
35. Anzeige des Datums der letzten Aktualisierung in WordPress
Wenn Besucher einen Beitrag oder eine Seite in Ihrem WordPress-Blog aufrufen, zeigt Ihr WordPress-Theme das Datum an, an dem der Beitrag veröffentlicht wurde. Das ist für die meisten Blogs und statischen Websites in Ordnung.
WordPress wird jedoch auch von Websites verwendet, auf denen alte Artikel regelmäßig aktualisiert werden. Bei diesen Veröffentlichungen ist die Anzeige des Datums und der Uhrzeit der letzten Änderung des Beitrags unerlässlich.
Sie können das Datum der letzten Aktualisierung mit folgendem Code in der Funktionsdatei Ihres Themes oder als neues WPCode-Snippet anzeigen:
$u_time = get_the_time( 'U' );
$u_modified_time = get_the_modified_time( 'U' );
// Only display modified date if 24hrs have passed since the post was published.
if ( $u_modified_time >= $u_time + 86400 ) {
$updated_date = get_the_modified_time( 'F jS, Y' );
$updated_time = get_the_modified_time( 'h:i a' );
$updated = '<p class="last-updated">';
$updated .= sprintf(
// Translators: Placeholders get replaced with the date and time when the post was modified.
esc_html__( 'Last updated on %1$s at %2$s' ),
$updated_date,
$updated_time
);
$updated .= '</p>';
echo wp_kses_post( $updated );
}
Alternative Methoden und weitere Details finden Sie in unserer Anleitung zur Anzeige des Datums der letzten Aktualisierung in WordPress.
36. Dateinamen für Uploads in Kleinbuchstaben verwenden
Wenn Sie eine Website mit mehreren Autoren betreiben, können die Autoren Bilder mit Dateinamen in Groß- und Kleinschreibung hochladen.
Durch Hinzufügen des folgenden Codes wird sichergestellt, dass alle Dateinamen in Kleinbuchstaben geschrieben werden:
add_filter( 'sanitize_file_name', 'mb_strtolower' );
Hinweis: Der Code ändert keine Dateinamen für bestehende Uploads. Für alternative Methoden siehe unser Tutorial zum Umbenennen von Bildern und Mediendateien in WordPress.
37. Deaktivieren der WordPress-Adminleiste im Frontend
Standardmäßig zeigt WordPress die Verwaltungsleiste oben an, wenn ein eingeloggter Benutzer Ihre Website aufruft.
Sie können die Admin-Leiste für alle Benutzer außer Website-Administratoren deaktivieren. Fügen Sie einfach den folgenden Code in Ihre Funktionsdatei oder als neues WPCode-Snippet ein:
/* Disable WordPress Admin Bar for all users */
add_filter( 'show_admin_bar', '__return_false' );
Weitere Einzelheiten finden Sie in unserer Anleitung zum Deaktivieren der WordPress-Adminleiste für alle Benutzer außer Administratoren.
38. Howdy Admin Text im Adminbereich ändern
WordPress zeigt im WordPress-Dashboard die Begrüßung „Howdy Admin“ an. Dabei wird „Admin“ durch den Namen des angemeldeten Benutzers ersetzt.
Sie können die Standardansage in Ihre eigene ändern, indem Sie den folgenden Code in Ihre Funktionsdatei oder als neues WPCode-Snippet einfügen:
function wpcode_snippet_replace_howdy( $wp_admin_bar ) {
// Edit the line below to set what you want the admin bar to display intead of "Howdy,".
$new_howdy = 'Welcome,';
$my_account = $wp_admin_bar->get_node( 'my-account' );
$wp_admin_bar->add_node(
array(
'id' => 'my-account',
'title' => str_replace( 'Howdy,', $new_howdy, $my_account->title ),
)
);
}
add_filter( 'admin_bar_menu', 'wpcode_snippet_replace_howdy', 25 );
Weitere Einzelheiten finden Sie in unserem Artikel über das Ändern der „Howdy Admin“-Nachricht in WordPress.
39. Code-Bearbeitung im Block-Editor deaktivieren
Der Block-Editor ermöglicht es Ihnen, zum Code-Editor zu wechseln. Dies ist praktisch, wenn Sie manuell HTML-Code hinzufügen müssen.
Vielleicht möchten Sie diese Funktion jedoch auf die Website-Administratoren beschränken.
Sie können den folgenden Code in Ihre Funktionsdatei oder als WPCode-Snippet einfügen, um dies zu erreichen:
add_filter( 'block_editor_settings_all', function ( $settings ) {
$settings['codeEditingEnabled'] = current_user_can( 'manage_options' );
return $settings;
} );
40. Plugin/Theme-Dateieditor deaktivieren
WordPress verfügt über einen integrierten Editor, mit dem Sie Plugin-Dateien bearbeiten können. Sie können ihn auf der Seite Plugins “ Plugin File Editor sehen.
In ähnlicher Weise enthält WordPress auch einen Datei-Editor für klassische Themes unter Erscheinungsbild “ Theme-Datei-Editor.
Hinweis: Wenn Sie ein Blockthema verwenden, ist der Editor für Themendateien nicht sichtbar.
Wir raten davon ab, diese Editoren zu verwenden, um Änderungen an Ihrem Thema oder Plugin vorzunehmen. Ein winziger Fehler im Code kann dazu führen, dass Ihre Website für alle Benutzer unzugänglich ist.
Um den Plugin/Theme-Editor zu deaktivieren, fügen Sie den folgenden Code in Ihre Funktionsdatei oder als WPCode-Snippet ein:
// Disable the Plugin and Theme Editor
if ( ! defined( 'DISALLOW_FILE_EDIT' ) ) {
define( 'DISALLOW_FILE_EDIT', true );
}
Weitere Einzelheiten finden Sie in unserer Anleitung zum Deaktivieren des Plugin/Theme-Editors in WordPress.
41. E-Mail-Benachrichtigungen für neue Benutzer deaktivieren
Standardmäßig sendet WordPress eine E-Mail-Benachrichtigung, wenn ein neuer Benutzer Ihrer WordPress-Website beitritt.
Wenn Sie eine WordPress-Mitgliedswebsite betreiben oder von den Nutzern verlangen, sich anzumelden, dann erhalten Sie jedes Mal eine Benachrichtigung, wenn ein Nutzer Ihrer Website beitritt.
Um diese Benachrichtigungen zu deaktivieren, können Sie Folgendes in Ihre Funktionsdatei oder als neues WPCode-Snippet hinzufügen:
function wpcode_send_new_user_notifications( $user_id, $notify = 'user' ) {
if ( empty( $notify ) || 'admin' === $notify ) {
return;
} elseif ( 'both' === $notify ) {
// Send new users the email but not the admin.
$notify = 'user';
}
wp_send_new_user_notifications( $user_id, $notify );
}
add_action(
'init',
function () {
// Disable default email notifications.
remove_action( 'register_new_user', 'wp_send_new_user_notifications' );
remove_action( 'edit_user_created_user', 'wp_send_new_user_notifications' );
// Replace with custom function that only sends to user.
add_action( 'register_new_user', 'wpcode_send_new_user_notifications' );
add_action( 'edit_user_created_user', 'wpcode_send_new_user_notifications', 10, 2 );
}
);
Weitere Details finden Sie in unserer Anleitung zum Deaktivieren von E-Mail-Benachrichtigungen für neue Benutzer in WordPress.
42. Automatische Update-E-Mail-Benachrichtigungen deaktivieren
Gelegentlich kann WordPress automatisch Sicherheits- und Wartungsupdates installieren oder ein Plugin mit einer kritischen Sicherheitslücke aktualisieren.
Es sendet nach jeder Aktualisierung eine automatische E-Mail-Benachrichtigung. Wenn Sie mehrere WordPress-Websites verwalten, können Sie mehrere solcher E-Mails erhalten.
Sie können diesen Code in Ihre Funktionsdatei oder als neues WPCode-Snippet einfügen, um diese E-Mail-Benachrichtigungen zu deaktivieren:
/ Disable auto-update emails.
add_filter( 'auto_core_update_send_email', '__return_false' );
// Disable auto-update emails for plugins.
add_filter( 'auto_plugin_update_send_email', '__return_false' );
// Disable auto-update emails for themes.
add_filter( 'auto_theme_update_send_email', '__return_false' );
Weitere Informationen finden Sie in unserem Artikel über die Deaktivierung automatischer Update-E-Mails in WordPress.
43. Einen Link hinzufügen, um einen Beitrag einfach zu duplizieren
Haben Sie sich schon einmal eine einfachere Möglichkeit gewünscht, den gesamten Inhalt eines Beitrags schnell zu kopieren und zu bearbeiten, ohne den veröffentlichten Beitrag zu verändern?
Das folgende Codeschnipsel fügt eine Option hinzu, mit der ein Beitrag mit seinem gesamten Inhalt einfach dupliziert werden kann:
// Add duplicate button to post/page list of actions.
add_filter( 'post_row_actions', 'wpcode_snippet_duplicate_post_link', 10, 2 );
add_filter( 'page_row_actions', 'wpcode_snippet_duplicate_post_link', 10, 2 );
// Let's make sure the function doesn't already exist.
if ( ! function_exists( 'wpcode_snippet_duplicate_post_link' ) ) {
/**
* @param array $actions The actions added as links to the admin.
* @param WP_Post $post The post object.
*
* @return array
*/
function wpcode_snippet_duplicate_post_link( $actions, $post ) {
// Don't add action if the current user can't create posts of this post type.
$post_type_object = get_post_type_object( $post->post_type );
if ( null === $post_type_object || ! current_user_can( $post_type_object->cap->create_posts ) ) {
return $actions;
}
$url = wp_nonce_url(
add_query_arg(
array(
'action' => 'wpcode_snippet_duplicate_post',
'post_id' => $post->ID,
),
'admin.php'
),
'wpcode_duplicate_post_' . $post->ID,
'wpcode_duplicate_nonce'
);
$actions['wpcode_duplicate'] = '<a href="' . $url . '" title="Duplicate item" rel="permalink">Duplicate</a>';
return $actions;
}
}
/**
* Handle the custom action when clicking the button we added above.
*/
add_action( 'admin_action_wpcode_snippet_duplicate_post', function () {
if ( empty( $_GET['post_id'] ) ) {
wp_die( 'No post id set for the duplicate action.' );
}
$post_id = absint( $_GET['post_id'] );
// Check the nonce specific to the post we are duplicating.
if ( ! isset( $_GET['wpcode_duplicate_nonce'] ) || ! wp_verify_nonce( $_GET['wpcode_duplicate_nonce'], 'wpcode_duplicate_post_' . $post_id ) ) {
// Display a message if the nonce is invalid, may it expired.
wp_die( 'The link you followed has expired, please try again.' );
}
// Load the post we want to duplicate.
$post = get_post( $post_id );
// Create a new post data array from the post loaded.
if ( $post ) {
$current_user = wp_get_current_user();
$new_post = array(
'comment_status' => $post->comment_status,
'menu_order' => $post->menu_order,
'ping_status' => $post->ping_status,
'post_author' => $current_user->ID,
'post_content' => $post->post_content,
'post_excerpt' => $post->post_excerpt,
'post_name' => $post->post_name,
'post_parent' => $post->post_parent,
'post_password' => $post->post_password,
'post_status' => 'draft',
'post_title' => $post->post_title . ' (copy)',// Add "(copy)" to the title.
'post_type' => $post->post_type,
'to_ping' => $post->to_ping,
);
// Create the new post
$duplicate_id = wp_insert_post( $new_post );
// Copy the taxonomy terms.
$taxonomies = get_object_taxonomies( get_post_type( $post ) );
if ( $taxonomies ) {
foreach ( $taxonomies as $taxonomy ) {
$post_terms = wp_get_object_terms( $post_id, $taxonomy, array( 'fields' => 'slugs' ) );
wp_set_object_terms( $duplicate_id, $post_terms, $taxonomy );
}
}
// Copy all the custom fields.
$post_meta = get_post_meta( $post_id );
if ( $post_meta ) {
foreach ( $post_meta as $meta_key => $meta_values ) {
if ( '_wp_old_slug' === $meta_key ) { // skip old slug.
continue;
}
foreach ( $meta_values as $meta_value ) {
add_post_meta( $duplicate_id, $meta_key, $meta_value );
}
}
}
// Redirect to edit the new post.
wp_safe_redirect(
add_query_arg(
array(
'action' => 'edit',
'post' => $duplicate_id
),
admin_url( 'post.php' )
)
);
exit;
} else {
wp_die( 'Error loading post for duplication, please try again.' );
}
} );
Nachdem Sie den Code hinzugefügt haben, gehen Sie auf den Bildschirm Beiträge “ Alle Beiträge und fahren Sie mit der Maus über einen Beitragstitel.
Unter den Optionen finden Sie einen neuen Link „Duplizieren“.
Wenn Sie auf den Link klicken, wird eine Kopie des Beitrags mit seinem gesamten Inhalt erstellt. Sie können dann an diesem Entwurf arbeiten.
Wenn Sie fertig sind, können Sie Ihre Änderungen kopieren und in den ursprünglich veröffentlichten Beitrag einfügen und die Kopie löschen.
Eine Plugin-Methode finden Sie in unserem Artikel über das Duplizieren eines WordPress-Beitrags oder einer Seite.
44. Welcome Panel aus dem WordPress Admin Dashboard entfernen
Das Willkommenspanel erscheint im WordPress-Verwaltungsdashboard. Es lässt sich leicht ausblenden, indem Sie auf die Schaltfläche „Bildschirmoptionen“ klicken.
Wenn Sie jedoch daran arbeiten, das Dashboard für die Benutzer übersichtlicher zu gestalten, sollten Sie es dauerhaft ausblenden.
Fügen Sie den folgenden Code ein, um ihn für alle Benutzer Ihrer Website zu deaktivieren:
add_action(
'admin_init',
function () {
remove_action( 'welcome_panel', 'wp_welcome_panel' );
}
);
45. Hinzufügen einer Featured Image-Spalte für Posts im WordPress-Admin
Standardmäßig zeigt WordPress nur Bilder an, wenn Sie Ihre Website ansehen oder wenn Sie einen Beitrag oder eine Seite bearbeiten.
Der folgende Code fügt dem Bildschirm „Beiträge “ Alle Beiträge “ eine neue Spalte für besondere Bilder hinzu:
add_filter( 'manage_posts_columns', function ( $columns ) {
// You can change this to any other position by changing 'title' to the name of the column you want to put it after.
$move_after = 'title';
$move_after_key = array_search( $move_after, array_keys( $columns ), true );
$first_columns = array_slice( $columns, 0, $move_after_key + 1 );
$last_columns = array_slice( $columns, $move_after_key + 1 );
return array_merge(
$first_columns,
array(
'featured_image' => __( 'Featured Image' ),
),
$last_columns
);
} );
add_action( 'manage_posts_custom_column', function ( $column ) {
if ( 'featured_image' === $column ) {
the_post_thumbnail( array( 300, 80 ) );
}
} );
So würde es nach dem Hinzufügen des Codes aussehen.
46. WordPress-Administrationsbereich für alle außer Administratoren sperren
Für einige WordPress-Websites müssen die Benutzer ein Konto registrieren. Zum Beispiel eine WordPress-Mitgliedswebsite oder ein eCommerce-Shop.
Die meisten dieser Plugins verhindern, dass diese Benutzer auf den Verwaltungsbereich zugreifen können. Wenn Sie jedoch kein solches Plugin verwenden, können Sie den folgenden Code hinzufügen, um allen Benutzern außer Administratoren den Zugriff auf den Verwaltungsbereich zu verwehren:
add_action( 'admin_init', function() {
if ( ! current_user_can( 'administrator' ) ) {
wp_redirect( home_url() );
exit;
}
} );
Benutzer mit anderen Benutzerrollen können sich weiterhin in ihre Konten einloggen, werden aber nach dem Einloggen auf die Homepage weitergeleitet.
Wir hoffen, dass dieser Artikel Ihnen geholfen hat, einige neue nützliche Tricks für die Datei functions.php in WordPress zu lernen. Vielleicht interessieren Sie sich auch für unseren Leitfaden zur Anzeige von Code in WordPress, um Ihre Snippets einfach zu teilen, und unsere Expertenauswahl der besten Code Editoren für Mac und Windows.
Wenn Ihnen dieser Artikel gefallen hat, dann abonnieren Sie bitte unseren YouTube-Kanal für WordPress-Videotutorials. Sie können uns auch auf Twitter und Facebook finden.
Moinuddin Waheed
So much to accomplish with the help of functions.php
I think this is the core of the WordPress and if we do too much to it, we may lose many core functionalities.
having said this, using wpcode is a wise idea to insert anything for functionality without compromising the WordPress core.
I have a question though, if wpcode doesn’t insert it’s code in the main functions.php then how it works?
and if inserts it into the same, how updating wordpress doesn’t erase it?
WPBeginner Support
The code is stored in your database and the plugin hooks in the code in different ways depending on how you set it in the plugin.
Admin
Jiří Vaněk
I’ve noticed that on some websites, the top part of the browser changes color, specifically on mobile Chrome. Do you have any tested snippet that accomplishes this?
WPBeginner Support
We do have a guide for this, you can see our guide below:
https://www.wpbeginner.com/wp-tutorials/how-to-change-the-color-of-address-bar-in-mobile-browser-to-match-your-wordpress-site/
Admin
Jiří Vaněk
Thank you. I tried it on my own website and it works perfectly. Although only in Chrome, but it works.
Ralph
A lot of great ideas explained in novice friendly way. Thanks! I will try adding featured images to RSS feeds. It never worked before for some reason and now it will
WPBeginner Support
Glad to hear you found our tricks helpful
Admin
Ben
This is a pretty dangerous idea. Query strings exist for the purposes of cache busting, aka, making sure the end user has the latest version your js and css files.
Removing those is going to cause all sorts of issues for returning users down the line as their browser will assume nothing has changed and use their cached version rather than downloading the new one.
If for some reason you need to target a specific file and remove the query string (which I’ve had to do) you can use this code snippet:
// remove version from scripts and styles
function remove_version_scripts_styles($src) {
if (strpos($src, ‚yourfile.js‘)) {
$src = remove_query_arg(‚ver‘, $src);
}
return $src;
}
add_filter(’script_loader_src‘, ‚remove_version_scripts_styles‘, 9999);
Gean Paulo Francois
Very useful article. I just saved this page offline so I can insert some of these with my websites. Anyway, should I add the codes to functions,php and not anywhere else?
WPBeginner Support
Correct, these codes are for your functions.php file.
Admin
Hussain Badusha
Nice compendium of some useful tricks and functions for wordpress. I added quite a new things to my wordpress knowledge after going through here.
I look forward even more from you if you wish to
WPBeginner Support
Glad you found our guide helpful
Admin
Satinder Satsangi
Oh WoW,
This is lifesaver most of the times, would like to know more about useful functions.
WPBeginner Support
Glad you found our guide helpful
Admin
vivek
Nice article,
Just have a doubt if I am supposed to add these codes in snippets plugin or somwhere in file? if its snippet plugin, it’s not working. Kindly put some light.
Thanks
WPBeginner Support
You would add these codes as a custom plugin or more commonly in your functions.php file
Admin
Beulah Wellington
Thank you for this tutorial. I learned a lot. I will be reading it again.
WPBeginner Support
You’re welcome, glad our guide can continue to help you
Admin
Ali Jahani
Hi
Thanks a lot of….
wpbeginner Is god team
WPBeginner Support
You’re welcome, glad you like our content
Admin
VISHAL CHOWDHRY
Superb Article.
Waiting for more of this
WPBeginner Support
Thank you, glad you liked our content
Admin
Miley Cyrus
Great Article it its really informative and innovative keep us posted with new updates. its was really valuable. thanks a lot.
WPBeginner Support
Glad our article could be helpful
Admin
John Dee
Almost NONE of these code snippets belong in your theme’s functions.php file. Only a few of them are related to the actual theme. Themes are for APPEARANCE. Create a PLUGIN for functionality. In any case, it would go in child theme’s functions.php file.
WPBeginner Support
Thank you for pointing this out, while we do mention site-specific plugins at the beginning of this article, we will be sure to look into making that statement clearer.
Admin
Suman Samanta
Nice information for a new bloggers. It is really helpful.
Richard Yzenbrandt
Thank you so much for making this resource available. WP for Beginners is the best goto site on the web!
alok patel
hey i am unable to add my post on specific page. when i write any blog post it shows in home page but i wanna also see in specific pages where i want to add. how i can out of from this problem. plz help me as soon as possible. if any video link thn plz share with reply. i m getting too much confused.
DONALD
I am creating a form to collect data from my users.
I have created the database from myphpAdmin
I have created the form.
I now created a new php.file in my child theme
I referenced it in the form too using action = „name.php“
Now i expect it to gather, peoples registration details.
But clicking on submit on the form, says, page cannot be found.
I dont know what i am not getting right.
Please help me
marvin N N
is there a plugin one can use to customise a theme’s default menu setting to suit your taste???
Sazzad Hossain
Thanks for this codes.
Shafiq Khan
Very useful post thanks.
A question – Because you’re updating the functions.php of a theme.
If you update the theme then you lose your tweaks.
Is there a way around this? Is it just a cause of using a Child theme?
Thanks
Lisa
Hi Shafiq,
Any changes you make to a parent theme will be overwritten when you update it. It is good practice to work with a child theme when making changes to a theme you didn’t build that is going to be updated so that you can keep the changes you made.
Jan
I use the plugin ‚My Custom Functions‘ – it is simply adding all functions to the functions.php automatically – so no re-writing after every update needed
Jane Lawson
This is late, but you can also create a plugin for your site (e.g. „[Site name]’s custom plugin“). It does require a bit of expertise, however, since some functions clash with other plugins/the site theme.
Neil
Excellent post – thank you for the tips & tricks. They are all very helpful
Karakaplan
How to use these above with child theme functions file?
Minhaz
Nothing difference with parent or child theme’s functions.php
Joe
I’ve not done much with the functions file so it was good to see this article.
Thanks.
Jorge Rosa
Great snippets. Very handy and useful. Thank You!
sriganesh
this is best site for wordpress
WPBeginner Support
Thanks for the kind words
Admin
Bilal
will you tell me a most easy book for wordpress.
i am very new in this field .
thanks in advance
Al1
Another one :
// Remove query string from static files :
function remove_cssjs_ver( $src ) {
if( strpos( $src, ‚?ver=‘ ) )
$src = remove_query_arg( ‚ver‘, $src );
return $src;
}
add_filter( ’style_loader_src‘, ‚remove_cssjs_ver‘, 10, 2 );
add_filter( ’script_loader_src‘, ‚remove_cssjs_ver‘, 10, 2 );
siva
Great post, Could provide all wordpress function with example
shojib
This is the best blog for Wordpress users.
Parveen
Great post!!!
I am a newbie and looking for such tricks.
Thanks.
Deepak Kanyan
Really a nice blog. i had learn lot of things from here thanks admin.
Andrew
I tried #16 to add the post featured thumbnail to m RSS feed but when I tested it in mailchimp (paused my campaign and previewed) it appears that it has changed from „summary“ to „full text“? Is this expected behaviour? I want to leave the emails (rss driven) as summary, and simply add the thumbnail featured image at the top.
Thanks for any help, I can’t find this on google anywhere.
WPBeginner Support
You can try replacing get_the_content() with get_the_excerpt().
Admin
Em Cloney
re: removing rss feed for static pages — is it correct that the txt one would replace in that code is ‚url‘ (with a page link, including ) and ‚homepage‘ (if you’d like it to say something else, like ’some other site‘)?
Mohan Manohar
This is huge list and great help. would like to know the first part of twitter counter code is to be pasted in function.php or directly into texty widget of theme.
grafx
There is an easier way to remove WordPress Version Number…
remove_action(‚wp_head‘, ‚wp_generator‘);