Ostatnimi czasy mam problemy z jednym z moich serwisów postawionych na wordpressie, ponieważ przy włączeniu pewnej wtyczki wywalało mi błąd zbyt małej ilości pamięci PHP, w związku z tym musiałem sobie jakoś poradzić sobie z tym problemem. Niestety strona ta stoi na sharedzie i nie mam tam możliwości edycji pliku php.ini, dlatego szukając alternatywnego rozwiązania odktyłem że w wp-config.php możemy ustalać bezproblemowo ilość pamięci PHP i wiele innych opcji. Poniżej podaję komendy które możecie wstawić do swojego pliku wp-config.php wraz z krótkimi opisami.
Zmiana limitu pamięci dla PHP
Opcja przydatna gdy jesteśmy na współdzielonym hostingu, nie mamy dostępu do php.ini, a jest nam potrzebna większa ilość pamięci:
define('WP_MEMORY_LIMIT', '64M'); // 64M to liczba MB pamięci
Zmiana adresu bloga
Zmiana adresu naszego bloga, przydatna przy przenosinach, gdy w bazie danych mamy stary adres:
define('WP_SITEURL', 'http://www.example.com');
Zmiana adresu strony głównej bloga
Zmiana strony głównej naszego bloga, przydatna przy przenosinach, gdy w bazie danych mamy stary adres:
define('WP_HOME', 'http://www.example.com');
Zmiana lokalizacji katalogu wp-content
define( 'WP_CONTENT_URL', 'http://www.example/blog/wp-content');
Zmiana lokalizacji katalogu z pluginami
define( 'WP_PLUGIN_URL', 'http://www/example/blog/wp-content/plugins');
Zmiana odstępów czasowych pomiędzy automatycznym zapisem wpisu
Wiekszość z was już pewnie zdążyła zauważyć że wordpress ma funkcję automatycznego zapisu szkiców. Szkice te zapisywane są co w stałych odstępach czasu, które możemy ustalić poniższą komendą. Wydaje mi się że ustalenie wyższej wartości może odciążyć naszego bloga.
define('AUTOSAVE_INTERVAL', 160 ); // czas w sekundach
Wyłączenie systemu rewizji
Od bodajże wersji 2.6 w wordpress został wprowadzony system rewizji, który przy każdym zapisie tworzy archiwalną kopię poprzedniego wpisu, co w efekcie potrafi czasem zapchać bazę danych. Aby wyłączyć tą funkcję wystarczy poniższa komenda:
define('WP_POST_REVISIONS', false );
Ustalenie maksymalnej liczby kopii wpisu w systemie rewizji
define('WP_POST_REVISIONS', 3); // Wartość 3, ogranicza do maksymalnie 3 kopii na wpis
Zdefiniowanie pliku cookie
define('COOKIE_DOMAIN', 'www.askapache.com');
Debugowanie błędów
Po włączeniu tej opcji, wordpress będzie generował nam raporty z błędami.
define('WP_DEBUG', true); // Włącza debugowanie błędów
define('WP_DEBUG', false); // Wyłącza debugowanie błędów
Ustalenie lokalizacji zapisu logów z błędami
@ini_set('log_errors','On');
@ini_set('display_errors','Off');
@ini_set('error_log','/home/example.com/logs/php_error.log');
/* That's all, stop editing! Happy blogging. */
Włączenie cache’u
Komenda często wymagana do poprawnej pracy pluginów cache’ujących.
define('WP_CACHE', true);
Ustalenie własnych nazw tabeli user i usermeta
define('CUSTOM_USER_TABLE', $table_prefix.'my_users');
define('CUSTOM_USER_META_TABLE', $table_prefix.'my_usermeta');
Pliki tłumaczenia i ich lokalizacja
define('WPLANG', 'pl_PL'); // Ustala nazwę tłumaczenia które ma zostać załadowane
define('LANGDIR', 'mylanguagedirectory'); // Definiuje katalog w którym znajduje się tłumaczenie
Zapisywanie zapytań do analizy
Funkcja przydatna do optymalizacji zapytań bazy danych, wyświetla podstawowe informacje o zapytaniach.
define('SAVEQUERIES', true);
…oraz wstawiamy do naszej stopki poniższy kod (zmień nawisy kwadratowe na ostre):
[?php
if (current_user_can('switch_themes')){
global $wpdb;
echo "[pre]";
print_r($wpdb->queries);
echo "[/pre]";
}
?]
Wymuszanie domyślnych CHMOD’ów dla plików wordpressa
W przypadku niektórych hostingów zablokowana jest możliwość ustawienia niektórych wartości CHMOD dla plików lub katalogów, w takim przypadku na pomoc przychodzą nam dwie poniższe komendy które wymuszają domyślne ustawienia dla plików i katalogów wordpressa:
define('FS_CHMOD_FILE',0755); // Uprawnienia dla plików
define('FS_CHMOD_DIR',0755); // Uprawnienia dla katalogów
Sprawdzanie naszych ustawień
Jeżeli chcecie znać wszystkie wartości ustawień waszego wordpress’a to wykonajcie poniższą komendą w pliku php (zamień nawiasy kwadratowe na ostre):
[?php print_r(@get_defined_constants()); ?]

Na pewno się przyda!
Dzięki za wpis, może wreście nie będę miał problemów z wp.
[...] view source [...]