webentwicklung-frage-antwort-db.com.de

Überschreibe Plugin-Funktionen in functions.php

Ich möchte $title = get_bloginfo(); überschreiben mit -> $title = get_bloginfo('siteurl');

Code aus dem Plugin " Ganz einfache Facebook-Twitter-Share-Buttons ":

function really_simple_share ($content, $filter, $link='', $title='', $author='') {
    static $last_execution = '';

    ...

    $custom_field_disable = get_post_custom_values('really_simple_share_disable');
    if ($custom_field_disable[0]=='yes' and $filter!='shortcode') {
        return $content;
    }

    //GET ARRAY OF STORED VALUES
    global $really_simple_share_option;
    $option = $really_simple_share_option;

    ...

    $first_shown = false; // NO PADDING FOR THE FIRST BUTTON

    // IF LINK AND TITLE ARE NOT SET, USE DEFAULT FUNCTIONS
    if ($link=='' and $title=='') {
        $link = ($option['use_shortlink']) ? wp_get_shortlink() : get_permalink();

        $title = get_bloginfo(); // OVERRIDE

        $author = get_the_author_meta('nickname');
    }

Kann ich das in meiner functions.php machen, weil ich dieses Plugin nach jedem Update aktualisiere, ohne diese Zeilen zu ändern.

Vielen Dank

2
ogni

Es ist möglich, die get_bloginfo() zu filtern, aber Sie müssen einen Weg finden, um die Bedingung fein abzustimmen, da die Überschreibung global ... ist.

add_filter( 'pre_option_blogname', 'wpse_58030_override_blogname' );

function wpse_58030_override_blogname( $bool )
{
    // If not page with ID == 28, do nothing
    if( !is_page( 28 )  ) 
        return false;

    // Change the 'blogname'
    return "Not The Blog Name";
}

enter image description here

Überwachung

get_bloginfo() ist dasselbe wie get_bloginfo('blogname').

Wenn der gewünschte Filter siteurl wäre, wäre der Filter pre_option_siteurl.

2
brasofilo