Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung |
wordpress [2022/11/06 08:46] – [Nützliche Plugins] olli | wordpress [2025/02/13 06:01] (aktuell) – [Nützliche Plugins] olli |
---|
===== /category aus Link zu Kategorien entfernen ===== | ===== /category aus Link zu Kategorien entfernen ===== |
Standardmäßig verwendet Wordpress in den Links zu den Kategoriearchiven "/category/" bzw. die eingestellte Kategoriebasis. Um diesen Teil zu entfernen hat es bis Version 3.4 ausgereicht "./" als Kategoriebasis einzutragen. Mit dem Plugin [[http://wordpress.org/extend/plugins/no-category-base-wpml/|WP No Category Base]] ab Version 1.1.0 kann der gleiche Effekt erzielt werden. Das Plugin No Category Parents mit diesem [[http://wordpress.org/support/topic/plugin-no-category-parents-for-fix-no-post-on-category-d-work-on-34|Patch für Wordpress 3.4]] entfernt "category" zwar aus den Links zu den Seiten (vorher: "category/my-category/my-page", nachher: "my-category/my-page"), aber nicht aus den Links zu den Kategoriearchiven (vorher und nachher: "category/my-category/"). | Standardmäßig verwendet Wordpress in den Links zu den Kategoriearchiven "/category/" bzw. die eingestellte Kategoriebasis. Um diesen Teil zu entfernen hat es bis Version 3.4 ausgereicht "./" als Kategoriebasis einzutragen. Mit dem Plugin [[http://wordpress.org/extend/plugins/no-category-base-wpml/|WP No Category Base]] ab Version 1.1.0 kann der gleiche Effekt erzielt werden. Das Plugin No Category Parents mit diesem [[http://wordpress.org/support/topic/plugin-no-category-parents-for-fix-no-post-on-category-d-work-on-34|Patch für Wordpress 3.4]] entfernt "category" zwar aus den Links zu den Seiten (vorher: "category/my-category/my-page", nachher: "my-category/my-page"), aber nicht aus den Links zu den Kategoriearchiven (vorher und nachher: "category/my-category/"). |
| |
| ===== Child-Themes ===== |
| Falls ein Theme nicht genug Möglichkeiten zur benutzerspezifischen Anpassung bietet, sollte nicht die Dateien des Themes selbst verändert werden, sondern ein [[http://www.elmastudio.de/wordpress/wordpress-theme-anpassungen-mit-hilfe-von-child-themes/|Child-Theme angelegt]] werden und die Anpassung dort vorgenommen werden. |
| Auf diese Weise gehen die Anpassungen bei einem Themen-Update nicht verloren. |
| Das Anlegen eines Vorschaubilds wird [[https://wordpress.stackexchange.com/questions/94131/how-to-set-thumbnail-image-for-a-child-theme|hier]] beschrieben. |
| |
| ===== Persistent Object Cache Empfehlung ausblenden ===== |
| Um die Empfehlung einen persistenten Objectcache zu benutzen auszublenden (z.B. weil dies nicht erforderlich oder möglich ist) kann in der ''functions.php'' im Child-Theme die folgende Zeile hinzugefügt werden: |
| <code php> |
| add_filter( 'site_status_should_suggest_persistent_object_cache', '__return_false' ); |
| </code> |
===== Sidebar auch für single-Posts und Seiten (Pages) anzeigen ===== | ===== Sidebar auch für single-Posts und Seiten (Pages) anzeigen ===== |
Die empfohlene Vorgehensweise für das twentyeleven Theme ist [[http://web.archive.org/web/20130323012726/http://futurewebblog.com/add-sidebar-support-posts-twenty-eleven-theme/|hier]] beschrieben: | Die empfohlene Vorgehensweise für das twentyeleven Theme ist [[http://web.archive.org/web/20130323012726/http://futurewebblog.com/add-sidebar-support-posts-twenty-eleven-theme/|hier]] beschrieben: |
add_action('wp_head', 'blog_favicon'); | add_action('wp_head', 'blog_favicon'); |
</code> | </code> |
| |
| <WRAP tip round> |
| In neueren Wordpress-Versionen kann das Favicon auch über den Customizer oder den Site Editor (seit Wordpress 5.8) gesetzt werden, wenn dies vom Template unterstützt wird, siehe [[https://de.siteground.com/kb/wordpress-favicon/#using-the-site-editor|hier]]. |
| Dies funktioniert auch im Child-Theme. |
| </WRAP> |
| |
===== Umleitung von index.html ===== | ===== Umleitung von index.html ===== |
[gallery exclude="136"] | [gallery exclude="136"] |
</code> | </code> |
| |
===== Adminbereich mit SSL-Proxy absichern ===== | |
<WRAP tip round> | |
All-Inkl bietet mittlerweile kostenlos SSL mittels SNI an, so dass die folgende Konfiguration für den SSL-Proxy nicht mehr nötig ist und nicht mehr empfohlen wird, da das Plugin wahrscheinlich nicht mehr weiterentwickelt wird. | |
</WRAP> | |
Um den Adminbereich von Wordpress zu schützen, sollte eine SSL-Verschlüsselung benutzt werden. Viele Provider, z.b. [[http://www.all-inkl.com|all-inkl]] bieten einen SSL-Proxy ([[http://ssl-account.com]]/domainname) an. Um den SSL-Proxy zu benutzen, wird folgendes in die wp-config.php eingetragen: | |
<code php> | |
if( isset( $_SERVER['HTTP_X_FORWARDED_SERVER'] ) ) { | |
//with SSL-Proxy | |
$_SERVER['HTTPS']='on'; | |
$_SERVER['HTTP_HOST'] = 'ssl-account.com'; | |
$_SERVER['REQUEST_URI']='/e-dschungel.de'. $_SERVER['REQUEST_URI']; | |
define('WP_SITEURL', 'https://ssl-account.com/e-dschungel.de'); | |
define('WP_HOME', 'https://ssl-account.com/e-dschungel.de'); | |
define('COOKIE_DOMAIN', 'ssl-account.com'); | |
define('COOKIEPATH', '/e-dschungel.de/'); | |
} else { | |
//without SSL proxy everything is configured automatically | |
} | |
</code> | |
Um zu vermeiden, dass beim Bearbeiten von Artikel über den SSL-Proxy falsche (d.h. Links via SSl-Proxy) gespeichert werden kann man das Plugin [[http://klein-gedruckt.de/2013/08/wp-plugin-ssl-proxy-url-fixer/|SSL Proxy URL Fixer]] verwenden. | |
Damit alle Logins über den SSL-Proxy laufen, werden alle Zugriffe mit .htaccess umgeleitet: | |
<code apache> | |
#force SSL login | |
<IfModule mod_rewrite.c> | |
RewriteEngine on | |
RewriteBase / | |
| |
# redirect wp-(admin|login|register)* to HTTPS | |
RewriteCond %{HTTPS} off | |
RewriteCond %{HTTP:X-FORWARDED-SERVER} !^ssl-account\.com$ [NC] | |
RewriteCond %{REQUEST_FILENAME} -f [OR] | |
RewriteCond %{REQUEST_FILENAME} -d | |
RewriteRule ^wp-(admin|login|register)(.*) https://ssl-account.com/e-dschungel.de | |
| |
# redirect xmlrpc* to HTTPS | |
RewriteCond %{HTTPS} off | |
RewriteCond %{HTTP:X-FORWARDED-SERVER} !^ssl-account\.com$ [NC] | |
RewriteRule ^xmlrpc(.*) https://ssl-account.com/e-dschungel.de/xmlrpc$1$ | |
</IfModule> | |
</code> | |
| |
Um zu verhindern, dass Suchmaschinen den Inhalt über den SSL-Proxy indizieren und wegen Duplicate Content abwertet, kann man Apache eine andere robots.txt über den SSL-Proxy ausliefern lassen. Dazu werden in der .htaccess folgende Befehle vor den Befehlen für Wordpress eingetragen: | |
<code apache> | |
<IfModule mod_rewrite.c> | |
RewriteEngine on | |
RewriteCond %{HTTPS} off | |
RewriteCond %{HTTP:X-FORWARDED-SERVER} ^ssl-account\.com$ [NC] | |
RewriteRule ^robots\.txt$ robots_ssl.txt [L] | |
</IfModule> | |
</code> | |
Damit wird beim Zugriff über den SSL-Proxy die Datei robots_ssl.txt ausgeliefert, wenn robots.txt angefordert wird. Mit dem Inhalt | |
<code> | |
User-agent: * | |
Disallow: / | |
</code> | |
der Datei robots_ssl.txt wird die Indizierung komplett verboten. | |
| |
===== Login-Fehlermeldung ändern ===== | ===== Login-Fehlermeldung ändern ===== |
* In ''wp-config.php'' eintragen: <code php>define('FORCE_SSL_ADMIN', true); </code> | * In ''wp-config.php'' eintragen: <code php>define('FORCE_SSL_ADMIN', true); </code> |
* Seitenadresse in den Wordpress-Einstellungen unter ''Einstellungen -> Allgemein'' auf HTTPS umstellen | * Seitenadresse in den Wordpress-Einstellungen unter ''Einstellungen -> Allgemein'' auf HTTPS umstellen |
* Alle Links im Inhalt und in den Templates umstellen. Dabei hilft das [[https://interconnectit.com/products/search-and-replace-for-wordpress-databases/|Search and Replace Script]] | * Alle Links im Inhalt und in den Templates umstellen. Dabei hilft das [[https://interconnectit.com/products/search-and-replace-for-wordpress-databases/|Search and Replace Script]] (läuft unabhängig von Wordpress) oder [[https://de.wordpress.org/plugins/better-search-replace/|Better Search Replace]] als Wordpress-Plugin. Wordpress selbst bietet mittlerweile auch [[https://all-inkl.com/wichtig/anleitungen/skripte/blogs/wordpress/ssl-in-wordpress-aktivieren_507.html|eine eigene Funktion]] dafür an. |
* Sitemapadresse in der ''robots.txt'' auf HTTPS umstellen | * Sitemapadresse in der ''robots.txt'' auf HTTPS umstellen |
* Google Webmastertools auf HTTPS umstellen | * Google Webmastertools auf HTTPS umstellen |
</IfModule> | </IfModule> |
</code> | </code> |
| |
| ===== Default-Werte für Plugin Contact Form 7 ===== |
| Default-Werte für Forumlare mit dem Plugin Contact Form 7 können auch über Get-Variablen festgelegt werden. |
| <code> |
| [text* your-name default:get] |
| </code> |
| Auch Post-Variablen sind möglich, für Details siehe https://contactform7.com/getting-default-values-from-the-context/ |
| |
| |
===== Nützliche Plugins ===== | ===== Nützliche Plugins ===== |
* [[https://wordpress.org/plugins/tinymce-advanced/|Tiny MCE Advanced]] ein erweiterter Editor<WRAP important round>Wird scheinbar nicht mehr gepflegt.</WRAP> | * [[https://wordpress.org/plugins/tinymce-advanced/|Tiny MCE Advanced]] ein erweiterter Editor<WRAP important round>Wird scheinbar nicht mehr gepflegt.</WRAP> |
* [[https://wordpress.org/plugins/google-sitemap-generator/|Google XML Sitemaps]] zur Generierung von Sitemaps für Suchmaschinen | * [[https://wordpress.org/plugins/google-sitemap-generator/|Google XML Sitemaps]] zur Generierung von Sitemaps für Suchmaschinen |
* [[https://de.wordpress.org/plugins/companion-auto-update/|Companion Auto Update]] zur Benachrichtigung per Email bei Updates <WRAP important round>Die bisher empfohlene Plugins [[https://de.wordpress.org/plugins/mail-on-update/|Mail On Update]] und [[https://wordpress.org/plugins/wp-updates-notifier/|WP Updates Notifier]] werden scheinbar nicht mehr gepflegt. | * Statt des bisher empfohlenen Plugins[[https://de.wordpress.org/plugins/companion-auto-update/|Companion Auto Update]] zur Benachrichtigung per Email bei Updates benutze ich seit Wordpress 6.6 das integrierte Plugin-Update. <WRAP important round>Die bisher empfohlene Plugins [[https://de.wordpress.org/plugins/mail-on-update/|Mail On Update]] und [[https://wordpress.org/plugins/wp-updates-notifier/|WP Updates Notifier]] werden scheinbar nicht mehr gepflegt. |
</WRAP> | </WRAP> |
* [[https://wordpress.org/plugins/wp-flexible-map/|WP Flexible Map]] für Karten <WRAP important round> | * [[https://wordpress.org/plugins/wp-google-maps/|WP Go Maps]] für Karten. In der kostenlosen Version kann nur eine Karte angelegt und die Navigation nicht verwendet werden. Die Freischaltung der Datenübertragung gemäß DSGVO kann gesondert aktiviert werden. Neben Google-Maps-Karten können auch Open-Street-Map-Karten verwendet werden. Mit [[https://wordpress.org/plugins/geounit-maps/|GeoUnit]] können OpenStreetMap-Karten DSGVO-konform eingebunden werden. In der kostenlosen Version können mehrere Karte aber mit nur jeweils einem Marker angelegt werden. Routing ist allerdings auch in der kostenpflichtigen Version nicht möglich. <WRAP important round> |
Das noch etwas umfangreichere [[https://wordpress.org/plugins/comprehensive-google-map-plugin/|Comprehensive Google Map Plugin]] wird nicht mehr gepflegt. | Das das zuvor verwendete [[https://wordpress.org/plugins/wp-flexible-map/|WP Flexible Map]] hat seit 2019 keine Updates mehr im [[https://github.com/webaware/flexible-map|Github-Repository]] bekommen, im [[https://plugins.trac.wordpress.org/log/wp-flexible-map/|Wordpress-Repository]] wird jedoch die Wordpress-Kompatibilität noch aktualisiert (Stand 2024). |
</WRAP> | </WRAP> |
* [[https://de.wordpress.org/plugins/antispam-bee/|Antispam Bee]] als Spamschutz | * [[https://de.wordpress.org/plugins/antispam-bee/|Antispam Bee]] als Spamschutz |
* [[https://de.wordpress.org/plugins/contact-form-7/|Contact Form 7]] für Kontaktformulare mit [[https://de.wordpress.org/plugins/contact-form-7-honeypot/|Contact Form 7 Honeypot]] als Spamschutz <WRAP important round> Das bisher empfohlene Plugin [[https://de.wordpress.org/plugins/si-contact-form/|Fast Secure Contact Form]] wird nicht mehr gepflegt. In den Versionen 4.0.52, 4.0.53, 4.0.54 und 4.0.55 war Spam enthalten, siehe [[http://www.fastsecurecontactform.com/|Details]] vom ursprünglichen Plugin-Autor. | * [[https://de.wordpress.org/plugins/contact-form-7/|Contact Form 7]] für Kontaktformulare mit [[https://de.wordpress.org/plugins/contact-form-7-honeypot/|Contact Form 7 Honeypot]] als Spamschutz <WRAP important round> Das bisher empfohlene Plugin [[https://de.wordpress.org/plugins/si-contact-form/|Fast Secure Contact Form]] wird nicht mehr gepflegt. In den Versionen 4.0.52, 4.0.53, 4.0.54 und 4.0.55 war Spam enthalten, siehe [[https://web.archive.org/web/20180306142358/http://www.fastsecurecontactform.com/|Details]] vom ursprünglichen Plugin-Autor. |
</WRAP> | </WRAP> |
* [[https://de.wordpress.org/plugins/cachify/|Cachify]] als Cache | * [[https://de.wordpress.org/plugins/cachify/|Cachify]] als Cache |
* [[https://de.wordpress.org/plugins/download-monitor/|Download-Monitor]] oder [[https://de.wordpress.org/plugins/download-manager/|Wordpress Download Manager]] als Downloadmanager (falls erforderlich). Ich verwende kein Plugin mehr, sondern gestalte die Download-Seiten mit Wordpress-Bordmitteln. <WRAP important round> Das bisher empfohlene [[https://wordpress.org/plugins/wp-filebase/|WP-Filebase]] wird nicht mehr gepflegt. | * [[https://de.wordpress.org/plugins/download-monitor/|Download-Monitor]] oder [[https://de.wordpress.org/plugins/download-manager/|Wordpress Download Manager]] als Downloadmanager (falls erforderlich). Ich verwende kein Plugin mehr, sondern gestalte die Download-Seiten mit Wordpress-Bordmitteln. <WRAP important round> Das bisher empfohlene [[https://wordpress.org/plugins/wp-filebase/|WP-Filebase]] wird nicht mehr gepflegt. |
| </WRAP> |
| * [[https://de.wordpress.org/plugins/enlighter/|Enlighter]] als Syntax-Highlighter <WRAP important round> Das bisher empfohlene Plugin [[https://wordpress.org/plugins/wp-syntax/|WP Syntax]] wird nicht mehr gepflegt und ist (durch die enthaltene Geshi-Version) nicht kompatibel zu PHP 8.0 und höher. |
</WRAP> | </WRAP> |
===== Links ===== | ===== Links ===== |
* [[http://wordpress.org|Homepage]] | * [[http://wordpress.org|Homepage]] |
* [[http://www.elmastudio.de/wordpress/wordpress-theme-anpassungen-mit-hilfe-von-child-themes/|Themeanpassungen mit Child-Themes]] | |