web-dev-qa-db-fra.com

Quel est le problème avec ce code?

function themeperauthor_need_switch() {
    global $post;
  if ( $get_post_type == 'weblogs' )  {
    return get_the_author_meta('themeperauthor', $user->ID);
  }
  return "";
}

Ça ne retourne rien

2
puanthanh

Vous utilisez get_post_type en tant que variable au lieu d'une fonction, essayez:

function themeperauthor_need_switch() {
    global $post;
  if ( get_post_type($post) == 'weblogs' )  {
    return get_the_author_meta('themeperauthor', $user->ID);
  }
  return "";
}
1
Bainternet

Bonjour @ puanthanh:

Bien pour commencer $user n'est pas dans la portée. Mais comme vous avez donné très peu de détails, je ne sais pas trop comment vous suggérer d’attribuer une valeur. Peut-être mettre à jour votre question avec plus de détails?

0
MikeSchinkel

Vous ne savez pas vraiment ce que vous souhaitez faire, mais peut-être ..

function themeperauthor_need_switch() {
    global $post
    //, $current_user;
    if( !isset( $post->post_type ) )
        return '';
    if ( $post->post_type == 'weblogs' )
        return get_the_author_meta( 'themeperauthor', 
            $post->post_author
            //$current_user->ID
        );
    return '';
}

Supposons que vous souhaitiez obtenir une méta basée sur l'auteur de post, mais que vous puissiez changer d'utilisateur, si c'est ce que vous voulez (lignes de gauche dans le code, mais commentées).

REMARQUE: Si vous utilisez $current_user, vous devez vérifier qu'un utilisateur est déjà connecté .. if( is_user_logged_in() ) ou similaire ..

0
t31os