Czy kiedykolwiek zastanawiałeś się, czy istnieje sposób na automatyczne wyświetlanie obrazów w skali szarości w WordPress po ich przesłaniu? Czas się skończył. W tym artykule pokażemy, jak możesz użyć prostych narzędzi do manipulacji obrazami PHP i funkcji WordPress, aby automatycznie uzyskać obrazy w skali szarości po przesłaniu. Możesz używać obrazów w skali szarości do najechania kursorem, suwaków,galerii lub czegokolwiek innego.

Pierwszą rzeczą, którą musisz zrobić, to otworzyć funkcje motywu.plik php i dodać następujący kod:
add_action ('after_setup_theme', 'themename_bw_size');
function themename_bw_size () {
add_image_size ('themename-BW-image', 100, 100, true);
}
Powyższy kod po prostu dodaje dodatkowy Rozmiar obrazu dla uploadera. Rozmiar jest ustawiony na 100 x 100px z twardym kadrowaniem. Możesz zmienić wymiary, aby dopasować je do swoich potrzeb. Gdy to zrobisz, musisz dodać następujący kod:
add_filter ('wp_generate_attachment_metadata', 'themename_bw_filter');
function themename_bw_filter ($meta) {
$file = wp_upload_dir();
$file = trailingslashit($file['ścieżka']).$meta['sizes']['themename-BW-image'] ['file'];
list($orig_w, $orig_h, $orig_type) = @getimagesize ($file);
$image = wp_load_image ($file);
imagefilter ($image, IMG_FILTER_GRAYSCALE);
switch ($orig_type) {
case IMAGETYPE_GIF:
imagegif ($image, $file );
break;
case IMAGETYPE_PNG:
imagepng ($image, $file );
break;
case IMAGETYPE_JPEG:
imagejpeg ($image, $file );
break;
}
return $meta;
}
Powyższy kod mówi przesyłającemu, aby utworzył dodatkowy rozmiar przesłanego obrazu. Przytnij go do rozmiaru określonego w poprzednim kroku. Następnie zastosuj filtr obrazu: Skala szarości.
Jeśli robiłeś to dla miniatur postów, możesz wyświetlić go w ten sposób w swoim motywie:
Jeśli chcesz to zrobić dla określonego załącznika, możesz użyć funkcji wp_get_attachment_image.
Uwaga: Należy zmienić ich nazwę na nazwę motywu.
Wszystkie podziękowania za tę niesamowitą sztuczkę należą się Otto.