我在WordPress 4.8版本中创建了一个小部件区域,在该小部件区域我正在使用文本小部件。
代码:
<div id='div-gpt-ad-xxxxxxxxxxxxx-x'>
<script>
googletag.cmd.push(function() { googletag.display('div-gpt-ad-xxxxxxxxxxxxx-x'); });
</script>
</div>
小部件创建代码:
global $blog_id;
if( $blog_id == '2' ) {
function wpb_widgets_init() {
register_sidebar( array(
'name' => 'Header Widget Area for RBI',
'id' => 'custom-header-widget',
'before_widget' => '<div class="chw-widget">',
'after_widget' => '</div>',
'before_title' => '<h2 class="chw-title">',
'after_title' => '</h2>',
) );
}
add_action( 'widgets_init', 'wpb_widgets_init' );
}
<?php
global $blog_id;
if( $blog_id == '2' ) {
if ( is_active_sidebar( 'custom-header-widget' ) ) : ?>
<div id="header-widget-area" class="chw-widget-area widget-area" role="complementary">
<?php dynamic_sidebar( 'custom-header-widget' ); ?>
</div>
<?php endif; } ?>
上面的脚本如果我们直接放在header.php或footer.php文件中它工作正常,但在文本小部件中没有工作任何解决方案
答案 0 :(得分:0)
你通常不能将PHP直接放在一个小部件中,Wordpress不允许它。有一些插件可以让你这样做,但我不能保证任何一个特别的,所以我会让你自己找到它。
答案 1 :(得分:0)
您可以使用短代码来完成此任务。
首先,使用functions.php中的以下行启用小部件中的短代码:
add_filter( 'widget_text', 'do_shortcode' );
接下来,您将创建一个短代码:
function mygooglead_shortcode() {
ob_start();
?>
<div id='div-gpt-ad-xxxxxxxxxxxxx-x'>
<script>
googletag.cmd.push(function() { googletag.display('div-gpt-ad-xxxxxxxxxxxxx-x'); });
</script>
</div>
<?php
return ob_get_clean();
}
add_shortcode( 'mygooglead', 'mygooglead_shortcode' );
最后。你可以把它放在widget中使用短代码:
[mygooglead]