zamiast include daj print_r(’test’) jeżeli się wyświetla to znaczy że skrypt dochodzi to tego miejsca. Bo mam wrażenie problemem jest include bo to powinno się zrobić
include get_template_directory() . 'subdir/filename.php';
Dzięki za odpowiedź. To ogarnę, jakoś znajdę ścieżkę.
Ale nie wiem jak ten kod dołożyć do funkcji, która wyświetli mi tego include pod postem.
Czyli wiem jak dodać tekst do $after ale nie mam pojęcia jak dodać kod, żeby zadziałał po $content.
Kurde sory, nie ogarnąłem chyba do konca
Nie wiem co masz w pokaz-zdjecie.php ale jak tam masz np:
$dane = 'costam';
i jak includujesz to od razu możesz dodać $dane do contentu
$content = $content . $dane;
function my_content_filter($content){
//only add text before WordPress posts
if(is_single() && is_main_query()){
include('dane/pokaz-zdjecie.php'); // i tam jest jakiś kod i ma zmienną $dane
//modify the incoming content
$content = $content . $dane;
}
return $content;
}
add_filter( 'the_content', 'my_content_filter' );
Możesz też zamiast robić include to zrobić cos takiego
function myFunctionPokazZdjecie(){
$dane = 'costam';
return $dane;
}
i potem zamiast include to odpalić tą funkcję
daj znać czy działa i jest ok, mam nadzieje ze nic nie pomyliłem.
W pliku includowanym mam po prostu wyświetlaną tabelę HTML z różnymi zmiennymi. Np. tytuł posta, iteracje, zdjęcia.
Dziękuję Ci bardzo za odpowiedź, bo popchnęła mnie dalej i znalazłem takie rozwiązanie jak poniżej. Nie wiem czy jest optymalne pod względem kodowania, bo nie jestem programistą 🙂 Daj znać co myślisz.
function my_content_filter($content){
//only add text before WordPress posts
if(is_single() && is_main_query()){
global $post;
$var1 = get_post_meta($post->ID, 'var1', true);
$var2 = get_post_meta($post->ID, 'var2', true);
if ($var1 && !$var2) {
ob_start();
include('dane/pokaz-zdjecie.php');
$after = ob_get_clean();
}
//modify the incoming content
$content = $content . $after;
}
return $content;
}
add_filter( 'the_content', 'my_content_filter' );
Hmm. Jeżeli działa to generalnie jest ok. To to zawsze jakiś plus. Myślę tylko że nie powinieneś używać ob_start(). Czy bez tego coś się chrzani lub nie działa? A jak includjesz to tak jakby miał ten kod w tamtym miejscu wiec możesz się posłużyć zmienną z tego includa, więć $after może być = jakiejś tam zmiennej z includa.