コード例 #1
0
ファイル: Select.php プロジェクト: felixarntz/wpdlib
 /**
  * Enqueues required assets for the field type.
  *
  * The function also generates script vars to be applied in `wp_localize_script()`.
  *
  * @since 0.5.0
  * @return array array which can (possibly) contain a 'dependencies' array and a 'script_vars' array
  */
 public function enqueue_assets()
 {
     if (self::is_enqueued(__CLASS__)) {
         return array();
     }
     $assets_dir = ComponentManager::get_base_dir() . '/assets';
     $assets_url = ComponentManager::get_base_url() . '/assets';
     $version = ComponentManager::get_dependency_info('select2', 'version');
     $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
     wp_enqueue_style('select2', $assets_url . '/vendor/select2/dist/css/select2' . $min . '.css', array(), $version);
     wp_enqueue_script('select2', $assets_url . '/vendor/select2/dist/js/select2' . $min . '.js', array('jquery'), $version, true);
     $dependencies = array('select2');
     $locale = str_replace('_', '-', get_locale());
     $language = substr($locale, 0, 2);
     if (file_exists($assets_dir . '/vendor/select2/dist/js/i18n/' . $locale . '.js')) {
         wp_enqueue_script('select2-locale', $assets_url . '/vendor/select2/dist/js/i18n/' . $locale . '.js', array('select2'), $version, true);
         $dependencies[] = 'select2-locale';
     } elseif (file_exists($assets_dir . '/vendor/select2/dist/js/i18n/' . $language . '.js')) {
         wp_enqueue_script('select2-locale', $assets_url . '/vendor/select2/dist/js/i18n/' . $language . '.js', array('select2'), $version, true);
         $dependencies[] = 'select2-locale';
     }
     return array('dependencies' => $dependencies);
 }