Question

J'ai une collection de musique assez vaste et mes amis sont toujours emprunter mes affaires. Je voudrais assurer un meilleur suivi de ma bibliothèque, donc je vais construire un système-caisse en utilisant sudo WP.

La collection était déjà dans WP en utilisant des termes pour trier tout. Les principaux taxonomies sont artiste , année publié , étiquette et genre . Je veux ajouter une nouvelle taxonomie appelée WhereIsIt . Le type de poste utilisé est appelé album .

En raison de la manière que les autres plug-ins Interagir avec le site (je suis un geek de la musique) Je ne peux pas utiliser facilement méta terme pour poste de l'état des stocks. Si cela importe pour le moment je suis en utilisant le plugin Scribu aux champs de recherche de taxonomie AutoGenerate.

La question:

Comment puis-je afficher une liste de termes qui correspondent Les posts associés aussi une autre durée déterminée?

Par exemple: afficher une liste des termes pour Les artistes qui est WhereIsIt terme est ihaveit . Si tous les albums de l'artiste ont une WhereIsIt terme de idonthaveit , ne pas afficher la artiste terme dans la liste.

Ou plus simplement:. Si tous mes albums d'un artiste particulier sont prêtées à quelqu'un d'autre, ne pas afficher le nom de l'artiste dans la liste des artistes

Would quelque chose comme ceci devra être fait par wpdb? Filtrage d'une boucle est assez facile, mais la traduction qui à une liste est sur ma tête. :)

Edit: Je l'ai remplacé les termes inhouse avec ihaveit , CheckedOut avec idonthaveit , et la taxonomie nommée inventorystatus avec WhereIsIt pour une meilleure clarté.

Était-ce utile?

La solution

si je comprends bien, vous voulez obtenir une liste des albums (messages) d'un artiste spécifique (taxonomie) et qui sont ont terme ihaveit.

si oui la requête est un simple à l'aide tax_query:

$args = array(
    'posts_per_page' => -1, //get all
    'post_type' => 'album', 
    'tax_query' => array(
        'relation' => 'AND',
        array(
            'taxonomy' => 'artist',
            'field' => 'slug', 
            'terms' => array( 'artist-slug' )
        ),
        array(
            'taxonomy' => 'whereisit',
            'field' => 'slug',
            'terms' => array('ihaveit')
        )
    )
);
$query = new WP_Query( $args );
while($query->have_posts())
{
    $query->the_post();
    //to your thing / loop here
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top