显示所有帖子插入编辑链接

时间:2012-10-17 作者:Macgyver

当我在tinyMCE富编辑器中单击插入/编辑一篇文章的链接时,然后单击“或链接到现有内容”,它只显示实时发布的文章。有没有一种方法可以让搜索到的列表同时包含未来和草稿帖子?我需要在不修改任何核心文件的情况下执行此操作,是否可以使用挂钩来修改所调用的查询?

1 个回复
SO网友:s_ha_dum

看看这是否行得通:

首先,Ajax搜索的回调(wp_link_query 中的方法wp-includes/class-wp-editor.php) 抑制常规过滤器。对于这个特定的查询,我们必须重新打开它们。

function undo_suppress($qry) {
  global $_POST;
  if (isset($_POST[\'action\']) && \'wp-link-ajax\' == $_POST[\'action\']) {
    $qry->set(\'suppress_filters\',false);
  }
}
add_action(\'pre_get_posts\',\'undo_suppress\');
现在我们可以使用posts_where 筛选以启用对“未来”帖子的搜索。

function search_future_editor_links($where) {
  global $_POST;
  if (isset($_POST[\'action\']) && \'wp-link-ajax\' == $_POST[\'action\']) {
    $where = \' AND wp_posts.post_type IN ("post","page","attachment") AND wp_posts.post_status IN ("publish","future") \';
  }
  return $where;
}
add_filter(\'posts_where\',\'search_future_editor_links\');
你可以在最后添加“草稿”IN 如果你想搜索这些。

结束

相关推荐

与jQuery(或其插件)的“冲突”?

我一直在使用localhost,一切看起来都很好,但当我在线上传我的Wordpress主题时,所有的jQuery插件函数都没有定义!一个有效的解决方案(我还没有进行过很多测试,所以我仍然不知道它是否能长期工作)是从插件的主网站或github页面导入javascript文件。我真的不喜欢这种“解决方案”另一个是解决方案here 但我也没有对此进行过很多测试。我在这里的问题是,我在另一个主题中使用了jQuery,所有内容都使用$, 但在我的新主题中,它与$ 所以我必须使用$j 相反只是我很习惯用$.有人能解释