Kategorien
WordPress

WordPress eigenen Code einbinden in Posts

Als ich eigenen Javascript Code einbetten wollte in einen Blog Post, hatte ich das Problem, dass WordPress meinen Code immer automatisch geparst und encodiert hat, wodurch mein Javascript nicht mehr funktioniert hat.

Daraufhin habe ich eine kleine sehr nützliche Funktion geschrieben, mit der man über Shortcodes Inhalt kennzeichnen kann, wie z.B. Javascript oder CSS, der nicht verändert werden soll:

Einfügen von Javascript Code in WordPress Post

[nocode]
</strong>&lt;script&gt;alert('Hello');&lt;/script&gt;<strong>

[/nocode]

Einfügen von CSS Code in WordPress Post

[nocode]
</strong>&lt;style&gt;body{width:100px;}&lt;/style&gt;<strong>

[/nocode]

Einfügen von HTML  in WordPress Post ohne Zeichen zu dekodieren

[nocode]
</strong>&lt;p&gt;Hello&lt;/p&gt;<strong>

[/nocode]

Einfügen von externem Javascript in WordPress Post

[nocode]
</strong>&lt;script type="text/javascript" src="//www.google.com/trends/embed.js?hl=de&amp;q=html5&amp;cmpt=q&amp;content=1&amp;cid=TIMESERIES_GRAPH_0&amp;export=5&amp;w=600&amp;h=350"&gt;&lt;/script&gt;<strong>

[/nocode]
Dafür muss nur der folgende Code in die functions.php kopiert werden:

function my_code_handler($atts, $content){

    return  html_entity_decode($content);

}

add_shortcode("code","my_code_handler");