Wsparcie » Używanie i konfiguracja WordPressa » problem z miniaturami do postów
problem z miniaturami do postów
-
mam dość dziwny problem z miniaturami postów:
– wyświetla mi się na stronie nie ten rozmiar, który zadeklarowałem, ale od początku.
– tworzę własny szablon, projekt zakłada miniaturę postów w rozmiarach 539×250, zadeklarowałem rozmiar i nazwę w function.php, zmieniłem ustawienia w zakładce MEDIA. dodatkowo próbowałem tez użyć wtyczki Post Thumbnail Editor, ale też nie działa.
– dodając do biblioteki zdjęcie WP tworzy kilka rozmiarów fotek, także ten zdefiniowany przezemnie (jest w katalogu na serwerze), ale wyświetla już inny – o wymiarach 333×250, próbując wstawiać the_post_thumbnail(’medium’) czy the_post_thumbnail(’thumbnail’) też wyświetla obrazki przycięte proporcjonalnie, a nie tak jakbym ja sobie tego życzył o wym 539×250.
ktoś ma jakiś pomysł ?
- This topic was modified 6 years, 10 months temu by vojtlomir.
-
Pokaż kod którym zadeklarowałeś nowy rozmiar miniatury i kod którym potem chcesz ją wyświetlić.
function.php
<?php add_theme_support( 'post-thumbnails' ); set_post_thumbnail_size( 539, 250, array('center', 'center') ); add_image_size( 'qwe', 539, 250 ); ?>
w page
src="<?php the_post_thumbnail('qwe'); ?>
zdjęcie w katalogu tworzy się o odpowiednich rozmiarach, tylko nie mogę na nie wskazać , wyciągnąć go
- Ta odpowiedź została zmodyfikowana 6 years, 10 months temu przez vojtlomir.
nie kumam tego…
pisząc w function.php<?php add_theme_support( 'post-thumbnails' ); add_image_size( 'qwe', 539, 250); ?>
i w pętli:
<?php the_post_thumbnail('qwe') ?>
to wyświetla mi fotkę, której h_max=250px i faktycznie tak stworzył fotkę w katalogujak w function dodam hard crop (w jakiejkolwiek wersji)
<?php add_theme_support( 'post-thumbnails' ); add_image_size( 'qwe', 539, 250, true); ?>
to wtedy w katalogu tworzy fotkę o rozmiarze 539×250, ale już jej nie wyświetla w źródle pojawia się:
src="<img width=" 539" height="250"> == $0
kierując się tym artykułem:
Guide to Cropping Thumbnails in WordPress
myślałem, że mogę wyciągnąć zdjęcie za pomocą
<?php the_post_thumbnail(array(539,250)) ?>
ale nie….
wersja tworzona bez hard crop’a z której otzymuję foto 333×250 mogę wyświetlić za pomocą
<?php the_post_thumbnail(array(333,250)) ?>
ale przycięte hard cropem już jest poza moim zasięgiem 🙂
…. a w artukule koleś pisał (o ile dobrze zrozumiałem, bo mój angielski być trochę kwadratowy), że WP identyfikuje pliki po nazwie (a tworząc miniatury, do oryginału dodaje width x height) i żeby nie tworzyć miniatur o tych samych rozmiarach, bo się gubi….jeśli dobrze rozumiem (jestem bardzo początkujący), to przydałaby się jakaś funkcja, która sczytałaby do tablicy zawartość katalogu i wtedy możnaby sobie było wyciągnąć z tej tablicy co się chce (nie wiem czy to nawet tak nie działa, bo w źródle strony w wyniku dostaję kilka adresów z różnymi wielkościami plików w nazwie, ale nie są to wszystkie rozmiary) – mam nadzieję że nie zakręciłem za mocno
<?php the_post_thumbnail(array(539,250)) ?>
oraz<?php the_post_thumbnail('qwe') ?>
będzie miało taki sam efekt, wymiary podawane jako tablica przydają się bardziej w momencie kiedy nie masz zdefiniowanego własnego nowego rozmiaru miniatur, alb martwisz się wsteczną kompatybilnością ze starymi obrazkami które takich rozmiarów nie będą miało (o ile to Twoja strona a nie kod jakiegoś motywu/wtyczki, to tutaj sobie możesz użyć np. wp regenerate thumbnails).Kod masz poprawny, ciekawe że z cropem na true także masz takie dziwne problemy – ale czy aby na pewno po zmianie w kodzie crop na true, testujesz na „nowo” dodanych obrazkach? Na stare ten kod nie „zadziała”, same się cudownie nie zaktualizują 🙂
Ostatnia sprawa, pokaż mi przykładowy obrazek który próbujesz dodać i się źle wyświetla, oraz pokaż mi jakie dokładnie pliki Tworzy WP w katalogu uploads/rok/miesiac/ dla nowo dodanego obrazka.
nie widzę swojej odpowiedzi:
1. wiem, że to daje taki sam efekt, ale już próbuje wszystkiego metodą prób i błędów może „coś zaskoczy” 🙂
2. to moja strona, motyw budowany od podstaw i jest nowy także nie martwię się kompatybilnością wsteczną.
3. i właśnie tego się obawiałem – kod mam prawidłowy, a nie działa… tak testuje na nowych obrazkach, tzn. czyszczę bibliotekę, sprawdzam katalog „uploads” i dopiero wgrywam „nowe” znaczy się mam 8 szt. do testowania (te z folderu „przykładowe obrazy” z windy nr 7 🙂 )
4. zaraz porobię screeny i podlinkuje je.… pisząc ten post wpadłem na jeszcze jeden pomysł: może te problemy biorą się z tego że na tej instalacji Wp testowałem przeróżne wtyczki galerii i inne do np przycinania miniatur…
podlinkuję screeny i wyczyszczę DB potem postawię nowego WP, jak się nic nie zmieni, to wtedy wrzucę ten jeszcze „pokiereszowany” projekt na zewnętrzny serwer i dam Ci dostęp, może gdzieś jednak popełniłem błąd i to się przekłada na działanie miniatur … mało możliwe, ale w tej sytuacji jestem w stanie uwierzyć we wszystko.. jakieś 16h siedzę nad samymi miniaturami hihihih
aha takie pliki tworzy z hard crop:
a tak wygląda źródło:
function.php
<?php add_theme_support( 'post-thumbnails' ); add_image_size( 'qwe', 539, 250, true); ?> <?php register_nav_menu( 'nav-main', 'menu glowne' ); ?> <?php if ( function_exists('register_sidebar') ) register_sidebar(); ?>
page.php
<section> <div class="container"> <h1>Nasze Realizacje</h1> <div class="gallery-katalog-nav">Nawigacja po podstronach</div> <ul class="gallery-katalog-container"> <?php global $more; $more = 0; query_posts('cat=10'); if(have_posts()) : while(have_posts()) :the_post(); ?> <li class="gallery-katalog-min-single"> <a href=<?php the_permalink(); ?>><img class="gallery-katalog-min" alt="Kuchnia Mińsk biały lakier" src="<?php the_post_thumbnail('qwe') ?> <p class="gallery-katalog-title"><?php the_title(); ?></p></a> <?php the_content() ?> </li> <?php endwhile; endif; wp_reset_query(); ?> </ul> </div> </section> <?php get_footer(); ?>
znalazłem błąd…
okazuje się, że jak się chce wyświetlić własny rozmiar miniatury za pomocą
<?php the_post_thumbnail() ?>
to nie można używać w motywie znacznika img czyli tam gdzie ma być zdjęcie poprostu wpisujemy powyższy kod nic więcej, nic mniej. dziwne trochę, ale ok.topic do zamknięcia
dzięki amistad18
Ahh, gdybyś od razu dał więcej kodu niż tylko nazwę funkcji to bym zauważył 🙂
Nie jest to dziwne, tak to już działa w WordPressie. Jak nazwa funkcji zaczyna się od
the_
to spodziewaj się że coś wyświetla. Tak jakthe_content()
iget_the_content()
,the_title()
iget_the_title()
,the_permalink()
iget_the_permalink()
– gdzie np.the_content()
to jest tak naprawdęecho get_the_content()
.Dodatkowo w dokumentacji masz dla:
the_post_thumbnail()
Return
(string) The post thumbnail image tag.I zazwyczaj to się sprawdza, aczkolwiek nie użyjesz wtedy takiego zdjęcia np. jako
background-image
. Tak samo jeśli z jakichś względów musisz mieć własnego taga img a nie tego generowanego przez WordPressa (a ten dodaje fajne klasy do zdjęcia, które mogą być przydatne w stylowaniu), to używajget_the_post_thumbnail_url()
.btw. Twoje posty zostały oznaczone jako spam – chyba szybko, za dużo, i niepotrzebnie post pod postem pisałeś. Na przyszłość jak by się finalnie nie udało dodać posta to chwila cierpliwości, a jakiś moderator go zatwierdzi.
Tyle razy czytałem dokumentacje dla the_post_thumbnail i jakoś nie skumałem, że wp zwraca string z tagiem, w ogóle teraz sporo mi sie rozjaśniło 😀 i już wiem dlaczego kiedyś jak podchodzilem do wp to tez miałem niezrozumiale problemy.
Wielkie Dzięki za pomoc.
- Temat ‘problem z miniaturami do postów’ jest zamknięty na nowe odpowiedzi.