jak funkcja odpowiada za wyłuskiwanie znaczników [shortcode]
Możesz jaśniej opisać, co dokładnie chcesz zrobić, co nie działa?
-szorty nie są wykonywane, czy co?
https://developer.wordpress.org/reference/functions/do_shortcode/
-
Ta odpowiedź została zmodyfikowana 5 years, 11 months temu przez Paweł Knapek.
Cześć, przerabiam motyw, już od dawna, nie działa wykonywanie shorów tak jakby czegoś w pliku function brakowało.
po prostu [shot] wstawiony w tekście nie jest „wyłuskiwany” tylko na www prezentuje się jako [shot], ale gdy tylko zmienię motyw wszytko jest ok, znakiem tego coś w mym motywie jest nie tak – dodam, że sam go sobie piszę od początku, więc może być tam wiele dziur i oto właśnie jedna z nich – dzięki za linka na codexa wp też zaglądam. To co tu mi podesłałeś, przetestuję i napiszę w wątku co tam było nie tak jeśli znajdę błąd 🙂
W jaki sposób wyświetlasz treść na stronie? Standardowa pętla, czy jakoś inaczej?
Prawdopodobnie jest coś nie tak z wyświetlaniem treści.
Właśnie zauważyłem, że jest to dosyć stary wpis i już pewnie rozwiązałeś problem 🙂
@daro256
Tak doszedłem do tego, że błąd leży w wyświetlaniu treści, przeczytałem „całą” dokumentację dot. hooków /akcja,filtr/ i to jednak nie problem shortcode
treść wyświetlam tak
if ( have_posts() ) : while ( have_posts() ) : the_post();
$olo = get_post();
echo "<temat>".$olo->post_title."</temat>";
$content = $olo->post_content;
i pewnie to tu jest babol, ale że mam inne cuda na głowie, to do tematu za jakieś czas jeszcze wrócę
No jest babol. W pętli nie musisz przypisywać postu do zmiennej. Wszystkie dane już są załadowane do globalnej zmiennej post, za pomocą the_post();
if ( have_posts() ) : while ( have_posts() ) : the_post();
echo "<temat>".get_the_title()."</temat>";
the_content();
Ostatnia linijka wyświetli treść, a jak chcesz ją przypisać do zmiennej to używasz get_the_content();
Tylko wtedy musisz zadbać o jeszcze jedną rzecz, przez którą właśnie shortcody nie działały.
$tresc = get_the_content();
$tresc = apply_filters('the_content', $tresc);
echo $tresc;
Druga linijka przepuszcza treść przez filtr, w którym między innymi podmieniane są shortcody.
Dzięki, spoko podmieniłem i pięknie działa – jeszcze raz wielkie dzięki za pomoc