Wsparcie » Rozmaitości » Zmiana układu wyświetlania wpisu w motywie Twenty Seventeen

  • Rozwiązany arek991

    (@arek991)


    Witajcie, mam pewien zapewne błahy problem.
    Wchodząc w podstrone z blogiem, tam gdzie wyświetlane są wszystkie wpisy jeden pod drugim to zdjęcie wyróżniające wpis jest nad tytułem wpisu, zależy mi na zmianie kolejności wyświetlania tych 2 elementów, mianowicie chciałbym aby była następująca kolejnosc
    Tytuł, zdjęcie wyróżniające i dopiero cała reszta.
    Po wejściu w konkretny wpis powinno pozostać tak jak w oryginale, tzn. zdjęcie wyróżniające, pod spodem tytuł i dalej cała reszta.
    Niestety nie potrafię się połapać w którym pliku powinienem wprowadzić modyfikacje i mniej więcej w jaki sposób.
    Motyw standardowy Twenty Seventeen.

Viewing 9 replies - 1 through 9 (of 9 total)
  • Moderator Paweł Knapek

    (@adpawl)

    Eeee, przecież tak właśnie jest w TS jak to życzeniowo opisałeś – w archiwach kolejno meta, tytuł, obrazek wyróżniający, treść ….a w samym wpisie obrazek wyróżniający na samej górze.

    Tutaj jest demo – możesz sobie sprawdzić, na samym dole są wpisy z obrazkiem.

    arek991

    (@arek991)

    Faktycznie tak jest, zapomniałem że korzystam z Shortcode i wtyczki
    Display Posts. Samego układu wyświetlania poprzez wtyczkę raczej nie jestem w stanie zmieć, prawda?
    W związku z tym pojawia się kolejne pytanie. Ręcznie w katalogu motywu utworzyłem nowy plik z kodem który powinien wyświetlić wpisy, jednak otrzymuję komunikat
    echo ‚<h3>Dodaj jakieś wpisy!</h3>’;
    echo ‚<p>Jeżeli jakieś dodałeś, sprawdź kategorię i poprawność kodu</p>’;
    Wpisy na pewno są dodane. Jaki może być powód nie wyświetlania ich?

    Cały kod który powinien wyświetlić wpisy, dodam że docelowo potrzebuję wpisy z jednej kategorii:

    <?php
    // The Query
    $the_query = new WP_Query( $args );

    // Nasza pętla
    if ( $the_query->have_posts() ) {
    echo ‚

      ‚;
      while ( $the_query->have_posts() ) {
      $the_query->the_post();
      echo ‚
    • ‚ . get_the_title() . ‚
    • ‚;
      }
      echo ‚

    ‚;

    wp_reset_query();
    } else {
    echo ‚<h3>Dodaj jakieś wpisy!</h3>’;
    echo ‚<p>Jeżeli jakieś dodałeś, sprawdź kategorię i poprawność kodu</p>’;
    }
    ?>

    Pawel

    (@mrpauloen)

    Utworzyłeś nowy obiekt, ale nie określiłeś dla niego argumentów ($args), dlatego taki wynik funkcji warunkowej: else: sprawdź kategorię i poprawność kodu.

    Powinno określić przynajmniej jeden argument:

    $query = new WP_Query( array( 'category_name' => 'staff' ) );

    Więcej przykładów znajdziesz tutaj:
    https://developer.wordpress.org/reference/classes/wp_query/

    • Odpowiedź została zmodyfikowana 6 months temu przez Pawel. Powód: link do dokumentacji
    • Odpowiedź została zmodyfikowana 6 months temu przez Pawel. Powód: link do dokumentacji
    arek991

    (@arek991)

    Dziękuję Wam za naprowadzenie na właściwy tor 🙂
    Mam jeszcze jedno małe pytanie. Czy jest możliwość podpięcia pod sekcję strony głównej tego nowo utworzonego pliku z wpisami? Niestety na tą chwilę po podpięciu nic się nie pojawia w owej sekcji, natomiast wybierając stronę w przeglądarce wyświetla wyniki prawidłowo, pozostałe sekcje ze stron wygenerowanych w panelu admina również wyświetlają się prawidłowo.

    Pawel

    (@mrpauloen)

    Na pewno Ustawienia-> Czytanie i tam ustawiasz sobie stronę statyczną a dla niej utworzony przez ciebie szablon.
    Domyślny szablon dla strony statycznej to plik front-page.php ale ten motyw to ma to tak jakoś porozdzielane chyba jeszcze inaczej. Nie jestem teraz pewiem. Musial bym sprawdzić przez komputer, bo na telefonie nie mam dostępu.

    Moderator Paweł Knapek

    (@adpawl)

    Wygląd >> Dostosuj >> Ustawienia motywu – domyślnie są 4 sekcje, dla których można wybierać jaka stronę maja pokazywać.
    Jeżeli potrzeba więcej sekcji, to ich ilość można filtrem „uzupełnić”:
    add_filter( 'twentyseventeen_front_page_sections', function(){ return 6;} );

    arek991

    (@arek991)

    Generalnie sekcje mam już dodane, problemem jest że dodając do sekcji stronę której zawartość ma być wyświetlana, pojawia się puste pole.

    Może po klei.
    1. W pierwszej kolejności utworzyłem plik page-aktualnosci.php i wprowadziłem kod, który powoduje wyświetlanie wpisów z konkretnej kategorii
    2. Kolejną rzeczą którą wykonałem jest dodanie strony poprzez panel administracyjny oraz nadanie odpowiedniego „bezpośredniego odnośnika: http://localhost/test/aktualnosci/&#8221;, aby przeglądarka potrafiła odczytać plik page-aktualnosci.php i wyświetlić zawartość, no i do tego momentu jest ok, po przejściu pod adres http://localhost/test/aktualnosci/ wpisy się pojawiają
    3. Następnie wchodzę w ustawienia motywu i wybieram w sekcji strony tą stronę z aktualnościami, niestety na tym etapie wpisy w utworzonej sekcji nie pojawiają się, natomiast po dokonaniu edycji strony aktualności w panelu administracyjnym i dodaniu jakiejś treści, owa treść wyświetla się w sekcji, problemem jest tylko sztywny kod zamieszczony w utworzonym pliku page-aktualnosci.php, sekcja go pomija.
    Docelowo powinny być dwie takie sekcje Aktualności i Wydarzenia jedna pod drugą 🙂

    Sekcje na głównej nie korzystają z szablonów stron, mają swój dedykowany szablon template-parts/page/content-front-page-panels.php

    Więc jeżeli chcesz tam własny kod wykonać, to albo modyfikujesz ww. szablon, albo działasz np. filtrem the_content ….albo dodajesz w treści w formie shortcode’a ( https://codex.wordpress.org/Shortcode_API )

    Tego mi bło trzeba 🙂 zmodyfikowałem delikatnie content-front-page.php i udało się doprowadzić temat do końca 🙂
    Dziękuję Wam za pomoc i życzę miłego weekendu!

Viewing 9 replies - 1 through 9 (of 9 total)