Domanda

Ho creato la pagina di un autore utilizzando:

 <?php
  if(isset($_GET['author_name'])) :
  $curauth = get_userdatabylogin($author_name);
  else :
  $curauth = get_userdata(intval($author));
  endif;
 ?>

e poi un ciclo standard, che mostra i titoli tutti i post pubblicati da quell'autore. Sto cercando di separare la visualizzazione dei messaggi, a seconda della categoria di appartenenza (1, 2 o 3), così ho provato ad utilizzare

<?php query_posts('cat=1'); ?>

, ma poi vengono visualizzati tutti i miei post sul blog, non solo che l'autore di. Qualcosa è certamente sbagliato.

So che devo usare una query personalizzata quando c'è più di un ciclo per ogni post, ma dato che semplicemente utilizzando una singola query standard, con il filtro "del gatto" non funziona, io sono un po 'perso.

È stato utile?

Soluzione

Se si utilizza un modello di autore non c'è assolutamente alcuna necessità di configurazione (set) i parametri di query autore, saranno configurazione pronto nell'oggetto di query presente nella pagina dell'autore ..

Si potrebbe inoltre evitare la necessità di creare numerosi quesiti (uno per categoria attualmente), scorrendo sopra la query che hai, estraendo le categorie, e memorizzare gli ID pubblicare associati a determinate categorie all'interno di un array. Prima iterazione si utilizza per costruire la matrice di ID suddivisi per categoria Nome / ID (quello che volete), quindi riavvolgere la query, iterata sopra i pali, continuando (saltando) risultati che non corrispondono alla prima categoria nella propria matrice di nuova costruzione di categoria ID (oi nomi). Anche in questo caso si segue riavvolgendo il ciclo, poi iterando su di esso ancora una volta per ogni categoria che hai nel nuovo array, continuando (saltando) i messaggi quando non corrispondono alla categoria iterazione corrente.

Non è qualcosa che sarà davvero molto senso finché non si vede, e diventa un po 'più complesso se classificare i tuoi messaggi in più categorie (dove le categorie possono intersecarsi tra i messaggi), ma funzionerà (senza alcuna query aggiuntive ) per la pagina corrente (che, ovviamente, non sarà sorta il set di risultati completo, così mentre una determinata pagina sarà sorta, quella sorta complessiva sarà non trasportare attraverso la somma di tutte le pagine per il set di risultati).

Se si pensa che il metodo di cui sopra sembra utile e non sei coccolato per il problema di cui sopra non mi dispiace che fornisce un esempio.

Altri suggerimenti

risolto in un modo molto molto molto più semplice

Ho un ciclo per ogni categoria ho bisogno di visualizzazione, e la query è costruito utilizzando:

<?php query_posts('cat=1&author='.$curauth->ID;); ?>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a wordpress.stackexchange
scroll top