Dodawanie kodu do WordPress - bezpieczne metody
Potrzebujesz dodać custom PHP, JavaScript czy CSS do WordPress? Edycja functions.php jest ryzykowna - błąd składni = biały ekran. Bezpieczniejsze metody: wtyczka Code Snippets, mu-plugins, lub child theme.
Krótka odpowiedź
Code Snippets - polecana metoda
Dlaczego Code Snippets:
- Bezpieczne (błąd nie psuje strony)
- Organizacja kodu w snippety
- Włączanie/wyłączanie jednym kliknięciem
- Eksport/import
- Nie ginie przy aktualizacji motywu
Instalacja:
- Wtyczki → Code Snippets
- Aktywuj
Dodawanie snippeta:
1. Snippets → Add New
2. Tytuł opisowy
3. Wklej kod PHP (bez 4. Opis co robi
5. Run snippet: Everywhere / Admin only / Frontend only
6. Save and Activate
Bezpieczeństwo:
- Błąd w snippecie = snippet się dezaktywuje
- Strona nadal działa
- Popraw błąd i aktywuj ponownie
functions.php - tradycyjna metoda
Gdzie edytować:
- TYLKO w child theme!
- Wygląd → Edytor plików motywu (niezalecane)
- Lepiej: przez FTP/File Manager
Ryzyko:
- Błąd składni = biały ekran
- Brak dostępu do wp-admin
- Musisz naprawić przez FTP
Zabezpieczenie:
```php
// Na początku funkcji:
if (!function_exists('my_function')) {
function my_function() {
// kod
}
}
add_action('init', 'my_function');
```
Naprawianie błędu:
1. FTP → wp-content/themes/child-theme/
2. Edytuj functions.php
3. Znajdź i napraw błąd
4. Zapisz
mu-plugins - must-use plugins
Co to mu-plugins:
- Folder wp-content/mu-plugins/
- Wtyczki które zawsze są aktywne
- Nie można dezaktywować z panelu
- Ładowane przed zwykłymi wtyczkami
Kiedy użyć:
- Kod który musi zawsze działać
- Custom post types
- Krytyczne funkcje
Tworzenie:
1. Utwórz folder: wp-content/mu-plugins/
2. Utwórz plik: my-functions.php
3. Dodaj kod:
```php
/**
* Plugin Name: My Custom Functions
*/
add_action('init', function() {
// Twój kod
});
```
Zalety:
- Nie znika przy aktualizacji
- Niezależne od motywu
- Zawsze aktywne
CSS i JavaScript
CSS - Customizer:
- Wygląd → Dostosuj → Dodatkowy CSS
- Prosty i bezpieczny
- Zapisywany w bazie danych
CSS - plik w child theme:
```css
/* style.css w child theme */
.my-class { color: red; }
```
JavaScript - wp_enqueue_scripts:
```php
add_action('wp_enqueue_scripts', function() {
wp_enqueue_script(
'my-script',
get_stylesheet_directory_uri() . '/js/custom.js',
['jquery'],
'1.0',
true // in footer
);
});
```
Insert Headers and Footers (wtyczka):
- Dodaj kod do
- Google Analytics, Facebook Pixel
- Custom CSS/JS