add_image_size dla określonych postów

Dział poświęcony pozostałym kwestiom związanym z kodowaniem w CMS Wordpress.
no avatar
Smyk
Świeżak
 
Posty: 51
Reputacja: 1 pkt
Od: 31 sty 2013, o 16:12

add_image_size dla określonych postów

przez Smyk » 6 gru 2020, o 00:44

Szukam jakiegoś prostego sposobu do generowania innego rozmiaru zdjęć przy dodawaniu określonego post_type. Macie może jakieś pomysły jak to ugryźć?

no avatar
baltrek
Świeżak
 
Posty: 132
Reputacja: 9 pkt
Od: 30 paź 2020, o 17:43

Re: add_image_size dla określonych postów

przez baltrek » 7 gru 2020, o 13:07

Hmm. Nie wiem czy do końca rozumiem bo w sumie mało wyjaśnień ale do generowanie masz

set_post_thumbnail_size( int $width, int $height, bool|array $crop = false )

Pisałeś wczoraj w nocy więc jak do dzisiaj nie poradziłeś sobie to ewentualnie podziel się kodem to coś pomogę
Smyk lubi ten wpis.

no avatar
Smyk
Świeżak
 
Posty: 51
Reputacja: 1 pkt
Od: 31 sty 2013, o 16:12

Re: add_image_size dla określonych postów

przez Smyk » 7 gru 2020, o 18:19

załóżmy że mam taką sytuację na blogu są wpisy i np. lista firm (inny post_type), w motywie wyświetlam wpisy ze zdjęciami które mają określony rozmiar, a na liście firm wyświetlam zdjęcia które mają inny rozmiar ... i dodając np. wpis dotyczący firmy lub artykuł na blogu tworzą mi się niepotrzebne zdjęcia np. zdjęć z artykułów nie używam dla listy firm a zdjęć z listy firm nie używam dla artykułów - a i tak jak dodam jedno zdjęcia niezależnie czy do artykułu czy listy firm są tworzone te zdjęcia dla wszystkich rozmiarów. Chciałbym to rozgraniczyć aby ograniczyć miejsce na dysku. Miałbyś jakiś pomysł jak to zrobić w functions? Próbowałem użyć uset dla danego typu wpisu w functions.php ale to nie zadziałało.

no avatar
baltrek
Świeżak
 
Posty: 132
Reputacja: 9 pkt
Od: 30 paź 2020, o 17:43

Re: add_image_size dla określonych postów

przez baltrek » 8 gru 2020, o 14:11

Hmm na prawdę nie wiem czemu chcesz to robić. No chyba że masz z 10 tys zdjęć na stronie.
Ale jakby co to łap link https://www.wpbeginner.com/wp-tutorials ... age-sizes/

I wtedy w functions musisz samodzielnie (w zależności od danego post_type) tworzyć określone wielkości obrazków
Smyk lubi ten wpis.

no avatar
Smyk
Świeżak
 
Posty: 51
Reputacja: 1 pkt
Od: 31 sty 2013, o 16:12

Re: add_image_size dla określonych postów

przez Smyk » 8 gru 2020, o 16:29

Dzięki, moje przesłanki są mniej więcej takie same jak tutaj :) oszczędność dysku
https://www.wpbeginner.com/wp-tutorials ... ent-367802
Rozumiem że operowanie add_image_size i remove_image_size w zależności do typu postu, a jakim zaczepem to uruchomić init, save_post? Nie bardzo kojarzę w jakiej kolejności co się wykonuje.

no avatar
baltrek
Świeżak
 
Posty: 132
Reputacja: 9 pkt
Od: 30 paź 2020, o 17:43

Re: add_image_size dla określonych postów

przez baltrek » 8 gru 2020, o 16:55

Nie wiem czy dobrze rozumiem. add_action('Init.... uruchamia się samo (Fires after WordPress has finished loading but before any headers are sent.) A add_image_size() i remove_image_size() uruchomią się wtedy gdy zostaną wywołane czyli to zależy od tego czego to podepniesz np przez add_action. Poniżej przykład

Kod: Zaznacz cały
add_action( 'after_setup_theme', 'wpdocs_theme_setup' );
function wpdocs_theme_setup() {
    add_image_size( 'category-thumb', 300 ); // 300 pixels wide (and unlimited height)
    add_image_size( 'homepage-thumb', 220, 180, true ); // (cropped)
}
Smyk lubi ten wpis.

no avatar
Smyk
Świeżak
 
Posty: 51
Reputacja: 1 pkt
Od: 31 sty 2013, o 16:12

Re: add_image_size dla określonych postów

przez Smyk » 11 gru 2020, o 13:17

Próbowałem coś takiego w pliku functions.php ale niestety nie działa
Kod: Zaznacz cały
add_action( 'after_setup_theme', 'wpdocs_theme_setup' );
function wpdocs_theme_setup() {
    $post_type = get_post_type();
    if ($post_type == 'firma'){
       add_image_size( 'rozmiar-630', 9999, 630 );
   }
}


Czasami jest problem pobrania typu postu w danym haku i np. id_posta poza loopem w funcionts.php
Mam właśnie kilka niewiadomych


    kiedy generowane są wersje zdjęcia w różnych zdefiniowanch rozmiarach, jeśli przy tworzeniu wpisu wybieram zdjęcie i dołączam je do posta to w wp_posts jest dodany tylko jako załącznik z tego co kojarzę i wtedy tworzone są wszystkie wersje obrazka w zdefiniowanych rozmiarach?



no avatar
baltrek
Świeżak
 
Posty: 132
Reputacja: 9 pkt
Od: 30 paź 2020, o 17:43

Re: add_image_size dla określonych postów

przez baltrek » 11 gru 2020, o 14:38

na moje oko troszkę pomieszałeś

bo tak. To powinno być w taki sposób bo w tym momencie nie masz jeszcze post_type (nie testowałem jak coś. Ale zawsze jak chcesz coś zrobić na if'ach to sprawdz czy taka zmienna jest zdefiniowana w ogóle lub czy cokolwiek zwraca)
post_type rzeczywiscie zwraca ale w zależności od tego w co się "wpinasz" lub w którym momencie "wypluwasz" swoją funkcję w tym przykładzie "wpdocs_theme_setup()"

Kod: Zaznacz cały
add_action( 'after_setup_theme', 'wpdocs_theme_setup' );
function wpdocs_theme_setup() {
       add_image_size( 'rozmiar-630', 9999, 630 );
}



Mam nadziję ze masz 10000% pewności (sprawdzonej a nie tylko teoretycznej że post_type 'firma' jest tworzony). Tym kodem co powyżej rejestrujesz daną rozdzielczość

Kolejną kwestią są dwa etapy
1. Musisz zrobić tak aby tworzony był jeden lub drugi obrazek(jedna lub druga wielkość) w zależności od tego jaki masz post_type, właśnie z wykorzystaniem np.: wp_insert_post. Gdzieś ten post_type na pewno będziesz miał przekazywany w POST.
https://wordpress.stackexchange.com/que ... 881#309881


2. Musisz w swoim szablonie wyświetlać odpowiednią wielkość np:
Kod: Zaznacz cały
if ( has_post_thumbnail() ) {
    the_post_thumbnail( 'your-custom-size' );
}


Pierwszy krok masz już praktycznie za sobą także jesteś na dobrej drodze :)
Smyk lubi ten wpis.

no avatar
Smyk
Świeżak
 
Posty: 51
Reputacja: 1 pkt
Od: 31 sty 2013, o 16:12

Re: add_image_size dla określonych postów

przez Smyk » 11 gru 2020, o 16:21

No fakt trochę po omacku kombinuję :) usystematyzuję sobie to i spróbuję z wp_insert_post. Post_type firma jest utworzony, o szablonie też pamiętam. Dzięki wielkie za pomoc. Jak uda mi się napisać cały kod wrzucę w tym wątku.




  • Podobne tematy
    Odpowiedzi
    Wyświetlone
    Ostatni post

Powrót do Kodowanie w Wordpressie

Kto przegląda forum Wordpress

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości

cron