Maskieren von wp-content / themes / name / images mit htaccess in das Verzeichnis der Bilder

Ich versuche, was ich dachte, wäre etwas sehr einfaches von meiner URL zu maskieren, aber es scheint nicht zu funktionieren. Ich möchte in der Lage sein, zu Bildern in meinem img-Tag zu verknüpfen, ohne die vollständige URL eingeben zu müssen.

dh

Current url: http://server.com/wp-content/themes/standard/images/img.jpg or  

Aber auf meinen Seiten möchte ich einfach nur machen

  

Auf meinem localhost scheint jedoch nichts zu funktionieren. Ich betreibe den Apache-Server auf einem Windows 7-Rechner. Ich versuche eine .htaccess zu verwenden, um das zu tun, was ich oben erwähnt habe. Hier ist meine .htaccess-Datei im Stammverzeichnis meiner Website.

UPDATE: Ich habe den ZweiBlumen-Vorschlag unten versucht, aber das schien nicht zu funktionieren. Ich habe dann Geerts Vorschlag ausprobiert und die re-write-Methode zu meiner misc.php meines Admin-Ordners hinzugefügt. Ich ging dann zu meiner Permalinkseite und drückte auf Speichern. Das Ergebnis davon war, dass mein .htaccess-Ordner neu geschrieben wurde und die von ihm produzierte Ausgabe darunter ist.

 # BEGIN WordPress  RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteRule ^css/(.*) /wp-content/themes/standard/css/$1 [QSA,L] RewriteRule ^js/(.*) /wp-content/themes/standard/js/$1 [QSA,L] RewriteRule ^images/(.*) /wp-content/themes/standard/images/$1 [QSA,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]  # END WordPress 

Ich kann jedoch immer noch nicht zu meinem Bilderordner navigieren, zum Beispiel:

http: //localhost/images/myimage.jpg .

Alles, was ich bekomme, ist eine Seite nicht gefunden. Joshuas Vorschlag funktionierte perfekt, aber ich hoffe, dies in Verbindung mit der Maskierung der Bild-URL zu verwenden.

Gibt es sonst noch etwas, das ich falsch machen könnte oder überprüfen sollte?

AKTUALISIEREN:

Für jeden, der dies liest, habe ich es einfach nochmal versucht und es hat mit einer Kombination von Geerts und Joshuas Methoden funktioniert. Mein Firefox-Browser scheint die Seite zwischengespeichert zu haben, was mich zu der Annahme verleitet hat, dass dies nicht der Fall ist.

Der Grund dafür, dass ich es in die .htaccess-Datei gelegt habe, ist, dass diese Datei jedes Mal überschrieben wird, wenn ich auf die Permalinks-Admin-Seite gehe, und ich werde das nicht versehentlich überschreiben. Ich denke, ich könnte das irgendwie abstellen, aber nicht sicher, wie ich das machen soll. Alle drei Antworten halfen in gewissem Maße.

Solutions Collecting From Web of "Maskieren von wp-content / themes / name / images mit htaccess in das Verzeichnis der Bilder"

Schau dir das Roots WordPress Theme an . Sie scheinen mit den URLs genau das zu tun, was Sie wollen.

Hier ist ein Ausschnitt aus der Datei roots-htaccess.php :

 add_action( 'generate_rewrite_rules', 'roots_add_rewrites' ); function roots_add_rewrites($content) { $theme_name = next( explode( '/themes/', get_stylesheet_directory() ) ); global $wp_rewrite; $roots_new_non_wp_rules = array( 'css/(.*)' => 'wp-content/themes/' . $theme_name . '/css/$1', 'js/(.*)' => 'wp-content/themes/' . $theme_name . '/js/$1', 'img/(.*)' => 'wp-content/themes/' . $theme_name . '/img/$1', ); $wp_rewrite->non_wp_rules += $roots_new_non_wp_rules; } 

Hinweis: Wenn Sie dies direkt in einer .htaccess Datei ausführen können, wie in der Antwort von ZweiBlumen, sollten Sie diese Lösung wählen, da sie wahrscheinlich optimaler ist.

Wenn das Problem nur bei Bildern auftritt, aber nicht bei CSS oder Javascript, denke ich, dass es in Ihrer RewriteRule einen Tipperrors gibt. Ich glaube, du hast eine “1” nach dem “$” verpasst:

 RewriteRule ^images/(.*)$ wp-content/themes/standard/images/$1 [L] 

Möglicherweise möchten Sie auch versuchen, diese zusätzlichen statementen unterhalb der ursprünglichen Regel, dh unterhalb dieser Zeile, zu platzieren:

 RewriteRule ^index\.php$ - [L] 

Nicht sicher, obwohl.

Warum erstellen Sie keinen Shortcode dafür auf die folgende Art und Weise.

 function img_folder_shortcode( ) { return get_stylesheet_directory_uri() . '/images'; } add_shortcode( 'img_folder', 'img_folder_shortcode' ); 

Und dann verwenden Sie den folgenden Shortcode überall im Inhaltsbereich.

 https://wordpress.stackexchange.com/questions/35115/masking-wp-content-themes-name-images-to-just-images-directory-using-htaccess/[img_folder]/img.jpg img