Проблема с переменной PHP - PullRequest
0 голосов
/ 09 августа 2010

Я пишу плагин для WordPress, но не могу заставить свой флаг работать.Это сводит меня с ума!Вот код без оболочки класса:

static $js_flag;

function init() 
{
    add_shortcode('jw_html5', array(__CLASS__, 'jw_html5_shortcode'));
    add_action('init', array(__CLASS__, 'jw_add_js' ));
}

public function jw_html5_shortcode( $atts, $content = null ) 
{

    self::$js_flag = true;
    $vid = '';

    extract( shortcode_atts( array(
        'src' => '/vids/video.mp4',
        'width' => 480,
        'height' => 320
        ), $atts ) );

    $vid = "<video id='player' src='$src' width='$width' height='$height' type='video/mp4'> </video>";

    return self::$js_flag;
    //return $vid;
}


public function jw_add_js()
{


    if(self::$js_flag)
    {
        wp_register_script('jw_player', plugins_url('scripts/player.php', __FILE__), array('jquery'), '.01', true);
        wp_register_script('jw_player_script', plugins_url('scripts/jquery.jwplayer.js', __FILE__), array('jquery'), '.01', false);
        wp_register_script('jw_playlist', plugins_url('scripts/jquery.playlist.js', __FILE__), array('jquery'), '.01', false);

        wp_enqueue_script('jw_player_script');
        wp_enqueue_script('jw_playlist');
        wp_enqueue_script('jquery');
        wp_enqueue_script('jw_player');
    }   


}

Я установил флаг в функции шорткода, но он не передает его функции jw_add_js ()Это своего рода сука для отладки в WP.Любой совет будет очень признателен.

Обновление: я нашел ответ на этот вопрос после возни.Мне пришлось зарегистрировать мои скрипты, а затем сохранить дескрипторы в массиве.Затем я передаю массив с помощью метода wp_print_scripts ().Надеюсь, это кому-нибудь поможет!

1 Ответ

0 голосов
/ 08 сентября 2010

Я нашел ответ на это после возни.Мне пришлось зарегистрировать мои скрипты, а затем сохранить дескрипторы в массиве.Затем я передаю массив с помощью метода wp_print_scripts ().Надеюсь, это кому-нибудь поможет!

...