Wordpress功能主题选项格式

时间:2014-10-22 09:36:33

标签: php wordpress function google-analytics

我创建了一个wordpress主题,并为最终用户创建了一系列选项来改变网站的某些区域。

我正在处理用于处理用户Google分析代码的文本区域的问题。

文本区域有效,但分析代码的输出意味着它不起作用。

在我的functions.php文件中,我有一个文本区域供用户输入他们的分析代码:

array (
                    'key' => 'field_52e7a858b4951',
                    'label' => __("Tracking code", 'dansiop'),
                    'name' => 'google_analytics',
                    'type' => 'textarea',
                    'instructions' => __("Copy and paste your Google Analytics tracking code here. You can create a free account at: http://www.google.com/analytics/", 'storini'),
                    'default_value' => '',
                    'placeholder' => '',
                    'maxlength' => '',
                    'formatting' => 'none',
                ),

在我的管理员中没有根据需要提供文本区域:

[由于在这里不知名而无法发布图片] http://www.dansiop.com/analytics.png

因此,当用户输入特定的分析代码时,例如:

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'XX-XXXXXXXX-X', 'auto');
  ga('send', 'pageview');

</script>

代码显示在页脚的网站上。它被放置在正确的位置但是当我查看源代码时,我会看到像这样的Google Analytics代码:

&lt;script&gt;
  (function(i,s,o,g,r,a,m){i[&#039;GoogleAnalyticsObject&#039;]=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,&#039;script&#039;,&#039;//www.google-analytics.com/analytics.js&#039;,&#039;ga&#039;);

  ga(&#039;create&#039;, &#039;XX-XXXXXXXX-X&#039;, &#039;auto&#039;);
  ga(&#039;send&#039;, &#039;pageview&#039;);

&lt;/script&gt;

出于显而易见的原因,我已经屏蔽了分析代码中的特定ID。

任何人都有任何关于为什么会这样做的想法?

非常感谢一些帮助,无法在网上找到有关此事的任何内容。

编辑: 我用这个回显上面/身体的页脚代码:

<?php if( get_field('google_analytics', 'option') ) : ?><?php the_field('google_analytics', 'option'); ?><?php endif ?>

2 个答案:

答案 0 :(得分:1)

为什么不尝试使用html_entity_decode()

您应该使用html_entity_decode('Your-analytic-code-variable');

转到页脚并回显/打印代码
<?php 
if( get_field('google_analytics', 'option') ) :
    echo html_entity_decode(get_field('google_analytics', 'option'), ENT_QUOTES, "ISO-8859-1");
endif 
?>

答案 1 :(得分:0)

如果您打印或var_dump该字段,该值是否已转义或是否仍保留其无格式值?