TEMPLATEPATH fără numele temei? Nu există constanta THEMEPATH?
Există vreo metodă de a obține calea către directorul temelor fără tema curentă în cale?
De exemplu, într-o instalare standard WP, aș dori să obțin o referință către:
C:\xampplite\htdocs\numele-site/wp-content/themes/
Însă constanta TEMPLATEPATH returnează...
C:\xampplite\htdocs\numele-site/wp-content/themes/tema-activa-curent
dirname( STYLESHEETPATH );
Aceasta va returna directorul temei.
Niciodată nu presupuneți /wp-content/ sub ABSPATH. Eu folosesc adesea un director și domeniu diferit pentru wp-content pentru a permite cereri fără cookie către fișierele temei. Plugin-urile și temele proaste se strică groaznic în astfel de cazuri.
Adăugare
Sau folosiți get_theme_root() pentru calea fișierului și get_theme_root_uri() pentru URI. Ambele sunt definite în wp-includes/theme.php.
- 1 Mulțumesc. Acest lucru funcționează și el. Ar fi vreun beneficiu în utilizarea acesteia față de răspunsul lui imHavoc?
Scott B
@Scott B Nu ar trebui să fie nicio diferență. STYLESHEETPATH este definit în wp-includes/default-constants.php apelând get_stylesheet_directory() care întreabă get_theme_root().
fuxia
de fapt, după o analiză mai amănunțită, răspunsul tău este mai potrivit pentru întrebarea mea. returnează o cale de fișier, nu o cale URL așa cum face get_theme_root_uri() (c:\ în loc de http://) și, deoarece mut fișiere, exact asta aveam nevoie în acest caz.
Scott B
Poate utilizatorul să specifice orice alt director decât wp-content/themes pentru a-și stoca temele?
Scott B
@Scott: Este posibil, dar foarte greu de realizat și puțin probabil ca cineva să fi făcut asta.
Bainternet
Două linii în wp-config.php nu sunt chiar atât de greu. ;) Doar definește WP_CONTENT_DIR și WP_CONTENT_URL.
fuxia
@toscho: mulțumesc, înveți lucruri noi în fiecare zi, tocmai citeam despre asta pe http://codex.wordpress.org/Determining_Plugin_and_Content_Directories
Bainternet