微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有没有办法在自定义程序文本区域中输入自定义代码?

如何解决有没有办法在自定义程序文本区域中输入自定义代码?

我正在研究 wordpress 主题。我希望用户能够通过 wordpress 定制器输入广告代码。所以我有以下代码来创建部分、设置和控制。

// ADS panel/section
  $wp_customize->add_section( 'ads_code',array(
      'title'    => __( 'ADS','ramet' ),'panel' => 'article_panel',//select the panel for it to appear under
    )
  );

//add setting and control To allow user input ads code
    $wp_customize->add_setting( 'ads_code_input',array(
            'default' => '','type' => 'theme_mod','transport' => 'postMessage',)
    );
    $wp_customize->add_control( 'ads_code_input',array(
            'label' => __( 'Ads Code','description' => esc_html__( 'Paste Your ads code in the text field.' ),'type' => 'textarea','section'  => 'ads_code','settings'   => 'ads_code_input',//pick the setting it applies to
            'capability' => 'edit_theme_options',// Optional. Default: 'edit_theme_options'
            'input_attrs' => array( // Optional.
                'class' => 'my-custom-class','style' => 'border: 1px solid #999','placeholder' => __( 'Enter ad code...' ),),)
    );

在此之后,我继续将以下代码添加到functions.PHP 中。 这组代码是为了在帖子的第三段之后输出广告代码

//Insert ads after third paragraph of single post content.
 
add_filter( 'the_content','prefix_insert_post_ads' );
 
function prefix_insert_post_ads( $content ) {
    
    //variable to hold the inputed code.
    $ad_code = get_theme_mod( 'ads_code_input' );
 
    if ( is_single() && ! is_admin() ) {
        return prefix_insert_after_paragraph( $ad_code,3,$content );
    }
     
    return $content;
}
  
// Parent Function that makes the magic happen
  
function prefix_insert_after_paragraph( $insertion,$paragraph_id,$content ) {
    $closing_p = '.</p>';
    $paragraphs = explode( $closing_p,$content );
    foreach ($paragraphs as $index => $paragraph) {
 
        if ( trim( $paragraph ) ) {
            $paragraphs[$index] .= $closing_p;
        }
 
        if ( $paragraph_id == $index + 1 ) {
            $paragraphs[$index] .= $insertion;
        }
    }
     
    return implode( '',$paragraphs );
}

如您所见,在函数 prefix_insert_post_ads( $content ) 中,我有一个名为 $ad_code 的变量,用于从用户那里获取输入的代码。 这个变量是应该在第三段之后输出的。

我通过自定义程序放入一些脚本标记,继续为我自己测试它。 但是输入的代码输出为计划文本。

我不知道是否有办法确保输入代码在浏览器上运行。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。