2017-09-21 24 views
0

Ich bin neu in Wordpress und ich versuche, functions.php, mit meiner functions.php Datei in meinem Child Theme zu überschreiben. Der ursprüngliche Code Ich möchte Änderung istOverride functions.php in Wordpress

function generic_read_more_link() { 
    if (!is_admin()) { 
     return ' <a href="' . esc_url(get_permalink()) . '" class="more-link">...</a>'; 
    } 
} 

add_filter('the_content_more_link', 'generic_read_more_link'); 

function generic_excerpt_read_more_link($more) { 
    if (!is_admin()) { 
     global $post; 
     return ' <a href="' . esc_url(get_permalink($post->ID)) . '" class="more-link">...</a>'; 
    } 
} 

add_filter('excerpt_more', 'generic_excerpt_read_more_link'); 
add_action('widgets_init', 'generic_widgets_init'); 

Um

function generic_read_more_link() { 
    if (!is_admin()) { 
     return ' <a href="' . esc_url(get_permalink()) . '" class="more-link">Read more</a>'; 
    } 
} 

add_filter('the_content_more_link', 'generic_read_more_link'); 

function generic_excerpt_read_more_link($more) { 
    if (!is_admin()) { 
     global $post; 
     return ' <a href="' . esc_url(get_permalink($post->ID)) . '" class="more-link">Read more</a>'; 
    } 
} 

add_filter('excerpt_more', 'generic_excerpt_read_more_link'); 
add_action('widgets_init', 'generic_widgets_init'); 

aber ich habe keine Ahnung, wie ich es außer Kraft setzen müssen. Wenn ich nur die Wörter ändere, bekomme ich nur eine leere Seite.

Antwort

0

Sie haben zwei Möglichkeiten:

  1. Fügen Sie Ihre eigenen Funktionen mit höherer Priorität

    function namespace_read_more_link() { 
        if (!is_admin()) { 
        return ' <a href="' . esc_url(get_permalink()) . '"class="more-link">Read More</a>'; 
        } 
    } 
    
    add_filter('the_content_more_link', 'namespace_read_more_link', 15); 
    
  2. die übergeordneten Thema Funktionen entfernen.

    /* Remove the parent filter */ 
    function child_remove_parent_read_more() { 
        remove_filter('the_content_more_link', 'generic_read_more_link_child'); 
    } 
    add_action('wp_loaded', 'child_remove_parent_read_more'); 
    
    /* Add our own filter */ 
    function namespace_read_more_link() { 
        if (!is_admin()) { 
        return ' <a href="' . esc_url(get_permalink()) . '" class="more-link">Read More</a>'; 
        } 
    } 
    add_filter('the_content_more_link', 'namespace_read_more_link'); 
    

Weitere Informationen lesen Sie den Artikel, der Dedering auf Pluggable Functions in Wordpress geschrieben.

0

Sie können diese nicht überschreiben, sieht aus wie die parent-theme wurde nicht so gemacht, können Sie.

Was Sie tun müssen (und es ist nicht ideal) seine Änderung der Namen:

function generic_read_more_link_child() { 
    if (!is_admin()) { 
     return ' <a href="' . esc_url(get_permalink()) . '" class="more-link">Read more</a>'; 
    } 
} 

add_filter('the_content_more_link', 'generic_read_more_link_child'); 

function generic_excerpt_read_more_link_child($more) { 
    if (!is_admin()) { 
     global $post; 
     return ' <a href="' . esc_url(get_permalink($post->ID)) . '" class="more-link">Read more</a>'; 
    } 
} 

add_filter('excerpt_more', 'generic_excerpt_read_more_link_child'); 
add_action('widgets_init', 'generic_widgets_init'); 

so Ihre theme-child Funktionen werden auch nach den parent denjenigen ausführen, natürlich dies den parent nicht stoppen Einsen.

Verwandte Themen