预览存档中的帖子/自定义帖子类型

时间:2011-11-06 作者:Jukov

我的网站上有一些自定义的帖子类型。其中之一是首页滑块。我添加了一些文本、图像、链接,一旦发布,CPT就会以幻灯片的形式出现,我是一个快乐的露营者。问题是什么时候我需要在幻灯片直播之前预览它。我可以通过post preview按钮预览特定的CPT帖子,但很明显,我看到的是实际的幻灯片,而不是幻灯片在滑块、图库或存档中的外观。

我正在寻找一种在存档中预览草稿的解决方案。任何帮助都将不胜感激。

1 个回复
最合适的回答,由SO网友:chrisguitarguy 整理而成

这个get_posts 方法WP_Query 是什么样的重物才能让柱子发挥出来。然而,在它做任何事情之前,有一个钩子叫做pre_get_posts 你可以钩住它。挂钩函数将接收到当前查询对象的引用(指针)。因此,您可以将查询变量更改为您想要的任何值。

所以

<?php
add_action( \'pre_get_posts\', \'wpse33020_pre_get_posts\' );
function wpse33020_pre_get_posts( $query_obj )
{
    // get out of here if this is the admin area
    if( is_admin() ) return;

    // if this isn\'t an admin, bail
    if( ! current_user_can( \'manage_options\' ) ) return;

    // if this isn\'t your slide post type, bail
    if( ! isset( $query_obj->query_vars[\'post_type\'] ) || \'slider\' != $query_obj->query_vars[\'post_type\'] ) return;

    // change our query object to include any post status
    $query_obj->query_vars[\'post_status\'] = \'any\';
}
您可能需要更改post_type 从…起slider 到您所指定的任何滑块CPT。

作为插件:https://gist.github.com/1343219

结束

相关推荐

在SAVE_POST之后使用INSERT_POST_DATA和在POST_TERVATION DRAFT_TO_Schedule之后使用INSERT_POST的事件日历

好吧,我正在为我的网站开发一个活动日历,这是一项可怕的任务,我有点卡住了。我对任何想法都持开放态度,但以下是我正在做的和我想做的。我假设我的主要问题是挂钩和过滤器的顺序,因为我觉得我已经很好地掌握了我想要做什么。此外,我坚持使用wordpress挂钩和过滤器,而不是直接操作mysql数据库。缺点是。。。保存第一个自定义字段,然后将当前post\\u日期更改为该自定义字段,并将post\\u状态更改为future,无论何时将帖子保存为草稿或提交以供审阅</获取第二个自定义字段,插入一篇新文章,该自定义