You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.9 KiB
42 lines
1.9 KiB
<?php
|
|
|
|
namespace AXEWEB_Blocks\Blocks\<%= ownerClass %>\<%= blockClassModel %>;
|
|
|
|
class <%= blockClassModel %>_Component <% if (isComponentManager) { %>extends \Core\Component <% } %>{
|
|
const VERSION = '<%= version %>';
|
|
|
|
<% if (!isComponentManager) { %>public function __construct() {
|
|
// add_action( 'wp_enqueue_scripts', [ $this, 'register_assets' ] );
|
|
add_action( 'after_setup_theme', [ $this, 'register_assets' ] );
|
|
}
|
|
|
|
<% } %>function register_assets(): void {
|
|
$base_path = plugin_dir_url( __FILE__ ); // In Plugins
|
|
// $base_path = get_template_directory_uri() . '/components/partials/<%= blockFilename %>/'; // In Theme
|
|
|
|
wp_register_style( 'block-<%= blockFilename %>', $base_path . 'templates/styles/<%= blockFilename %>.min.css', [ 'assets-style' ], self::VERSION );
|
|
wp_enqueue_style( 'block-<%= blockFilename %>' );
|
|
|
|
wp_register_script( 'block-<%= blockFilename %>', $base_path . 'templates/scripts/<%= blockFilename %>.min.js', [ 'assets-script' ], self::VERSION, true );
|
|
wp_enqueue_script( 'block-<%= blockFilename %>' );
|
|
}
|
|
|
|
public function get_content( $args = [] ): string {
|
|
$default_args = apply_filters( 'axeweb_blocks/<%= ownerFilename %>/<%= blockFilename %>::default_args', [] ); // Not really practical.
|
|
|
|
$args = apply_filters( 'axeweb_blocks/<%= ownerFilename %>/<%= blockFilename %>::prepare_args', array_merge( $default_args, $args ) );
|
|
|
|
$output = ( include( __DIR__ . '/templates/<%= blockFilename %>.template.php' ) )( $args, self::class );
|
|
|
|
return apply_filters( 'axeweb_blocks/<%= ownerFilename %>/<%= blockFilename %>::content', $output );
|
|
}<% if (isElementor) { %>
|
|
|
|
function register_elementor_widget( $widgets_manager ): void {
|
|
require_once "helpers/<%= blockClassModel %>_Elementor_Widget.php";
|
|
$widgets_manager->register_widget_type( new Helpers\<%= blockClassModel %>_Elementor_Widget() );
|
|
}
|
|
<% } %>
|
|
|
|
}
|
|
|
|
<%= blockClassModel %>_Component::get_instance();
|
|
|