web-dev-qa-db-fra.com

Obtenir le nom de l'auteur du thème parent

Je souhaite obtenir le nom de l'auteur du thème parent.

Je peux obtenir le nom du thème en utilisant wp_get_theme () pour obtenir l'objet thème du thème (enfant) actuel. De cela, je peux obtenir le nom du thème parent.

Ensuite, je pense que je dois obtenir l’objet du thème parent, mais je ne sais pas comment aborder au mieux cette question. Voici mon code jusqu'à présent:

$style_parent_theme = wp_get_theme();
$style_parent_theme_dir = $style_parent_theme->get( 'Template' );
$style_parent_theme_name = wp_get_theme($parent_theme_dir);
$style_parent_theme_author = $style_parent_theme_name->get( 'Author' );

if ($style_parent_theme_author == "WooThemes") {
3
raison

Merci pour toute l'aide qui m'a dirigé dans la bonne direction. En fin de compte, j'ai utilisé ce qui suit:

$style_parent_theme = wp_get_theme(get_template());
$style_parent_theme_author = $style_parent_theme->get( 'Author' );

J'utilise get_template () pour récupérer le nom du dossier du thème parent.

wp_get_theme récupère alors l'objet thème.

Une fois que nous avons cela, nous pouvons manipuler l'objet pour obtenir le nom de l'auteur.

6
raison

Je cherchais le nom du thème parent et suis tombé sur ce post.

Je pense que la meilleure solution n'est pas mentionnée ici:

wp_get_theme()->parent()->get( 'Author' );

ou ce dont j'avais besoin:

wp_get_theme()->parent()->get( 'Name' )
3
Web-Entwickler

La ligne 3 de votre code se lit comme suit:

$style_parent_theme_name = wp_get_theme($parent_theme_dir);

cA devrait etre:

$style_parent_theme_name = wp_get_theme($style_parent_theme_dir);

sinon le code est correct.

Vous pouvez obtenir cette valeur sur le thème de l'enfant. Obtenez d'abord la date du thème de votre enfant. Le moyen le plus simple est la fonction wp_get_theme(), voir codex pour les paramètres et plus d’informations. Vous obtenez un objet avec toutes les informations pertinentes sur le thème actuel. À la deuxième étape, vérifiez s’il s’agit d’un thème enfant, puis obtenez les informations sur ses parents, telles que la source de suivi.

// Current WP_Theme object.
// Get this data via hook or class WP_Theme
// As wrapper, simple to sue is the function wp_get_theme()
$theme_data    = wp_get_theme();
$is_child      = $this->is_child( $theme_data );

if ( $is_child ) {
    $parent_name = $theme_data->parent()->Name;
}

La méthode is_child est simple:

function is_child( $theme_data ) {
    // For limitation of empty() write in var
    $parent = $theme_data->parent();
    if ( ! empty( $parent ) ) {
        return TRUE;
    }
    return FALSE;
}
1
bueltge

Cela fonctionne pour moi.

  <?php
  $my_theme = wp_get_theme('parentThemeName');
  echo $my_theme->get( 'Author' );
  ?>
0
JediTricks007

fonction simple

function show_theme_author(){

    $theme = wp_get_theme();

    return $theme->get('Author');

}
0
Benn