如果用户已登录,则需要脚本不运行

目标:隐藏特定类别,使其不显示在帖子元区域中


下面的代码实现了这一点(在主题的 functions.php 文件中):


function exclude_these_categories($thelist, $separator=' ') {

        //Exclude the following categories

        $exclude = array('Category 1', 'Category 2', 'Category 3', 'Category 4', 'Category 5', 'Category 6');

        $cats = explode($separator, $thelist);

        $newlist = array();

        foreach($cats as $cat) {

            $catname = trim(strip_tags($cat));

            if(!in_array($catname, $exclude))

                $newlist[] = $cat;

        }

        return implode($separator, $newlist);


}

add_filter('the_category','exclude_these_categories', 10, 2);


但是,它会在编辑时隐藏所有类别,而不仅仅是上面提到的特定类别: missing categories screenshot

我需要一个解决方案,这样如果有人登录,上面的代码就不会运行;或添加到代码中,以便在编辑时显示类别。


白猪掌柜的
浏览 99回答 2
2回答

守候你守候我

我认为只有当它不在管理页面上时,你才应该运行过滤器:if(!is_admin()) {        add_filter('the_category','exclude_these_categories', 10, 2); }

qq_花开花谢_0

您可能需要is_admin()检查以确保您不在 wp-admin 中。但是如果你真的只想检查登录用户,那么你可以使用is_user_logged_in()check。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript