2010-09-12 27 views
2

是否可以知道在wordpress URL中查询的第一个类别是什么?Wordpress在URL中获取查询类别的值

例子:

http://www.mywebsite.com/category/mycat/mysubcat/

我的类别层次结构是一样的东西

Parent Cat 1 
Parent Cat 2 
Parent Cat 3 
    Subcat 1 
    Subcat 2 
    Subcat 3 
Parent Cat 4 
    Subcat 1 
    Subcat 2 
    Subcat 3 

我想要做的是在archive.php呼应 “mycat” 的值,做条件类似于:

if($ value ==“mycat”){ ... } 其他{...}

为什么它有点复杂?因为每个帖子都属于,每个父母至少有1个子猫加上没有孩子的父类别的1个子猫。

我需要类似于$ cat = get_query_var('cat'); (在这种情况下$ cat返回mysubcat)

任何想法?

非常感谢!

+0

如果没有把握这是你正在寻找的,但你可以尝试使用get_category_by_path()它会给你第一个类别给定的URL。 http://codex.wordpress.org/Function_Reference/get_category_by_path – rexposadas 2010-09-13 16:18:46

回答

-1

完成此操作的最简单方法是:

$uri = $_SERVER['REQUEST_URI']; 
$elms = explode('/', $uri) ; 
$firstcat = $elms[2] ; 

if($firstcat == "products") { 

// We show products grid 

} 

elseif($firstcat == "accesories") { 

// We Show accesories grid 

} 

else { 

// Whatever! 

} 
+0

使用'explode()'并获取第三个数组的值是不可靠的,特别是当安装可能位于子目录如http://www.mywebsite .com/blog/category/mycat/mysubcat /'或'http:// www.mywebsite.com/eu/blog/category/mycat/mysubcat /' – 2015-11-20 03:41:27

相关问题