Inventory_Presser_Plugin::include_scripts_and_styles()

Registers JavaScripts and stylesheets for front-end users and dashboard users. Includes some inline styles and scripts depending on the plugin settings and page request.


Return Return

(void)


Top ↑

Source Source

File: inventory-presser.php

	public function include_scripts_and_styles() {
		// Allow dashicons use on frontend.
		wp_enqueue_style( 'dashicons' );

		/**
		 * Register stylesheets that will only be enqueued when specific
		 * widgets or shortcodes are used.
		 */
		if ( ! function_exists( 'get_plugin_data' ) ) {
			include_once ABSPATH . 'wp-admin/includes/plugin.php';
		}
		$plugin_version = get_plugin_data( __FILE__ )['Version'];
		wp_register_style( 'invp-grid', plugins_url( 'css/widget-grid.min.css', __FILE__ ), array(), $plugin_version );
		wp_register_style( 'invp-maximum-price-filters', plugins_url( 'css/widget-maximum-price-filters.min.css', __FILE__ ), array(), $plugin_version );
		wp_register_style( 'invp-epa-fuel-economy', plugins_url( 'css/widget-epa-fuel-economy.min.css', __FILE__ ), array(), $plugin_version );
		wp_register_style( 'invp-slider', plugins_url( 'css/widget-slider.min.css', __FILE__ ), array(), $plugin_version );

		/**
		 * Register flexslider and provide overrides for scripts and styles
		 */
		wp_register_script( 'flexslider', plugins_url( '/vendor/woocommerce/FlexSlider/jquery.flexslider-min.js', __FILE__ ), array( 'jquery' ), $plugin_version );
		// Our overrides.
		wp_register_script( 'invp-flexslider', plugins_url( '/js/flexslider.min.js', __FILE__ ), array( 'flexslider' ), $plugin_version );
		// Another flexslider spin-up script for the Vehicle Slider widget.
		wp_register_script( 'invp-slider', plugins_url( '/js/widget-slider.min.js', __FILE__ ), array( 'flexslider' ), $plugin_version );

		wp_register_style( 'flexslider', plugins_url( '/vendor/woocommerce/FlexSlider/flexslider.css', __FILE__ ), null, $plugin_version );
		// Our overrides.
		wp_register_style( 'invp-flexslider', plugins_url( '/css/flexslider.min.css', __FILE__ ), array( 'flexslider' ), $plugin_version );

		// Register the iFrameResizer.js script for use by our [invp_iframe] shortcode and Iframe block.
		wp_register_script( 'invp-iframe-resizer', plugins_url( '/js/iframe-resizer/iframeResizer.min.js', __FILE__ ), array(), $plugin_version );

		/**
		 * Register a stylesheet that will be used by two shortcodes,
		 * [invp-archive-vehicle] and [invp-single-vehicle]
		 */
		wp_register_style(
			'invp-attribute-table',
			plugins_url( '/css/vehicle-attribute-table.min.css', __FILE__ ),
			null,
			$plugin_version
		);

		// Register a stylesheet for the archive vehicle shortcode.
		wp_register_style(
			'invp_archive_vehicle',
			plugins_url( '/css/shortcode-archive-vehicle.min.css', __FILE__ ),
			null,
			$plugin_version
		);

		// Register a stylesheet for the single vehicle shortcode.
		wp_register_style(
			'invp_single_vehicle',
			plugins_url( '/css/shortcode-single-vehicle.min.css', __FILE__ ),
			null,
			$plugin_version
		);

		/**
		 * Make the meta prefix to the front-end (the object name invp is
		 * localized for the admin dashboard in
		 * Inventory_Presser_Admin_Customize_Dashboard)
		 */
		if ( ! is_admin() ) {
			?><script> var invp = <?php
			echo wp_json_encode(
				array(
					'meta_prefix' => INVP::meta_prefix(),
					'is_singular' => is_singular( INVP::POST_TYPE ),
				)
			);
			?>; </script><?php
		}
	}