示例#1
0
 static function getMetaOptions()
 {
     if (empty(self::$metaOptions)) {
         global $post;
         if (is_object($post)) {
             $postID = $post->ID;
         } else {
             global $wp;
             $url = home_url(add_query_arg(array(), $wp->request));
             $postID = url_to_postid($url);
         }
         $metaOptions = array();
         if (!empty($postID)) {
             $postMeta = get_post_meta($postID);
             $lookup = array('adsense' => 'adsense', 'show_leadin' => 'adsense-top', 'show_top' => 'adsense-top', 'show_midtext' => 'adsense-middle', 'show_middle' => 'adsense-middle', 'show_leadout' => 'adsense-bottom', 'show_bottom' => 'adsense-bottom', 'show_widget' => 'adsense-widget', 'title_gsearch' => 'adsense-search', 'show_lu' => 'adsense-linkunits');
             foreach ($lookup as $optKey => $metaKey) {
                 $metaStyle = $metaOptions[$optKey] = '';
                 if (!empty(self::$options[$optKey])) {
                     $metaStyle = self::$options[$optKey];
                 } else {
                     if (!empty($postMeta[$metaKey])) {
                         $metaStyle = strtolower($postMeta[$metaKey][0]);
                     }
                 }
                 $style = $metaStyle;
                 // if the option contains CSS directive
                 switch ($metaStyle) {
                     case 'left':
                         $style = 'text-align:left';
                         break;
                     case 'leftfloat':
                     case 'floatleft':
                     case 'leftfloat':
                         $style = 'float:left;display:block';
                         break;
                     case 'center':
                         $style = 'text-align:center';
                         break;
                     case 'right':
                         $style = 'text-align:right';
                         break;
                     case 'rightfloat':
                     case 'floatright':
                     case 'rightfloat':
                         $style = 'float:right;display:block';
                         break;
                     default:
                         $style = $metaStyle;
                         break;
                 }
                 $metaOptions[$optKey] = $style;
             }
         }
         self::$metaOptions = $metaOptions;
     }
     return self::$metaOptions;
 }
 function filterHeader($arg)
 {
     if (is_admin()) {
         return $arg;
     }
     // is_feed() is not ready, because the WP query may not be run yet.
     if (strpos($_SERVER['REQUEST_URI'], 'feed') !== false) {
         return $arg;
     }
     if (EzGA::isKilled()) {
         return $arg;
     }
     $show_leadin = $this->options['show_leadin'];
     if ($show_leadin != 'no') {
         $metaOptions = EzGA::getMetaOptions();
         if (empty($metaOptions['adsense']) || !empty($metaOptions['adsense']) && $metaOptions['adsense'] != 'no') {
             EzGA::$metaOptions['show_leadin'] = '';
             echo $this->mkAdBlock("leadin");
             EzGA::$metaOptions = array();
         }
     }
     return $arg;
 }