__class_name(); } /** * Get class name as slug. * * @since 1.0.0 */ private function __class_name() { /* Generate name slug from class */ $class_name = str_replace( __NAMESPACE__, '', $this->get_class_name() ); $class_name = aelms_camel2dashed( $class_name ); return $class_name; } /** * Get addon categories. * * @since 1.0.0 */ public function get_categories() { return array( 'acadlix_addons_category' ); } /** * Override from addon to add custom wrapper class. * * @return string */ protected function get_custom_wrapper_class() { return ''; } /** * Overriding default function to add custom html class. * * @return string */ public function get_html_wrapper_class() { $html_class = parent::get_html_wrapper_class(); $html_class .= ' acadlix-addon'; $html_class .= ' ' . $this->get_name(); $html_class .= ' ' . $this->get_custom_wrapper_class(); return rtrim( $html_class ); } /** * Register addon controls */ protected function register_controls() { $this->register_content_controls(); $this->register_style_controls(); } /** * Register content controls * * @return void */ protected function register_content_controls() { } /** * Register style controls * * @return void */ abstract protected function register_style_controls(); }