Wordpress трикове 2

От доста време category base във Wordpress ме дразни, но едва наскоро открих ефективен начин за премахването му. Първо пробвах няколко плъгина, но резултатите не бяха особено добри, затова се поразрових из форумите на wordpress и открих няколко практични съвета, които решават досадният проблем.
Единственото негативно нещо е необходимоста от употреба на точно определен тип пермалинк, който обаче е доста подходящ за една добра SEO оптимизация на структурата на перманентните връзки.
Това е структурата, която трябва да имат permalinks:
/%category%/%postname%/
Премахването на category base, става като се отвори файла category-template.php във wp-include. В него трябва да се намери следният стринг (около ред 70):
$catlink = str_replace('%category%', $category_nicename, $catlink);
Точно под него трябва да се сложи следният ред:
$catlink = str_replace('category/', '', $catlink);
Така надписа category от url структурата на вашите връзки изчезва. Но това не е всичко, защото се появява проблем при отварянето на paged страници, включително и на отделните категории, тагове, архиви. За да се фиксне проблема трябва да се отвори файла classes.php, който също се намира във wp-includes и да се намери следният стринг (около ред 288):
if ( isset($error) )
$this->query_vars['error'] = $error;
Точно под него трябва да се добави това:
if (@$this->query_vars["name"] == "page")
{
$tmp_ar = $this->query_vars;
$this->query_vars = array();
$this->query_vars["paged"] = str_replace("/", "", $tmp_ar["page"]);
$this->query_vars["category_name"] = $tmp_ar["category_name"];
}
След това вече няма да имате никакви проблеми и ще сте се отървали от category base, или поне до следващият ъпдейт, когато ще трябва да повторите това оново.
Само %postname% работи перфектно
А иначе %category% може да се смени с какво искаш от сетингс панела.