web-dev-qa-db-fra.com

Changer l'auteur et la fonctionnalité

S'il vous plaît aidez-moi à résoudre ce problème:

Problème 1

AUTANT QUE JE SACHE,

http://exmaple.com/author

mappe sur rien (une erreur404page) et

http://exmaple.com/author/{username}

mappe versposts rédigé par{username}. J'ai besoin de changer ce comportement pour autre chose:

  1. J'ai besoin que http://example.com/author mappe versliste des auteurs
  2. J'ai besoin que http://example.com/author/{username} mappe vers certainsinformations de profil(j'espère que cela pourrait être fait en ajoutant un fichier modèle comme author.php à la racine du thème)

Problème 2

En même temps, je dois ajouter tous les articles avec /blog comme:

http://example.com/blog/this-is-my-first-post

Cela pourrait être fait en changeantPermalinks Structureen /blog/%post_name%, mais cela change aussi l'URL author:

http://example.com/blog/author
http://example.com/blog/author/{username}

lequeln'est pas souhaitédans mon cas.

Aidez-moi, s'il vous plaît:

  1. prependUNIQUEMENT/ posts avec /blog
  2. avoir une liste des auteurs dans http://example.com/author
  3. avoir un profil d'utilisateur pour tous les auteurs dans http://example.com/author/{username}

Merci d'avance

1
Trix

Pour la liste des auteurs, la solution la plus simple consiste à créer une page avec le slug author, puis à créer un modèle page-author.php dans lequel vous ajouterez votre propre code pour répertorier les auteurs.

Toutes les vues dans WordPress sont un article ou une liste d'articles. Aucune notion de liste d'auteurs, ni de liste de termes dans une taxonomie, ces éléments doivent être créés manuellement.

Pour les liens d’auteurs, le correctif est assez simple, vous pouvez définir manuellement la structure qu’ils suivent en omettant la valeur front qui est insérée par défaut:

function wpd_fix_author_structure(){
    global $wp_rewrite;
    $wp_rewrite->author_structure = 'author/%author%';
}
add_action( 'init', 'wpd_fix_author_structure' );

N'oubliez pas de effacer les règles de réécriture après qu'elles aient changé.

2
Milo