コード例 #1
0
 public function isModularitySidebarActive($sidebar)
 {
     $template = \Modularity\Helper\Post::getPostTemplate();
     if (!file_exists($template)) {
         $template = \Modularity\Helper\Wp::findCoreTemplates([$template, 'archive']);
     }
     $options = get_option('modularity-options');
     if (is_home()) {
         $template = 'home';
     }
     if (!isset($options['enabled-areas'][$template]) || !in_array($sidebar, $options['enabled-areas'][$template])) {
         return false;
     }
     return true;
 }
コード例 #2
0
 /**
  * Loops registered sidebars and creates metaboxes for them
  * @return  void
  */
 public function addSidebarsMetaBoxes()
 {
     global $wp_registered_sidebars;
     $template = \Modularity\Helper\Post::getPostTemplate();
     $sidebars = null;
     $activeAreas = $this->getActiveAreas($template);
     // Add no active sidebars message if no active sidebars exists
     if (count($activeAreas) === 0) {
         add_meta_box('no-sidebars', __('No active sidebar areas', 'modularity'), function () {
             echo '<p>' . __('There\'s no active sidebars. Please activate sidebar areas in the Modularity Options to add modules.', 'modularity') . '</p>';
         }, $this->screenHook, 'normal', 'low', null);
         return;
     }
     foreach ($activeAreas as $area) {
         if (isset($wp_registered_sidebars[$area])) {
             $sidebars[$area] = $wp_registered_sidebars[$area];
         }
     }
     if (is_array($sidebars)) {
         foreach ($sidebars as $sidebar) {
             $this->sidebarMetaBox($sidebar);
         }
     }
 }