Wordpress:使用指定值为每个[partners]短码追加jquery脚本

Wordpress:使用指定值为每个[partners]短码追加jquery脚本,jquery,wordpress,shortcode,Jquery,Wordpress,Shortcode,我正在尝试做一个短代码,它将向wp\u footer添加额外的jQuery脚本 这将是一个短代码示例: function partners($atts ) { global $extra_options, $pslider; extract(shortcode_atts(array( 'ids' => null, 'extra_options' => null ), $atts)); $

我正在尝试做一个短代码,它将向
wp\u footer
添加额外的jQuery脚本

这将是一个短代码示例:

function partners($atts ) {
    global $extra_options, $pslider;
    extract(shortcode_atts(array(  
            'ids' => null,
            'extra_options' => null
        ), $atts));  

    $pslider = 'partners-slider'.rand(100,999);
    $ids = explode( ',', $ids );
    $output = '<div class="section row-one"><div class="col ps-gradient"><div class="ps-wrap"><div class="'.$pslider.'">';
    foreach($ids as $id) {    
    $img_attr = wp_get_attachment_image_src( $id, 'full' );
    $alt_text = get_post_meta( $id, '_wp_attachment_image_alt', true);
    $output .= '<div class="pslide"><a href="' . $alt_text . '"><img src="' . $img_attr[0] . '" /></a></div>';    
    }
    $output .= '</div></div></div></div>';
    return $output;  
}  

add_shortcode('partners', 'partners');
首先应该将此脚本添加到
wp\u footer

<script type="text/javascript">
jQuery(document).ready( function() {
    $(".pslider342").bxSlider({
        slideWidth: 924,
        auto: 1,
        autoStart: 1,
        moveSlides: 1,
        minSlides: 7,
        maxSlides: 8,
        pager: false,
        controls: false,
        slideMargin: 5,
        autoHover: true,
        extra_options: true
    });
});
</script>

jQuery(文档).ready(函数(){
$(“.pslider342”).bxSlider({
滑动宽度:924,
汽车:1,,
自动启动:1,
第一,,
米斯利德斯:7,
最大幻灯片数:8,
传呼机:错,
控件:false,
幻灯片摘要:5,
自动悬停:正确,
额外选项:true
});
});
它起作用了。
第二个应添加具有不同变量的相同脚本:

<script type="text/javascript">
jQuery(document).ready( function() {
        $(".pslider456").bxSlider({
        slideWidth: 924,
        auto: 1,
        autoStart: 1,
        moveSlides: 1,
        minSlides: 7,
        maxSlides: 8,
        pager: false,
        controls: false,
        slideMargin: 5,
        autoHover: true,
        extra_options: false
    });
});
</script>

jQuery(文档).ready(函数(){
$(“.pslider456”).bxSlider({
滑动宽度:924,
汽车:1,,
自动启动:1,
第一,,
米斯利德斯:7,
最大幻灯片数:8,
传呼机:错,
控件:false,
幻灯片摘要:5,
自动悬停:正确,
额外选项:false
});
});
不幸的是,这个没有被添加

真的需要你的帮助

function print\u partners\u scripts(){
function print_partners_scripts() {
    global $pslider;
    foreach( $pslider as $id => $value ):
    echo '<script type="text/javascript">' . "\n";
    echo 'jQuery(document).ready( function() {'. "\n";
    echo '  $(".partners-slider-'.$id.'").bxSlider({
        slideWidth: 924,
        auto: 1,
        autoStart: 1,
        moveSlides: 1,
        minSlides: 7,
        maxSlides: 8,
        pager: false,
        controls: false,
        slideMargin: 5,
        autoHover: true,
        ' . $value . '
        });' . "\n";
    echo '});' . "\n";
    echo '</script>' . "\n";
    endforeach;
}

add_action( 'wp_footer', 'print_partners_scripts' );

function partners($atts ) {
    global $pslider;
    extract(shortcode_atts(array(  
            'ids' => null,
            'extra_options' => null
        ), $atts));  

    $unique_id = uniqid();
    $pslider[$unique_id] = $extra_options;
    $ids = explode( ',', $ids );
    $output = '<div class="section row-one"><div class="col ps-gradient"><div class="ps-wrap"><div class="partners-slider-'.$unique_id.'">';
    foreach($ids as $id) {    
    $img_attr = wp_get_attachment_image_src( $id, 'full' );
    $alt_text = get_post_meta( $id, '_wp_attachment_image_alt', true);
    $output .= '<div class="pslide"><a href="' . $alt_text . '"><img src="' . $img_attr[0] . '" /></a></div>';    
    }
    $output .= '</div></div></div></div>';
    return $output;  
}  

add_shortcode('partners', 'partners');
全球$pslider; foreach($pslider作为$id=>$value): 回显“”。“\n”; echo'jQuery(document).ready(function(){'。“\n”; echo“$(“.partners slider-”.$id.”).bxSlider({ 滑动宽度:924, 汽车:1,, 自动启动:1, 第一,, 米斯利德斯:7, 最大幻灯片数:8, 传呼机:错, 控件:false, 幻灯片摘要:5, 自动悬停:正确, “.$value。” })“;”。“\n”; 回音'});'。“\n”; 回显“”。“\n”; endforeach; } 添加操作('wp_footer'、'print_partners_scripts'); 职能合作伙伴($ATT){ 全球$pslider; 提取(短码)附件(数组( 'ids'=>null, “额外选项”=>null )美元(附件);; $unique_id=uniqid(); $pslider[$unique\u id]=$extra\u选项; $ids=分解(“,”,$ids); $output=''; foreach($id作为$id){ $img_attr=wp_get_attachment_image_src($id,'full'); $alt\u text=get\u post\u meta($id,'.'wp\u attachment\u image\u alt',true); $output.=''; } $output.=''; 返回$output; } 添加_短代码(“合作伙伴”、“合作伙伴”);
<script type="text/javascript">
jQuery(document).ready( function() {
        $(".pslider456").bxSlider({
        slideWidth: 924,
        auto: 1,
        autoStart: 1,
        moveSlides: 1,
        minSlides: 7,
        maxSlides: 8,
        pager: false,
        controls: false,
        slideMargin: 5,
        autoHover: true,
        extra_options: false
    });
});
</script>
function print_partners_scripts() {
    global $pslider;
    foreach( $pslider as $id => $value ):
    echo '<script type="text/javascript">' . "\n";
    echo 'jQuery(document).ready( function() {'. "\n";
    echo '  $(".partners-slider-'.$id.'").bxSlider({
        slideWidth: 924,
        auto: 1,
        autoStart: 1,
        moveSlides: 1,
        minSlides: 7,
        maxSlides: 8,
        pager: false,
        controls: false,
        slideMargin: 5,
        autoHover: true,
        ' . $value . '
        });' . "\n";
    echo '});' . "\n";
    echo '</script>' . "\n";
    endforeach;
}

add_action( 'wp_footer', 'print_partners_scripts' );

function partners($atts ) {
    global $pslider;
    extract(shortcode_atts(array(  
            'ids' => null,
            'extra_options' => null
        ), $atts));  

    $unique_id = uniqid();
    $pslider[$unique_id] = $extra_options;
    $ids = explode( ',', $ids );
    $output = '<div class="section row-one"><div class="col ps-gradient"><div class="ps-wrap"><div class="partners-slider-'.$unique_id.'">';
    foreach($ids as $id) {    
    $img_attr = wp_get_attachment_image_src( $id, 'full' );
    $alt_text = get_post_meta( $id, '_wp_attachment_image_alt', true);
    $output .= '<div class="pslide"><a href="' . $alt_text . '"><img src="' . $img_attr[0] . '" /></a></div>';    
    }
    $output .= '</div></div></div></div>';
    return $output;  
}  

add_shortcode('partners', 'partners');