Avatar billede bgolsen Juniormester
22. december 2021 - 15:31 Der er 1 kommentar og
2 løsninger

Wordpress: At få post id på den post der trigger en add_action med save_post hook

Hej

Jeg er ved at lave en add_action med save_post hook, hvor jeg skal bruge dataene fra den post der lige er blevet gemt. Men jeg ved så ikke lige hvordan jeg fange id'et på den post der så trigger min add_action (eller do_action for den sags skyld).

Jeg har haft kig på noget global $post; $id = $post->ID; men det er et andet id jeg får ud end den post der lige er blevet gemt.

Er der nogle der kan give mig et hint eller to i den rigtige retning? :)

Med venlig hilsen
bgolsen
Avatar billede Rune1983 Ekspert
23. december 2021 - 07:00 #1
Kan du ikke gemme det oprettede ID i en session variabel, som du så kan bruge til senere brug.
Avatar billede bgolsen Juniormester
23. december 2021 - 08:33 #2
Hej Rune

Jeg har endnu ikke arbejdet så meget med Wordpress ;) Men jeg har ledt med lys og lygte efter en løsning :)

Oprettelserne/ændringerne sker både via Wordpress og frontend (via noget Jetforms), så det er ikke min egen kode der opretter/ændrer. Men jeg tænker der må være én eller anden variable eller et eller andet object for sessionen der indeholder den information. Og der er lidt dét jeg leder efter :)

Med venlig hilsen
bgolsen
Avatar billede bgolsen Juniormester
23. december 2021 - 09:42 #3
Nå, jeg fandt faktisk selv lige løsningen, ved et tilfælde :) Ledte efter noget andet og faldt lige over noget jeg ikke havde spottet tidligere. Hvis jeg tilføjer $post_id som parameter til den function jeg kalder i min add_action - så får jeg id'et :)

Så altså:
function testid( $post_id ) {
    $id = $post_id;
        // blah blah ;)
}
add_action('save_post', 'testid');
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester