/** * Outputs the widget content * @param array $args Widget arguments * @param array $instance Widget instance * @return void */ public function widget($args, $instance) { if (!isset($instance['module_id']) || !is_numeric($instance['module_id'])) { return false; } $display = \Modularity\App::$display; $module = \Modularity\Editor::getModule($instance['module_id'], array('hidden' => false, 'columnWidth' => isset($instance['module_size']) ? $instance['module_size'] : 'grid-md-4')); $display->outputModule($module, $args); }
/** * Display module with shortcode * @param array $args Args * @return string Html markup */ public function shortcodeDisplay($args) { $args = shortcode_atts(array('id' => false, 'inline' => true), $args); if (!is_numeric($args['id'])) { return; } $module = \Modularity\Editor::getModule($args['id']); if (substr($module->post_type, 0, 4) != 'mod-' || $module->post_status == 'private' && !is_user_logged_in()) { return; } $templatePath = \Modularity\Helper\Wp::getTemplate($module->post_type, 'module-inline', false); if (!$templatePath || $args['inline'] !== true) { $templatePath = \Modularity\Helper\Wp::getTemplate($module->post_type, 'module', false); } if (!$templatePath) { return false; } ob_start(); include $templatePath; $moduleMarkup = ob_get_clean(); $moduleMarkup = apply_filters('Modularity/Display/Markup', $moduleMarkup, $module); $moduleMarkup = apply_filters('Modularity/Display/' . $module->post_type . '/Markup', $moduleMarkup, $module); return '<div class="' . $module->post_type . '">' . $moduleMarkup . '</div>'; }