15 korisnih wp-config trikova koje treba znati

15 korisnih wp-config trikova - Adriahost

Datoteka, wp-config.php, je ključna za funkcionisanje kompletnog WordPress sajta. Bitna stvar kod nje je što sadrži informacije o bazi podataka, korisniku baze, lozinke i postavke hostinga. Koristi se za upravljanje sigurnošću i performansama sajta.

Gde se nalazi wp-config.php?

Ako ste kod vaše prve instalacije WordPressa radili to ručnim putem, ovo je pitanje koje ste verovatno postavili (sebi, Google-u, kolegi ili koleginici…). Podrazumevano, ova datoteka ne nalazi se pod ovim imenom u instalacijskom paketu. Kada se raspakuje paket namenjen za instalaciju WordPressa u njemu se može pronaći samo wp-config-sample.php i to je buduća wp-config.php datoteka.
Izmenama u wp-config.sample.php nastaje wp-config.php (preimenovanje je neophodno). Na naznačenim mestima treba uneti ime baze podataka, ime korisnika baze i lozinku.
Ovaj postupak obavlja se jedino kod ručne instalacije WordPressa i ako se koristi automatizovana metoda (Adriahost nudi Fantastico de Luxe aplikaciju u cPanelu) ručno unošenje podataka nije potrebno. Jednom kada je instalacija izvršena na bilo koji od pomenutih načina, može se pristupiti dodatnom postavljanju. U ovom tekstu možete pronaći kako i šta još dodatno može biti omogućeno, ograničeno ili olakšano izmenom wp-config.php datoteke.

1. Uključivanje debagovanja (engl. Debug) u WordPressu

Kada nastupe problemi, WordPress Debuging može pomoći. Debagovanje se uključuje dodavanjem sledećih linija koda u wp-config.php:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_DISPLAY', false );
//define( 'WP_DEBUG_DISPLAY', true );
define( 'WP_DEBUG_LOG', true );

Na ovaj način aktivara se zadatak za beleženje i stvaranje Log datoteke koja će biti smeštena u wp-content direktorijumu.

2. Izmena URL-a veb-sajta i WordPressa

URL veb-sajta i WordPressa može biti izmenjen dodavanjem sledećih linija koda u wp-config.php:

define('WP_SITEURL', 'http://www.domen.rs');
define('WP_HOME', 'http://www.domen.rs');

Ovo je korisno kod migracije sajta na novi URL jer se na ovaj način zaobilaze (override) vrednosti definisane u wp-options tabeli.

Drugi način je korišćenje SERVER varijable koja će postaviti ove vrednosti dinamički:

define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST'] );
define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST'] );

3. Uvećanje (umanjenje) PHP memorije

PHP memorija (njen limit) može biti uvećana ako dodate sledeći kod u wp-config.php:

define( 'WP_MEMORY_LIMIT', '64M' );

Umesto 64 unesite vrednost izraženu u megabajtima koja vam odgovara.

4. Izmena Trash Box tajminga

Podrazumevano, kada korisnik obriše članak, stranicu ili komentar, šalje ih u Trash Box gde ih WordPress briše nakon 30 dana. Za izmenu ovog perioda treba dodati sledeći kod:

define( 'EMPTY_TRASH_DAYS', 15 );

Umesto 15 treba staviti vremenski period. Broj označava dane i u primeru iznad stoji da će Trash Box biti ispražnjen 15 dana nakon brisanja određenih stavki. Ukoliko se na to mesto upiše 0 (nula), Trash Box će biti isključen.

5. Isključivanje automatskog ažuriranja WordPressa

Od verzije 3.7, postoji automatsko ažuriranje za core izdanja i prevode. Ova opcija se može isključiti dodavanjem sledeće linije u wp-config.php:

define( 'AUTOMATIC_UPDATER_DISABLED', true );

6. Revizije u WordPressu – Upravljanje Autosave intervalima

Tokom uređivanja tekstova WordPress automatski čuva revizije (kopije u trenutku pregleda). Podrazumevano, revizija nastupa svakih 60 sekundi, ali to može biti promenjeno na sledeći način dodavanjem:

define( 'AUTOSAVE_INTERVAL', 180 );

180 u primeru iznad je broj sekundi.

Ako dodate sledeći red odredićete maksimalni broj revizija koje će WordPress čuvati:

define('WP_POST_REVISIONS', 7);

Revizije se mogu i isključiti dodavanje sledećeg koda (nije preporučljivo):

define('WP_POST_REVISIONS', false)

7. FTP/SSH akreditivi

Neki hostovi zahtevaju FTP ili SSH akreditive za svako ažuriranje ili instalaciju bilo čega na WordPressu. Akreditive možete uneti kao:

define('FS_METHOD', 'ftpext');
//absolute path to root installation directory
define('FTP_BASE', '/path/to/wordpress/');
//absolute path to "wp-content" directory
define('FTP_CONTENT_DIR', '/path/to/wordpress/wp-content/');
//absolute path to "wp-plugins" directory
define('FTP_PLUGIN_DIR ', '/path/to/wordpress/wp-content/plugins/');
//absolute path to your SSH public key
define('FTP_PUBKEY', '/home/username/.ssh/id_rsa.pub');
//absolute path to your SSH private key
define('FTP_PRIVKEY', '/home/username/.ssh/id_rsa');
//either your FTP or SSH username
define('FTP_USER', 'username');
//password for FTP_USER username
define('FTP_PASS', 'password');
//hostname:port combo for your SSH/FTP server
define('FTP_HOST', 'ftp.example.org:21');

Takođe se može forsirati direktni metod ubacivanjem sledeće linije u wp-config.php:

define('FS_METHOD', 'direct');

8. Automatsko popravljanje baze podataka

Baza podataka u određenim uslovima može postati korumpirana. To može izazvati problem zbog kog nećete moći ni da se prijavite na kontrolnu tablu. Ako se to desi, unesite sledeći kod u wp-config.php:

define('WP_ALLOW_REPAIR', true);

Nakon toga posetite sledeću adresu:

 {ADRESA-SAJTA}/wp-admin/maint/repair.php

Kada se popravka izvrši, možete ukloniti prethodno dodati red iz wp-config.php datoteke.

9. Zabrana izmena datoteka iz bekenda

Za zabranu uređivanja datoteka tema i dodataka iz uređivača koda koji se nalazi u WordPressovoj kontrolnoj tabli uneti sledeći red u wp-config.php:

define('DISALLOW_FILE_EDIT', TRUE);

10. Postavljanje podrazumevajuće teme

Ako često koristite jednu osnovnu temu za izradu veb-sajtova (možda ste freelancer ili radite u agenciji za veb-dizajn) svojih klijenata, bilo bi dobro kada ne biste morali kod svaka nove instalacije da menjate “Twenty-Nešto” u temu koju vi koristite. Evo kako možete unapred postaviti podrazumevanu temu po izboru:

define( 'WP_DEFAULT_THEME', 'ime-foldera-podrazumevane-teme' );

Pošto wp-config.php ne postoji pre instalacije WordPressa, kod iznad se postavlja u wp-config-sample.php datoteci.

11. Preskakanje wp-content direktorijuma pri ažuriranju WordPressa

Za ovakvu akciju dovoljno je imati dva razloga – ne koristite podrazumevane teme i imate svoje teme. Takođe, kao treći razlog može doći i to da ne želite novu podrazumevanu temu kod sledećeg bitnog ažuriranja. Pošto je u WordPressu to lako, wp-content direktorijum može biti preskočen prilikom ažuriranja i to dodavanjem sledećeg koda u wp-config.php:

define( 'CORE_UPGRADE_SKIP_NEW_BUNDLED', true );

12. Dozvoljavanje nefiltriranog upload-a za Administratore

WordPress ima ograničenja kada je upload određenih tipova datoteka u pitanju. Podrazumevano, ne može se uploadovati ništa osim dokumenata, slika i video snimaka. To je dobro, ali ako razvijate softver kojeg niko drugi trenutno nema, dobro je imati mogućnosti da ga postavite na svoj sajt. Dodajte sledeći kod:

define( 'ALLOW_UNFILTERED_UPLOADS', true );

Ovaj kod uklanja ograničenja samo za Administratore.

13. Dinamički WPLANG kod višejezičnih sajtova

Ako vodite višejezični sajt i želite mogućnost premene jezika teme i administrativnog panela, možete upotrebiti kod za detektovanje jezika iz posetiočevog pregledača interneta. Na osnovu tog podataka biće definisan i WPLANG.

Najpre napravite wp-lang.php datoteku, ubacite u nju kod koji vidite ispod i sačuvajte je u istom direktorijumu gde se nalazi i wp-config.php:

?php 
// start the session 
session_start(); 
 
// if there's a "lang" parameter in the URL... 
if( isset( $_GET[ 'lang' ] ) ) { 
 
 // ...set a session variable named WPLANG based on the URL parameter... 
 $_SESSION[ 'WPLANG' ] = $_GET[ 'lang' ]; 
 
 // ...and define the WPLANG constant with the WPLANG session variable 
 define( 'WPLANG', $_SESSION[ 'WPLANG' ] ); 
 
// if there isn't a "lang" parameter in the URL... 
} else {
 
 // if the WPLANG session variable is already set...
 if( isset( $_SESSION[ 'WPLANG' ] ) ) {
 
 // ...define the WPLANG constant with the WPLANG session variable 
 define( 'WPLANG', $_SESSION[ 'WPLANG' ] ); 
 
 // if the WPLANG session variable isn't set...
 } else { 
 
 // set the WPLANG constant to your default language code is 
 define( 'WPLANG', 'sr_RS' ); 
 
 } 
} 
?

Nakon toga otvorite wp-config.php i liniju u kojoj je definisan wplang zamenite sledećim kodom:

require_once( dirname( __FILE__ ) . '/wp-lang.php' );

Posetioci će onda moći da menjaju jezik teme i admin panela bilo da je to urađeno automatski ili klikom na lang=sr_RS URL parametar.

14. Pomeranje wp-config.php datoteke na drugu lokaciju

WordPress automatski pretražuje jedan nivo iznad od onog na kome je instaliran. Ako je vaš WordPress instaliran u web root-u možete pomeriti wp-config.php jedan nivo na gore (teže pristupnu lokaciju) i nećete morati ništa da menjate.

Međutim, wp-config.php se može postaviti bilo gde. Može se napraviti druga wp-config.php datoteka u root direktorijumu koja pokazuje na “pravu” wp-config.php datoteku:

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
 define('ABSPATH', dirname(__FILE__) . '/');
/** Location of your WordPress configuration. */
require_once(ABSPATH . '../putanja/wp-config.php');

Obavezno promenite putanju iz koda iznad tako da ukazuje na lokaciju sa vašom datotekom.

15. WordPress Multisite mreža – WPMU

U ranijem tekstu pisali smo o postavljanju WPMU sajta. Kompletne postavke i uputstva pogledajte ovde: Kako da instalirate WordPress Multisite na AdriaHost serveru

Kod koji se dodaje u wp-config.php na početku aktivacije izgleda ovako:

/* Multisite */
define( 'WP_ALLOW_MULTISITE', true );

16. Uključivanje nativnog keširanja u WordPressu

Native Cache može biti uključeno dodavanje sledećeg koda u wp-config.php:

define (‘WP_CACHE’, true);

Obavezno je bekapovanje pre uređivanja

Pre uređivanja i dodavanja bilo kakvih redova koda u wp-config.php datoteku obavezno napraviti njenu kopiju i sačuvati je na sigurnoj lokaciji. Na taj način izbegate mogućnost greške i imate spremno rešenje ukoliko nešto krene po lošem. Ukoliko posedujete demo sajt izvršite testiranje svih kodova koje želite da postavite pre nego što ih upotrebite na javnom sajtu.

PRIJAVITE SE ODMAH ZA NAJNOVIJE TEKSTOVE SA NAŠEG BLOGA!

 

Tags: , , , , , ,

Nema komentara.

Pošalji komentar