3

As of wordpress 3.4 we're supposed to use wp_get_theme to return theme data.

$theme = wp_get_theme();

//var_dump($theme);

echo $theme->Author;

despite the var_dump indicating the correct string, $theme->Author always returns a hyperlink with the author's name, but linked to the author's site. how can i get just the theme's author name?

1
  • I just upgraded to 3.4.1 to check this issue but i got just author's name and no hyperlink $theme = wp_get_theme(); var_dump($theme->Author); this is what i got: > string 'the WordPress team' (length=18) Jul 1, 2012 at 9:18

2 Answers 2

5

Do not use just the header string, call display() instead and set the second parameter to FALSE to suppress markup.

// FALSE for no markup
$theme->display( 'Author', FALSE );

What you see in your var_dump() are private properties. If you print $theme->Author the magic __get() method is called and this calls display() without the second parameter for $markup.

1
  • 1
    thanks toscho... that does it. i guess i have a lot to learn about OOP and "private" properties. Jul 1, 2012 at 15:13
0

Yes, you're right. I could reproduce the issue on my Wordpress 3.4.1 installation. Not sure if this is a bug; will need to dig into the core wordpress code to see how WP_Theme object is built and values are returned. For now, I think we're left with an option to use PHP string Parser functions and extract Author name.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.