隐藏帖子-WP隐藏帖子不起作用

时间:2013-12-21 作者:WonderfulWanderings

我经常发布需要隐藏的帖子。它们需要被发布,以便有url的人可以访问它们,但我不希望它们出现在我的主页、我的最近帖子小部件、我的博客页面、我的类别等。我知道我通常可以使用WP Hide Post插件来实现这一点,但不知怎的,这对我的网站不起作用。当我创建一篇新文章并选择WP hide post提供的所有隐藏选项时,该文章仍会显示在我的博客页面(这不是我的主页)。

我在这里查找了一些类似的主题,可以使用代码隐藏帖子,但只能从一个位置隐藏帖子,例如从最近的帖子小部件或从主页或从。。。

我正在寻找一种方法,在几乎所有地方都隐藏它们,而不必在每次发布需要隐藏的帖子时添加几行代码。

如果有人能帮助我,我将不胜感激。WP Hide Post插件对我不起作用,这让我很沮丧:/

谢谢

PS我知道使用WP Hide Post将这些帖子发布为页面来隐藏页面,这是可行的,但它会弄乱我的页面列表。

1 个回复
SO网友:Shazzad

下面是一个隐藏帖子的代码示例。然而,您需要使用一个自定义元来实现这一点。因此,添加一个新的meta和您想要隐藏的帖子。将元键名称用作“hidethis”,并使用值“1”。不要使用引号,只使用文本。

接下来,向主题函数添加代码。php。您可以直接从wp admin->themes->editor页面进行编辑。只需找到文件名(右侧)函数即可。php并添加以下代码,然后点击更新按钮。

add_action( \'pre_get_posts\', \'pre_get_posts_127256\', 9999 );
function pre_get_posts_127256($q){
    if( is_admin() )
        return;

    if( is_singular() )
        return;

    $mq = $q->get(\'meta_query\');
    $nm = array(\'key\' => \'hidethis\', \'compare\' => \'NOT EXISTS\');
    $mq[] = $nm;

    $q->set(\'meta_query\', $mq);
}
这应该是用一个值隐藏后u添加的元键“hidethis”。

结束

相关推荐

QUERY_POSTS结果与wp_QUERY请求结果不同

我有一个多站点Wordpress设置(3.5.1,我不能冒险更新),在切换到正确的博客后,我正在查询一些帖子。我有一个带有以下参数的query\\u posts函数:$posts = query_posts(\'posts_per_page=5&paged=1&post_status=publish&orderby=date&order=desc\'); 通过此帖子查询,query\\u vars变为($GLOBALS[\'wp_query\']->quer