Filtr dnia: sanitize_file_name – czyli nazwy plików bez znaków specjalnych

Bardzo często przy migracji witryny występuje problem z nazwami plików, a dokładniej z kodowaniem polskich znaków diakrytycznych. Jeżeli szukasz jak masowo zamienić już istniejące pliki, to muszę cię rozczarować, ten wpis nie jest o tym. Ten wpis jest o tym, jak nie dopuścić do takiej sytuacji, czyli zgodnie z zasadą, że lepiej jest zapobiegać, niż leczyć.

Dla mnie, ten kawałek kodu jest czymś co zawsze instaluje na wszystkich WordPressach, w których mam prawo to zrobić. Czytaj dalej Filtr dnia: sanitize_file_name – czyli nazwy plików bez znaków specjalnych

Dodaj użytkownika admin z hasłem admin

Często w czasie testowanie serwisu klienta pojawia się potrzeba utworzenia kopi serwisu na mojej lokalnej maszynie. Zazwyczaj używam do tego wtyczki Duplicator, która pozwala na szybkie i wygodne skopiowanie zarówno plików, jak i bazy danych. Często klient tworzy dla mnie konto, czasami nie.

Poniższy kod zmienia użytkownikowi „admin” lub zakłada użytkownika „admin” z hasłem „admin”.

require 'wp-load.php';
$admin = get_user_by( 'login', 'admin' );
if ( !empty( $admin ) ) {
    wp_set_password( 'admin', $admin->ID );
    echo 'New password "admin" for user "admin" was set.';
    return;
}
$admin_id = wp_create_user( 'admin', 'admin', sprintf( 'admin-%d@example.com', rand() ) );
$admin = new WP_User( $admin_id );
$admin->add_role( 'administrator' );
echo 'New user "admin" with password "admin" was created.';

Jak tego użyć?

Skopiuj kod do pliku w głównym katalogu WordPressa i uruchom go z przeglądarki. Pamiętaj, żeby go skasować po tym jak już dodasz admina.

Nigdy nie używaj tego na produkcji.

pobierz plik: iworks-set-admin.zip

Migracja danych Valhalla.pl

Na początku jest wycena.

Ale jak wycenić coś, czego wycenić się nie da? Taka praca, która nie do końca wiadomo jak będzie przebiegać. Zupełnie inaczej niż z grafiką, którą po prostu trzeba zmienić w motyw. Tam widać. Choć czasem są ukryte kruczki, to jednak praca na obcej bazie danych jest jednym wielkim kruczkiem. Oczywiście wycena na podstawie dostarczonej bazy, ale … nie było schematu, baza bardzo prosta, bez kluczy obcych, więc moja obawa, że coś „zgubię” bardzo mocna.

czytaj dalej jak to z importem było

Filtr dnia: get_the_date

Calendar - © Dafne Cholet 2011-01-20

Na jednej z grup na FB Artur opisał następujący problem:

Mam na swoim blogu szablon i wszystko byłoby w porządku gdyby nie problem z datą – wyświetla mi ją jako MM.DD.RRRR, a chciałbym by pokazywało ją po naszemu. W opcjach mam ustawione wyświetlanie daty na „3 listopada 2015”.

Szybka analiza motywu ujawniła, że na format daty, podany jest na sztywno w jednym z plików motywu w taki sposób: get_the_date('m.d.Y');. Dokładne sprawdzenie wykluczyło możliwość stworzenia w prosty sposób motywu potomnego, bo zaciąganie pliku nie jest zrobione w zalecany dla motywu potomnego sposób. Co można zrobić w takiej sytuacji?

Akcja dnia: user_register

Na jednej stronie mam problem z pojawiającymi się kontami użytkowników. Z tego co sprawdziłem problem sprawiała dziura we wtyczce fusion-core, która jest wymaganą wtyczką motywu Avada.

Nie mogę zrezygnować z tej wtyczki, więc naprawiłem ją ręcznie, kasując linię odpowiedzialną za import danych. Oczywiście problem wraca w czasie aktualizacji, więc w celu zapobieżenia ponownej sytuacji tego typu, napisałem krótką wtyczkę:

Czytaj dalej Akcja dnia: user_register

Brak polskiego tłumaczenia motywie WordPress

Dość często, w różnych miejscach pojawia się pytanie dotyczące braku tłumaczenia jakiegoś elementu. Jeżeli pytanie dotyczy jakiś egzotycznych skórek to jest w pełni uzasadnione, bo zazwyczaj nie mają one polskiego tłumaczenia lub co gorsza nie są nawet zrobione zgodnie z wytycznymi i … nie potrafią obsługiwać plików tłumaczeń. Niestety pytania dość często dotyczą standardowych motywów z rodzin Twenty X, które to motywy jak najbardziej spełniają wszelkie zalecenia jak i posiadają pełne polskie tłumaczenia.

Jak więc może być przyczyna braku? Czytaj dalej Brak polskiego tłumaczenia motywie WordPress