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:
<?php the_post_thumbnail( 'themename-BW-image');?>
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.