2015-02-23 72 views
-1

我使用高級WordPress主題創建我的網站,當我使用自定義主題標題時,主題會自動將我的博客標題和社交圖標放入我在帖子內上傳的全寬特徵圖形中。在這裏看到的例子:http://www.ravagedesign.com/freebies/greyice-hd-launcher-theme-icon-pack-released/WordPress的主題PHP幫助需要

我願讓這個標題和社會圖標出現在全寬的圖形像下面這樣:http://www.ravagedesign.com/freebies/greylime-hd-launcher-theme-icon-pack-released/ (請注意,我已經使用滑塊插件,它是不是一種選擇實現這個由於增加頁面加載時間和組織差,它會創建。

我已經縮小了與我的functions.php文件中的標題/社會圖標相關的代碼段,並希望幫助修改它以顯示我想要的因爲我對php有一點了解。

functions.php有關自定義標頭的部分:

#-----------------------------------------------------------------# 
# Custom page header 
#-----------------------------------------------------------------# 

if (!function_exists('nectar_page_header')) { 
    function nectar_page_header($postid) { 

     global $options; 
     global $post; 
     global $nectar_theme_skin; 

     $bg = get_post_meta($postid, '_nectar_header_bg', true); 
     $bg_color = get_post_meta($postid, '_nectar_header_bg_color', true); 
     $font_color = get_post_meta($postid, '_nectar_header_font_color', true); 
     $parallax_bg = get_post_meta($postid, '_nectar_header_parallax', true); 
     $title = get_post_meta($postid, '_nectar_header_title', true); 
     $subtitle = get_post_meta($postid, '_nectar_header_subtitle', true); 
     $height = get_post_meta($postid, '_nectar_header_bg_height', true); 
     $page_template = get_post_meta($postid, '_wp_page_template', true); 
     $display_sortable = get_post_meta($postid, 'nectar-metabox-portfolio-display-sortable', true); 
     $inline_filters = (!empty($options['portfolio_inline_filters']) && $options['portfolio_inline_filters'] == '1') ? '1' : '0'; 
     $filters_id = (!empty($options['portfolio_inline_filters']) && $options['portfolio_inline_filters'] == '1') ? 'portfolio-filters-inline' : 'portfolio-filters'; 
     $text_align = get_post_meta($postid, '_nectar_page_header_alignment', true); 
     $fullscreen_header = (!empty($options['blog_header_type']) && $options['blog_header_type'] == 'fullscreen' && is_singular('post')) ? true : false; 
     $bottom_shadow = get_post_meta($postid, '_nectar_header_bottom_shadow', true); 
     $bg_overlay = get_post_meta($postid, '_nectar_header_overlay', true); 

     (!empty($display_sortable) && $display_sortable == 'on') ? $display_sortable = '1' : $display_sortable = '0'; 

     //incase no title is entered for portfolio, still show the filters 
     if($page_template == 'template-portfolio.php' && empty($title)) $title = get_the_title($post->ID); 

     if(!empty($bg) || !empty($bg_color)) { 

     (empty($bg)) ? $social_img_src = 'none' : $social_img_src = $bg; 
     (empty($bg)) ? $bg = 'none' : $bg = 'url('.$bg.')'; 
     (empty($bg_color)) ? $bg_color = '#000' : $bg_color = $bg_color; 
     $height = (!empty($height)) ? preg_replace('/\s+/', '', $height) : $height; 
     $not_loaded_class = ($nectar_theme_skin != 'ascend') ? "not-loaded" : null;  
     $fullscreen_class = ($fullscreen_header == true) ? "fullscreen-header" : null; 
     $bottom_shadow_class = ($bottom_shadow == 'on') ? " bottom-shadow": null; 
     $bg_overlay_class = ($bg_overlay == 'on') ? " bg-overlay": null; 
     $ajax_page_loading = (!empty($options['ajax-page-loading']) && $options['ajax-page-loading'] == '1') ? true : false; 

     $wrapper_height_style = ($fullscreen_header == true && ($post->post_type == 'post' && is_single()) || $ajax_page_loading == false) ? null : 'style="height: '.$height.'px;"'; 

     if(!empty($parallax_bg) && $parallax_bg == 'on') { echo '<div id="page-header-wrap" class="'.$fullscreen_class.'" '.$wrapper_height_style.'>'; } ?> 
     <div class="<?php echo $not_loaded_class . ' ' . $fullscreen_class . $bottom_shadow_class . $bg_overlay_class; ?>" id="page-header-bg" data-alignment="<?php echo (!empty($text_align)) ? $text_align : 'left' ; ?>" data-parallax="<?php echo (!empty($parallax_bg) && $parallax_bg == 'on') ? '1' : '0'; ?>" data-height="<?php echo (!empty($height)) ? $height : '350'; ?>" style="background-color: <?php echo $bg_color?>; background-image: <?php echo nectar_options_img($bg); ?>; height: <?php echo $height;?>px;"> 


      <div class="container"> 

        <?php 
        if($post->ID != 0 && $post->post_type && $post->post_type == 'portfolio') { ?> 

        <div class="row project-title"> 
        <div class="container"> 
        <div class="col span_6 section-title <?php if(empty($options['portfolio_social']) || $options['portfolio_social'] == 0 || empty($options['portfolio_date']) || $options['portfolio_date'] == 0) echo 'no-date'?>"> 

         <h1><?php the_title(); ?></h1> 

         <?php 
         $options = get_option('salient'); 

         $back_to_all_override = get_post_meta($post->ID, 'nectar-metabox-portfolio-parent-override', true); 
         if(empty($back_to_all_override)) $back_to_all_override = 'default'; 

         //attempt to find parent portfolio page - if unsuccessful default to main portfolio page 
         global $post; 
         $terms = get_the_terms($post->id,"project-type"); 
         $project_cat = null; 
         $portfolio_link = null; 

         if(empty($terms)) $terms = array('1' => (object) array('name' => 'nothing')); 

         foreach ($terms as $term) { 
          $project_cat = strtolower($term->name); 
         } 

         $page = get_page_by_title_search($project_cat); 
         if(empty($page)) $page = array('0' => (object) array('ID' => 'nothing')); 

         $page_link = verify_portfolio_page($page[0]->ID); 

         //if a page has been found for the category 
         if(!empty($page_link) && $back_to_all_override == 'default') { 
          $portfolio_link = $page_link; 

         ?> 

          <div id="portfolio-nav"> 
           <ul> 
            <li id="all-items"><a href="<?php echo $portfolio_link; ?>"><i class="icon-salient-back-to-all"></i></a></li>    
           </ul> 
           <ul class="controls">         
            <li id="prev-link"><?php be_next_post_link('%link','<i class="icon-salient-left-arrow-thin"></i>',TRUE, null,'project-type'); ?></li> 
            <li id="next-link"><?php be_previous_post_link('%link','<i class="icon-salient-right-arrow-thin"></i>',TRUE, null, 'project-type'); ?></li> 
           </ul> 
          </div> 

        <?php } 

         //if no category page exists 
         else { 

          $portfolio_link = get_portfolio_page_link(get_the_ID()); 
          if(!empty($options['main-portfolio-link'])) $portfolio_link = $options['main-portfolio-link']; 

          if($back_to_all_override != 'default') $portfolio_link = get_page_link($back_to_all_override); ?> 

          <div id="portfolio-nav"> 
           <ul> 
            <li id="all-items"><a href="<?php echo $portfolio_link; ?>"><i class="icon-salient-back-to-all"></i></a></li> 
           </ul> 
           <ul class="controls">          
            <li id="prev-link"><?php next_post_link('%link','<i class="icon-salient-left-arrow-thin"></i>'); ?></li> 
            <li id="next-link"><?php previous_post_link('%link','<i class="icon-salient-right-arrow-thin"></i>'); ?></li> 
           </ul> 
          </div> 
        <?php } ?> 

        </div> 
       </div> 

      </div><!--/row--> 







        <?php } elseif($post->ID != 0 && $post->post_type == 'post' && is_single()) { 

         // also set as an img for social sharing/ 
         if($social_img_src != 'none') echo '<img class="hidden-social-img" src="'.$social_img_src.'" alt="'.get_the_title().'" />'; 

         ?> 

         <div class="row"> 
         <div class="col span_6 section-title blog-title"> 
          <h1 class="entry-title"><?php the_title(); ?></h1> 

          <?php if(($post->post_type == 'post' && is_single()) && $fullscreen_header == true) { ?> 
           <div class="author-section"> 
            <span class="meta-author vcard author"> 
             <?php if (function_exists('get_avatar')) { echo get_avatar(get_the_author_meta('email'), 100); }?> 
            </span> 
            <div class="avatar-post-info"> 
             <span class="fn"><?php the_author_posts_link(); ?></span> 
             <span class="meta-date date updated"><i><?php echo get_the_date(); ?></i></span> 
            </div> 
           </div> 
          <?php } ?> 

          <?php if($fullscreen_header != true) { ?> 

           <div id="single-below-header"> 
            <span class="meta-author vcard author"><span class="fn"><?php echo __('By', NECTAR_THEME_NAME); ?> <?php the_author_posts_link(); ?></span></span> 
            <?php if(!empty($options['blog_social']) && $options['blog_social'] == 1) { ?> 
             <span class="meta-date date updated"><?php echo get_the_date(); ?></span> 
            <?php } ?> 
            <span class="meta-category"><?php the_category(', '); ?></span> 
            <span class="meta-comment-count"><a href="<?php comments_link(); ?>"><?php comments_number(__('No Comments', NECTAR_THEME_NAME), __('One Comment ', NECTAR_THEME_NAME), __('% Comments', NECTAR_THEME_NAME)); ?></a></span> 

           </div><!--/single-below-header--> 

           <div id="single-meta" data-sharing="<?php echo (!empty($options['blog_social']) && $options['blog_social'] == 1) ? '1' : '0'; ?>"> 
            <ul> 

             <?php if(empty($options['blog_social']) || $options['blog_social'] == 0) { ?> 

               <li> 
                <?php echo '<span class="n-shortcode">'.nectar_love('return').'</span>'; ?> 
               </li> 
               <li> 
                <?php echo get_the_date(); ?> 
               </li> 

             <?php } ?> 

            </ul> 

            <?php if(!empty($options['blog_social']) && $options['blog_social'] == 1) { 

              echo '<div class="nectar-social">'; 

              echo '<span class="n-shortcode">'.nectar_love('return').'</span>'; 

              //facebook 
              if(!empty($options['blog-facebook-sharing']) && $options['blog-facebook-sharing'] == 1) { 
               echo "<a class='facebook-share nectar-sharing' href='#' title='".__('Share this', NECTAR_THEME_NAME)."'> <i class='icon-facebook'></i> <span class='count'></span></a>"; 
              } 
              //twitter 
              if(!empty($options['blog-twitter-sharing']) && $options['blog-twitter-sharing'] == 1) { 
               echo "<a class='twitter-share nectar-sharing' href='#' title='".__('Tweet this', NECTAR_THEME_NAME)."'> <i class='icon-twitter'></i> <span class='count'></span></a>"; 
              } 
              //google plus 
              if(!empty($options['blog-google-plus-sharing']) && $options['blog-google-plus-sharing'] == 1) { 
               echo "<a class='google-plus-share nectar-sharing-alt' href='#' title='".__('Share this', NECTAR_THEME_NAME)."'> <i class='icon-google-plus'></i> <span class='count'> ".GetGooglePlusShares(get_permalink($post->ID))." </span></a>"; 
              } 

              //linkedIn 
              if(!empty($options['blog-linkedin-sharing']) && $options['blog-linkedin-sharing'] == 1) { 
               echo "<a class='linkedin-share nectar-sharing' href='#' title='".__('Share this', NECTAR_THEME_NAME)."'> <i class='icon-linkedin'></i> <span class='count'> </span></a>"; 
              } 
              //pinterest 
              if(!empty($options['blog-pinterest-sharing']) && $options['blog-pinterest-sharing'] == 1) { 
               echo "<a class='pinterest-share nectar-sharing' href='#' title='".__('Pin this', NECTAR_THEME_NAME)."'> <i class='icon-pinterest'></i> <span class='count'></span></a>"; 
              } 

              echo '</div>'; 

             } 
            ?> 

           </div><!--/single-meta--> 

          <?php } //end if theme skin default ?> 

         </div><!--/section-title--> 
        </div><!--/row--> 





        <?php //default 
        } else { ?> 
        <div class="row"> 
         <div class="col span_6"> 
          <h1><?php echo $title; ?></h1> 
          <span class="subheader"><?php echo $subtitle; ?></span> 
         </div> 

         <?php // portfolio filters 
          if($page_template == 'template-portfolio.php' && $display_sortable == '1' && $inline_filters == '0') { ?> 
          <div id="<?php echo $filters_id;?>"> 
            <a href="#" data-sortable-label="<?php echo (!empty($options['portfolio-sortable-text'])) ? $options['portfolio-sortable-text'] :'Sort Portfolio'; ?>" id="sort-portfolio"><span><?php echo (!empty($options['portfolio-sortable-text'])) ? $options['portfolio-sortable-text'] : __('Sort Portfolio',NECTAR_THEME_NAME); ?></span> <i class="icon-angle-down"></i></a> 
           <ul> 
            <li><a href="#" data-filter="*"><?php echo __('All', NECTAR_THEME_NAME); ?></a></li> 
            <?php wp_list_categories(array('title_li' => '', 'taxonomy' => 'project-type', 'show_option_none' => '', 'walker' => new Walker_Portfolio_Filter())); ?> 
           </ul> 
          </div> 
         <?php } ?> 

         </div> 


       <?php } ?> 



      </div> 


      <?php if(($post->ID != 0 && $post->post_type == 'post' && is_single()) && $fullscreen_header == true) { ?> 
       <a href="#" class="section-down-arrow"><i class="icon-salient-down-arrow icon-default-style"> </i></a> 
      <?php } ?> 


     </div> 


     <?php if(!empty($parallax_bg) && $parallax_bg == 'on') { echo '</div>'; } ?> 


     <?php } else if(!empty($title)) { ?> 

      <div class="row page-header-no-bg" data-alignment="<?php echo (!empty($text_align)) ? $text_align : 'left' ; ?>"> 
       <div class="container"> 
        <div class="col span_12 section-title"> 
         <h1><?php echo $title; ?><?php if(!empty($subtitle)) echo '<span>' . $subtitle . '</span>'; ?></h1> 

         <?php // portfolio filters 
         if($page_template == 'template-portfolio.php' && $display_sortable == '1' && $inline_filters == '0') { ?> 
         <div id="<?php echo $filters_id;?>"> 

          <a href="#" data-sortable-label="<?php echo (!empty($options['portfolio-sortable-text'])) ? $options['portfolio-sortable-text'] :'Sort Portfolio'; ?>" id="sort-portfolio"><span><?php echo (!empty($options['portfolio-sortable-text'])) ? $options['portfolio-sortable-text'] : __('Sort Portfolio',NECTAR_THEME_NAME); ?></span> <i class="icon-angle-down"></i></a> 

          <ul> 
           <li><a href="#" data-filter="*"><?php echo __('All', NECTAR_THEME_NAME); ?></a></li> 
           <?php wp_list_categories(array('title_li' => '', 'taxonomy' => 'project-type', 'show_option_none' => '', 'walker' => new Walker_Portfolio_Filter())); ?> 
          </ul> 
         </div> 
        <?php } ?> 

        </div> 
       </div> 



      </div> 

     <?php } 

    } 
} 


function using_page_header($post_id){ 

    global $post; 
    global $woocommerce; 

    if($woocommerce && is_shop() || $woocommerce && is_product_category() || $woocommerce && is_product_tag()) { 
     $header_title = get_post_meta(woocommerce_get_page_id('shop'), '_nectar_header_title', true); 
     $header_bg = get_post_meta(woocommerce_get_page_id('shop'), '_nectar_header_bg', true); 
     $header_bg_color = get_post_meta(woocommerce_get_page_id('shop'), '_nectar_header_bg_color', true); 
     $disable_effect = get_post_meta(woocommerce_get_page_id('shop'), '_disable_transparent_header', true); 
     $force_effect = null; 
    } 
    else if(is_home() || is_archive()){ 
     $header_title = get_post_meta(get_option('page_for_posts'), '_nectar_header_title', true); 
     $header_bg = get_post_meta(get_option('page_for_posts'), '_nectar_header_bg', true); 
     $header_bg_color = get_post_meta(get_option('page_for_posts'), '_nectar_header_bg_color', true); 
     $disable_effect = get_post_meta(get_option('page_for_posts'), '_disable_transparent_header', true); 
     $force_effect = null; 
    } else { 
     $header_title = get_post_meta($post->ID, '_nectar_header_title', true); 
     $header_bg = get_post_meta($post->ID, '_nectar_header_bg', true); 
     $header_bg_color = get_post_meta($post->ID, '_nectar_header_bg_color', true); 
     $disable_effect = get_post_meta($post->ID, '_disable_transparent_header', true); 
     $force_effect = get_post_meta($post->ID, '_force_transparent_header', true); 
    } 

    $pattern = get_shortcode_regex(); 

    $using_applicable_shortcode = 0; 

    if (preg_match_all('/'. $pattern .'/s', $post->post_content, $matches) && array_key_exists(0, $matches)) { 

     if($matches[0][0]){ 
      if(strpos($matches[0][0],'nectar_slider') !== false && strpos($matches[0][0],'full_width="true"') !== false) { 

       if(empty($header_title)) $using_applicable_shortcode = 1; 

      } else { 
       $using_applicable_shortcode = 0; 
      } 
     } 

    } 

    //alternate header style 
    global $options; 
    if(!empty($options['blog_header_type']) && $options['blog_header_type'] == 'fullscreen' && is_singular('post')) $using_applicable_shortcode = 1; 

    //incase of search/tax/removing effect 
    if(is_search() || is_tax() || $disable_effect == 'on') { $using_applicable_shortcode = 0; $header_bg = 0; $header_bg_color = 0; } 

    //stop effect from WooCommerce single pages 
    global $woocommerce; 
    if($woocommerce && is_product()) { $using_applicable_shortcode = 0; $header_bg = 0; $header_bg_color = 0; } 

    //if forcing effect 
    if($force_effect == 'on' && (!is_search() && !is_tax())) { $using_applicable_shortcode = 1; } 

    $the_verdict = (!empty($header_bg_color) || !empty($header_bg) || $using_applicable_shortcode) ? true : false; 

    return $the_verdict; 

} 


function using_nectar_slider(){ 

    global $post; 
    global $woocommerce; 

    if($woocommerce && is_shop() || $woocommerce && is_product_category() || $woocommerce && is_product_tag()) { 
     $header_title = get_post_meta(woocommerce_get_page_id('shop'), '_nectar_header_title', true); 
     $header_bg = get_post_meta(woocommerce_get_page_id('shop'), '_nectar_header_bg', true); 
     $header_bg_color = get_post_meta(woocommerce_get_page_id('shop'), '_nectar_header_bg_color', true); 
    } 
    else if(is_home() || is_archive()){ 
     $header_title = get_post_meta(get_option('page_for_posts'), '_nectar_header_title', true); 
     $header_bg = get_post_meta(get_option('page_for_posts'), '_nectar_header_bg', true); 
     $header_bg_color = get_post_meta(get_option('page_for_posts'), '_nectar_header_bg_color', true); 
    } else { 
     $header_title = get_post_meta($post->ID, '_nectar_header_title', true); 
     $header_bg = get_post_meta($post->ID, '_nectar_header_bg', true); 
     $header_bg_color = get_post_meta($post->ID, '_nectar_header_bg_color', true); 
    } 

    $pattern = get_shortcode_regex(); 
    $using_fullwidth_slider = 0; 

    if (preg_match_all('/'. $pattern .'/s', $post->post_content, $matches) && array_key_exists(0, $matches)) { 

     if($matches[0][0]){ 

      if(strpos($matches[0][0],'nectar_slider') !== false && strpos($matches[0][0],'full_width="true"') !== false 
      || strpos($matches[0][0],' type="full_width_content"') !== false && strpos($matches[0][0],'nectar_slider') !== false && strpos($matches[0][0],'[vc_column width="1/1"') !== false) { 

       $using_fullwidth_slider = 1; 

      } else { 

       $using_fullwidth_slider = 0; 

      } 
     } 

    } 

    //incase of search 
    if(is_search() || is_tax()) $using_fullwidth_slider = 0; 

    //stop effect from WooCommerce single pages 
    global $woocommerce; 
    if($woocommerce && is_product()) $using_fullwidth_slider = 0; 

    $the_verdict = (empty($header_title) && empty($header_bg) && empty($header_bg_color) && $using_fullwidth_slider) ? true : false; 

    return $the_verdict; 
} 
+0

請縮小內完成解決你的問題;例如通過使用Chrome開發工具或類似工具檢查您的頁面並查看導致錯位的原因。恐怕只是發佈你的所有代碼並期望人們通過它進行「調試」將不起作用。 – 2015-02-23 11:41:01

+0

如果你已經讀過這個問題,你會發現沒有問題,代碼需要重新編譯/安排,因爲我缺乏使用php的知識,我不想錯過代碼中的重要元素,所以提供了所有這些。 認爲這會比粘貼沒有足夠的代碼通常發生,如果你不喜歡它不回答。 – Cjeffryes13 2015-02-23 11:43:31

回答

0

似乎在您的網站的博客標題和社會圖標的DIV容器嵌套ID的DIV中=「頁面頁眉-BG」,當它應該與類的DIV中「容器包裝」。

它看起來這是你的主題這樣做的最好的事情是頭部代碼從「greyLIME HD發射的主題」複製,然後替換ICE字石灰和相應的社會聯繫

+1

感謝給我一個建設性的答案Shaf,查找這些div名稱,並計算出哪些代碼段在兩個文件中交換,並使其按預期工作。 – Cjeffryes13 2015-02-24 13:37:53