Problem med shortcode

Hei,

Når jeg prøver å legge inn koden under i en shortcode blir hele siden “ødelagt” (jeg må laste opp original functions fila via ftp igjen). Hva er galt? Er det pga javascript? I så fall, finnes det en workaround?

Og ja, jeg har dobbeltsjekket at det jeg gjør i functions.php er likt som med alle andre shortcodes jeg har lagt inn. :slight_smile: på forhånd takk for hjelp!

[CODE]

[/CODE]

Og hvor er koden som legger dette inn i en shortcode?

Det er jo begge typer quotes osv. i den koden, du er sikker på at du escaper dette skikkelig

Jeg legger dette inn i functions.php @adeneo

function bunn(){ return 'KODE'; } add_shortcode('BUNN', 'bunn');

Hvis

'KODE';

er den teksten ovenfor, så får du jo

return '<div id="face .... function fbs_click() { ... window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t),'sharer', ....;

legg merke til at single quotes i javascriptet åpner og lukker de i PHP’en, de må escapes ?

Ok, har du noen forslag til hvordan jeg kan gjøre det?

Uten at jeg har testet det, så kan du vel prøve

return '<div id="face ... window.open(\'http://www.facebook.com/sharer.php?u=\'+encodeURIComponent(u)+\'&t=\'+encodeURIComponent(t),\'sharer\', ....;

altså putt en "" foran alle single quotes slik at de ikke lukker PHP stringen

2 Likes

Prøvd dette nå, og det går ikke :frowning:

[CODE]function facebook(){
return '

'; } add_shortcode('FACE', 'facebook');[/CODE]

Nvm! Det funker! Takk @adeneo

Det dukket opp en rar bug etter at jeg ordnet dette.

Det skjedde rett etter at jeg la inn koden, jeg har ikke installert noen plugins el. som kan ha forårsaket det. Problemet er følgende:

Når jeg lager en post, oppdaterer noen innstillinger el. lastes det bare en blank side. Endringene/innlegget blir lagret, men jeg må refreshe siden/gå tilbake. Noen som kan ha noen forklaring på dette? Har aldri opplevd noe liknende. Når jeg fjerner koden fra functions.php fungerer alt igjen.

sjekk om du har f.ex. et blankt linjeskift på slutten av functions.php, “utenfor” <?php .... ?> - i såfall, fjern det.

Det samme gjelder vel egentlig også lenger opp, om du har en blank linje f.ex. sånn, så vil det skape den feilen

[CODE] ?>

        <?php  [/CODE]

se f.ex. https://codex.wordpress.org/FAQ_Troubleshooting#How_do_I_solve_the_Headers_already_sent_warning_problem.3F

Takk, skal se på dette når jeg kommer hjem :slight_smile: Jeg får dog ingen headers allready sendt beskjed.