Riscrittura URL autore
1 risposta
- voti
-
- 2010-12-13
Supponendo chetu stia utilizzandotipi dipostpersonalizzatiper canzoni,libri,ecc:
function add_rewrite_rules($rules) { $newrules['author/([^/]+)/songs/?$'] = 'index.php?post_type=songs&author=$matches[1]'; $newrules['author/([^/]+)/songs/page/?([0-9]{1,})/?$'] = 'index.php?post_type=songs&locations=$matches[1]&paged=$matches[2]'; $rules = $newrules + $rules; return $rules; } function flushRules() { global $wp_rewrite; $wp_rewrite->flush_rules(); } add_filter('rewrite_rules_array', 'add_rewrite_rules'); /* This function should only really be run once per change of rules - comment out */ add_filter('init','flushRules');
Prova le stringhe di query sopra "index.php?post_type=songs & amp; author=username"e assicurati di ottenere l'elenco dipost corretto che stai cercando sultuo sito (potresti dover disabilitarei permalinkpertestarli).p>
Quindipuoi aggiungere le regole allafunzione (prendendonota della regolain pagineper ognitipo dipost).
Lo stofacendoesattamente su un sito live ora,quindi èpossibile - richiede solo unpo 'dipazienzaper ottenere le regole corrette.
Senon stai utilizzandotipi dipostpersonalizzati,puoimodificare le stringhe di query sopra dapost_type=xxx ataxonomy=tagname o qualsiasi cosati servaper ottenere l'elenco desiderato.
Assuming you are using custom post types for songs, books etc:
function add_rewrite_rules($rules) { $newrules['author/([^/]+)/songs/?$'] = 'index.php?post_type=songs&author=$matches[1]'; $newrules['author/([^/]+)/songs/page/?([0-9]{1,})/?$'] = 'index.php?post_type=songs&locations=$matches[1]&paged=$matches[2]'; $rules = $newrules + $rules; return $rules; } function flushRules() { global $wp_rewrite; $wp_rewrite->flush_rules(); } add_filter('rewrite_rules_array', 'add_rewrite_rules'); /* This function should only really be run once per change of rules - comment out */ add_filter('init','flushRules');
Try the query strings above "index.php?post_type=songs&author=username" and make sure you get the correct post listing you are after on your site (you might need to disable permalinks to test them).
Then you can add the rules in to the function (taking note of the paged rule for each post type).
I am doing exactly this on a live site now, so it is possible - just requires a bit of patience to get the rules correct.
If you are not using custom post types you can change the query strings above from post_type=xxx to taxonomy=tagname or whatever you need to get the listing you want.
-
Grazie @ Chris!Ilproblema è chenon hotassonomie opost_types ... Quelle canzoni,film,libri sonoinseritiin unatabellamysql separata (perchéèun sistema "aggiungi aipreferiti"e voglio visualizzare canzoni,film,libripreferitiper ciascunoautore)Thanks @Chris! The problem is i don't have taxonomies or post_types... Those songs, movies, books are inserted into a separate mysql table (because is an "add to favorites" system and I want to display favorite songs, movies, books for each author)
- 0
- 2010-12-13
- Robert
-
@Robert - aggiorna latua domandaper spiegare la struttura di questetabelle - come diavolo dovevamo saperlo originariamente !?@Robert - update your question to explain the structure of these tables - how on earth were we meant to know that originally!?
- 0
- 2010-12-13
- TheDeadMedic
-
@TheDeadMedic: domanda aggiornata!@TheDeadMedic: question updated!
- 0
- 2010-12-13
- Robert
-
Rispostatrovata qui: http://wordpress.stackexchange.com/questions/4243/how-to-set-up-sub-categories-for-author-pagesAnswer found here: http://wordpress.stackexchange.com/questions/4243/how-to-set-up-sub-categories-for-author-pages
- 0
- 2010-12-13
- Robert
Ilpermalinkpredefinitoper l'autore è:
Comepossofare qualcosa di simile?
Se qualcuno visita le canzonipermalink,wp dovrebbe visualizzare le canzoni del rispettivo autore.Se qualcuno visitai libripermalink,wp dovrebbe visualizzarei libri del rispettivo autoree così via!Qualcheidea su comepossofarlo!?
Modifica successiva TabellamySQL:favs