it-swarm.com.de

Wie füge ich .htaccess Code über eine Funktion hinzu?

Ich muss den folgenden .htaccess-Code über eine Funktion hinzufügen

    <IfModule mod_deflate.c>
# Insert filters
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE image/svg+xml

# Drop problematic browsers
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html

# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary
</IfModule>

## Expires Caching ##

<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access 2 week"
ExpiresByType image/jpeg "access 2 week"
ExpiresByType image/gif "access 2 week"
ExpiresByType image/png "access 2 week"
ExpiresByType text/css "access 2 week"
ExpiresByType application/pdf "access 2 week"
ExpiresByType text/x-javascript "access 2 week"
ExpiresByType application/x-shockwave-flash "access 2 week"
ExpiresByType image/x-icon "access 2 week"
ExpiresDefault "access 2 week"
</IfModule>

## Expires Caching ## 

In meinen Themes function.php

function add_htaccess
{
//the above code to add
}

Ich möchte es einfach nicht manuell hinzufügen.

2
Ezhil
/**
 * Inserts an array of strings into a file (.htaccess ), placing it between
 * BEGIN and END markers. Replaces existing marked info. Retains surrounding
 * data. Creates file if none exists.
 *
 * @param array|string $insertion
 * @return bool True on write success, false on failure.
 */
function add_htaccess($insertion)
{
    $htaccess_file = ABSPATH.'.htaccess';
    return insert_with_markers($htaccess_file, 'MyMarker', (array) $insertion);
}

Anmerkungen:

  • $insertion ist ein Array von Zeichenfolgen. Jede Zeichenfolge erhält eine neue Zeile in der Datei.
  • Sie sollten "MyMarker" natürlich durch Ihren eigenen Namen ersetzen. Ihr Inhalt wird in diesen angegebenen Container eingefügt und der Rest der Datei bleibt in Ruhe.
  • Diese Funktion basiert auf der Funktion insert_with_markers(), die nur im Admin-Bereich geladen wird. Andernfalls müssen Sie wp-admin/includes/misc.php manuell laden.
  • Die .htaccess muss beschreibbar sein, damit diese Funktion funktioniert.
3
Geert

Nur ein kurzer Tipp - Sie sollten eine grundlegende Vorstellung davon bekommen, wie es in WordPress Core gemacht wird:

Die Quelle von save_mod_rewrite_rules () und insert_with_markers () Funktionen könnten für Sie interessant sein.

Sie werden sehen, dass die Regeln mit PHP fwrite () in die Datei geschrieben werden.
Der Code, der prüft, ob die Datei .htaccess vorhanden, beschreibbar usw. ist, ist ebenfalls nützlich.

Lass dich inspirieren.

PS: Es mag Filter geben, die die Arbeit erleichtern, aber das Erlernen der Methoden ist trotzdem eine gute Idee.

2
Michal Mau

Die Aktion ist generate_rewrite_rules.

Überprüfen Sie diese Fragen, die Sie vielleicht nützlich finden:

0
Sisir