2016-04-28 4 views
0

ワードプレスチェリーフレームワークでは、私はtemplate-general.phpファイルの機能を編集しようとしていますが、それはできません。私はthis link、 に従おうとしましたが、助けになりません。ファイル構造をダウンロードするチェリーフレームワーク - テンプレートgeneral.phpの関数をオーバーライド

Link for Cherry frameworkは次のとおりです。cherryframework4\lib\functions\template-general.php

私は機能の下に上書きしようとしています:

function cherry_get_site_logo($location = 'header') { 
    $logo_class = array(); 

    switch ($location) { 
     case 'header': 
      $type   = cherry_get_option('logo-type', 'text'); 
      $logo_img_ids = cherry_get_option('logo-image-path', false); 
      $tag   = is_front_page() ? 'h1' : 'h2'; 
      $logo_class[] = 'site-title'; 
      $logo_class[] = $type . '-logo'; 
      $link_class = ''; 
      break; 

     case 'footer': 
      $type   = cherry_get_option('footer-logo-type', 'text'); 
      $logo_img_ids = cherry_get_option('footer-logo-image-path', false); 
      $tag   = 'div'; 
      $logo_class[] = 'cherry-footer-logo'; 
      $logo_class[] = $type . '-logo'; 
      $link_class = 'footer-logo-link'; 
      break; 

     default: 
      $tag   = 'div'; 
      $logo_class[] = $location . '-logo'; 
      $link_class = ''; 
      break; 
    } 

    $logo_class = apply_filters('cherry_logo_classes', $logo_class, $location); 
    $logo_class = array_unique($logo_class); 
    $logo_class = array_map('sanitize_html_class', $logo_class); 

    if ('image' == $type && false != $logo_img_ids) { 

     $images = explode(',', $logo_img_ids); 

     if (count($images) > 1) { 
      $logo_content = cherry_get_retina_logo($images); 
     } else { 

      $img = wp_get_attachment_url($images[0]); 

      $logo_image_format = apply_filters(
       'cherry_logo_image_format', 
       '<a href="%1$s" rel="home"><img src="%2$s" alt="%3$s"></a>', 
       $location 
      ); 

      $logo_content = sprintf($logo_image_format, home_url('/'), esc_url($img), get_bloginfo('title')); 
     } 

    } else { 
     $logo_content = cherry_get_site_link($link_class); 
    } 

    $logo = $logo_content ? sprintf('<%3$s class="%1$s">%2$s</%3$s>', join(' ', $logo_class), $logo_content, $tag) : ''; 

    return apply_filters('cherry_get_site_logo', $logo, $location); 
} 

誰もがこの渡って来ますか?

答えて

1

回答がありません。さて、ここでの提案である:あなたの子供ののfunctions.phpで

またはカスタムテーマ

<?php 

    add_filter('cherry_get_site_logo', 'your_get_site_logo'); 

    function your_get_site_logo($logo, $location){ 
     $output = ''; 

     // your function logic 

     return $output; 
    } 

が、これはすべての場所に影響を与えることに注意してください。

+0

答えをありがとう...申し訳ありません私はwp開発から得た答えを更新しませんでした - >リンク - > http://wordpress.stackexchange.com/questions/226159/cherry-framework-overriding-function-in-テンプレート汎用PHP – Arun

関連する問題