by karlosky | Sty 28, 2015 | Obrazy
Na jednej ze stron zechciałem wyświetlać ostatnie wpisy z bloga. Jako najprostszy sposób pobierania danych wybrałem oczywiście kanał RSS, który WordPress ma w standardzie. W standardzie nie posiada jednak miniatur wpisów, które w moim przypadku były niezbędne. Jak rozwiązać ten problem? Przeszukując bazę pluginów do WordPressa znalazłem wiele gotowych rozwiązań, które rozbudowują treść i strukturę kanału RSS. Pozwalają także dodawać miniatury, jednak nie w takiej formie, w jakiej bym chciał. Najczęściej są to rozwiązania przyklejające obrazek jako znacznik <img> do treści posta lub też dodające gotowe tagi xml, np: <media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://adresbloga.pl/wp-content/uploads/2015/01/adresminiatury.jpg" width="150" height="150"/> Ja tymczasem potrzebowałem czystego adresu URL obrazka, zamkniętego np. w znaczniku <image></image>. W tym celu napisałem prostą funkcję: function rss_get_image(){ global $post; if (function_exists ('has_post_thumbnail') && has_post_thumbnail($post->ID)) { $image_id = get_post_thumbnail_id( $post->ID ); $image_url = wp_get_attachment_url($image_id); } return ($image_url); } Niestety sama funkcja nie wystarczy, bo trzeba ją jeszcze wprowadzić do kanału RSS. Choć staram się nigdy nie edytować plików WordPressa, to w tym przypadku uznałem, że nie mam wyjścia. Musiałem umieścić funkcję w pliku /wp-includes/feed-rss2.php. Wewnątrz znacznika <item></item> umieściłem swój upragniony obrazek: <image><?php echo rss_get_image(); ?></image> W ten sposób mamy sam URL obrazka w jednym tagu...
by karlosky | Lis 23, 2014 | Obrazy, Pluginy
Opisywałem ostatnio sposób zmiany rozmiarów zdjęć uploadowanych do biblioteki multimediów WordPressa. Tak wprowadzone zmiany niestety nie poprawiają rozmiaru zdjęć dodanych wcześniej. Podobny problem występuje także podczas zmiany szablonu WP, gdy nowy szablon korzysta z innych rozmiarów miniatur, niż poprzedni. Aby uzyskać oczekiwany efekt i prawidłowe rozmiary zdjęć, możemy oczywiście załadować zdjęcia do WordPressa ponownie. Przy większej ilości zdjęć jest to jednak dosyć uciążliwe. Na szczęście baza pluginów do WordPressa posiada rozwiązanie tego problemu – plugin Regenerate Thumbnails. Po zainstalowaniu wtyczki wystarczy przejść od biblioteki multimediów (zakładka „Media”), zaznaczyć wybrane zdjęcia (lub wszystkie) oraz z menu masowych działań wybrać „Regenerate Thumbnails” i kliknąć „Zastosuj”. W zależności od ilości wgranych zdjęć proces ten może potrwać kilka minut. Wszystko przebiega jednak stosunkowo szybko i sprawnie, więc zdecydowanie warto skorzystać z takiego rozwiązania, zamiast ładować pliki...
by karlosky | Lis 16, 2014 | Obrazy
WordPress daje nam kilka standardowych rozmiarów uploadowanych grafik. Za każdym razem, gdy korzystamy z biblioteki multimediów dodając pliki graficzne, WordPress tworzy automatycznie kilka różnych kopii: Miniatura (Thumbnail) Średni rozmiar (Medium) Duży rozmiar (Large) Pełny rozmiar (Full) Każdą grafikę możemy swobodnie wykorzystywać zgodnie z dostępnymi rozmiarami. Tworząc lub edytując własny szablon WordPressa możemy swobodnie dodawać własne rozmiary obrazków, które zostaną automatycznie zapisane na serwerze podczas ich wysyłanie do biblioteki multimediów. Aby dodać własny rozmiar obrazków w WordPressie możemy skorzystać z funkcji add_image_size. Funkcję tą możemy wykorzystać w pliku functions.php modyfikowanego szablonu, dodając kod według schematu: add_image_size( $name, $width, $height, $crop ); Funkcja ta może przyjmować 4 parametry: $name – nazwa nowego rozmiaru, którą możemy później wykorzystywać w szablonie $width – szerokość obrazka $height – wysokość obrazka $crop – parametr opcjonalny, określa typ „cropowania”, czyli sposobu określania rozmiaru i proporcji obrazka...