我正在处理一个自定义的帖子类型,它可以作为登录页。登录页有几个带有元信息的自定义字段,这没有问题,它工作得很好。但我的客户希望在他将创建的每个LP的标题中插入一个facebook跟踪代码,该脚本如下所示:
<script>(function() { var _fbq = window._fbq || (window._fbq = []); if (!_fbq.loaded) { var fbds = document.createElement(\'script\'); fbds.async = true; fbds.src = \'//connect.facebook.net/en_US/fbds.js\'; var s = document.getElementsByTagName(\'script\')[0];s.parentNode.insertBefore(fbds, s); _fbq.loaded = true; } _fbq.push([\'addPixelId\', \'1570176543221608\']); })(); window._fbq = window._fbq || []; window._fbq.push([\'track\', \'PixelInitialized\', {}]); </script> <noscript><img height="1" width="1" alt="" style="display:none" src="https://www.facebook.com/tr?id=15701765432&ev=PixelInitialized" /></noscript>
我创建了一个
<textarea>
自定义字段。文本区域显示在post editor中
landing_page_posts
CPT,如果我用文本填充它,它会正常工作(当帖子保存时,它会将内容保存在文本区域内,如果我调用
get_post_meta($post->ID, "the_textarea_content", true);
但如果我将facebook跟踪代码脚本粘贴到文本区域内,则保存帖子后文本区域将变为空白,并且脚本不会出现在帖子的标题中。
下面是我用来回应文章标题中脚本的其余代码,这些代码放在函数中。子主题的php:
function facebook_tracking_code() {
if(get_post_type() === "landing_page_posts") {
global $post;
echo get_post_meta($post->ID, "facebook-tracking-code", true);
}
}
add_action( \'wp_head\', \'facebook_tracking_code\');
有没有其他方法可以使这项工作正常进行。我在其他线程中读到有一个插件、高级自定义字段或类似的内容,但我希望没有这个插件。最好是学习如何正确地完成它,然后,在其他项目中,如果必要的话,使用插件。提前谢谢。