Fișierul .htaccess implicit pentru WordPress?

17 mar. 2012, 13:10:36
Vizualizări: 405K
Voturi: 22

Fișierele mele .htaccess interceptează fișierul .htaccess al WordPress-ului.

Ce module și ce setări (specificate în .htaccess) sunt necesare pentru ca WordPress să funcționeze? Cu alte cuvinte, unde pot găsi fișierul .htaccess implicit al WordPress?

1
Comentarii

Există articolul din codexul WordPress despre fișierele htaccess.

Nicolai Grossherr Nicolai Grossherr
18 mai 2015 14:34:15
Toate răspunsurile la întrebare 4
3
36

Aici este codul implicit pentru acel fișier.

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

puteți verifica aici pentru fișierul htaccess implicit.

http://codex.wordpress.org/Using_Permalinks.

Mulțumesc. Sper că ajută puțin.

17 mar. 2012 13:16:05
Comentarii

Te rog, vezi conversația aici despre asta.

User User
6 iun. 2012 06:28:51

!!! Răspunsul este învechit. Folosește noul : https://wordpress.stackexchange.com/a/250918/33667

T.Todua T.Todua
13 dec. 2020 17:03:51

Link actualizat: https://wordpress.org/support/article/using-permalinks/

Michael Yaeger Michael Yaeger
25 mar. 2022 18:32:21
1

WordPress nu conține fișierul .htaccess ca formă implicită.

Regulile sunt scrise în fișier de către funcția save_mod_rewrite_rules() și sunt generate de $wp_rewrite->mod_rewrite_rules().

Rețineți că instalarea multisite are reguli diferite (mai complexe) și pare să fie gestionată în mod diferit.

17 mar. 2012 14:10:53
Comentarii

+1 pentru direcția corectă. Te rog să verifici dacă am înțeles corect problema cu răspunsul meu. Cred că aspectul principal este doar să folosim API-ul Rewrite_WP, nu să reinventăm roata cu fișiere .htaccess personalizate.

User User
22 apr. 2012 13:42:17
0

Folosește ultima versiune a fișierului .htaccess implicit

https://wordpress.org/support/article/htaccess/.

1 ian. 2017 10:04:16
1

Folosiți canalul Freenode #wordpress pentru a găsi documentația potrivită, de obicei în /topic. Acolo am găsit informații despre Class WP_Rewrite aici, wordpress.org oficial este în cel mai bun caz înșelător și orientat spre marketing. În orice caz, nu amestecați regulile de rescriere Apache cu regulile de rescriere WP, deși denumirea din WP provine probabil de la echivalentul Apache.

API-ul WP_Rewrite specifică

Puteți adăuga reguli pentru a declanșa vizualizarea și procesarea paginii folosind această componentă. Funcționalitatea completă a unui controller frontal nu există, ceea ce înseamnă că nu puteți defini modul în care se încarcă fișierele template pe baza regulilor de rescriere.

așadar trebuie să folosiți API-ul pentru a face modificări, nu sunt complet sigur ce înseamnă dar cred că înseamnă că nu vă puteți baza pe fișierele .htaccess codificate manual -- lucrurile se pot schimba chiar și cu versiuni diferite de WordPress! Deci folosiți API-ul.

interceptare

Codul de aici are câteva condiții dacă fișierul .htaccess există -- nu sunt 100% sigur de implicațiile lor deoarece nu sunt bine documentate și nu pot înțelege denumirile de acolo, dar mesajul central este probabil că modalitatea sigură de a menține regulile de rescriere este să folosiți API-ul WP_Rewrite, WordPress se poate schimba în viitor.

De exemplu, o rescriere Apache simplă RewriteRule ^hello$ Layouts/hello.html [NC,L] este aparent ceva de genul add_rewrite("^hello$", "Layouts/hello.html"), nu am testat dar am încercat să urmez API-ul de mai jos:

add_rewrite_rule (linia 19)
Adaugă o regulă de rescriere directă.

vezi: WP_Rewrite::add_rule() pentru descrierea detaliată.
din: 2.1.0
void add_rewrite_rule (string $regex, string $redirect, [string $after = 'bottom'])
string $regex: Expresie regulată pentru potrivirea cererii.
string $redirect: Pagina către care se face redirecționarea.
string $after: Opțional, implicit este 'bottom'. Unde să se adauge regula, poate fi și 'top'.

Legături conexe

  1. http://codex.wordpress.org/Rewrite_API/add_rewrite_rule

  2. http://pmg.co/a-mostly-complete-guide-to-the-wordpress-rewrite-api

  3. Mulțumiri lui toscho pentru asistență aici, câteva discuții în chat.

22 apr. 2012 13:31:21
Comentarii

Sunt destul de sigur că am înțeles greșit ceva aici, te rog să revezi această conversație aici. S-a interceptat pentru că blog-ul meu era la nivel root, adică ceva de genul www.hello.com/blog/?

User User
6 iun. 2012 06:33:47