wordpress获取当前页面类型的代码片段

原创 野人  2023-07-09 22:49  阅读 9 次

最近在写个屏蔽插件,基本已经竣工了,其中就遇到个问题,就是我需要获取到当前页面的类型,比如分类页面,标签页,文章页,主页...等等,但是我发现wordpress没有内置的方法,于是只好手动撸了一个,代码如下:

/**
 * 获取页面类型
 * @return string 获取不到返回notfound,否则返回实际页面类型
 */
function yr_get_page_type()
{
    global $wp_query;
    $loop = 'notfound';
    if ($wp_query->is_page) {
        $loop = is_front_page() ? 'front' : 'page';
    } else if ($wp_query->is_home) {
        $loop = 'home';
    } else if ($wp_query->is_single) {
        $loop = ($wp_query->is_attachment) ? 'attachment' : 'single';
    } else if ($wp_query->is_category) {
        $loop = 'category';
    } else if ($wp_query->is_tag) {
        $loop = 'tag';
    } else if ($wp_query->is_tax) {
        $loop = 'tax';
    } else if ($wp_query->is_archive) {
        if ($wp_query->is_day) {
            $loop = 'day';
        } elseif ($wp_query->is_month) {
            $loop = 'month';
        } elseif ($wp_query->is_year) {
            $loop = 'year';
        } elseif ($wp_query->is_author) {
            $loop = 'author';
        } else {
            $loop = 'archive';
        }
    } else if ($wp_query->is_search) {
        $loop = 'search';
    } else if ($wp_query->is_404) {
        $loop = 'notfound';
    }
    return $loop;
}

本文地址:https://www.yerenwz.com/20297.html
版权声明:本文为原创文章,版权归 野人 所有,欢迎分享本文,转载请保留出处!
NEXT:已经是最新一篇了

发表评论