【发布时间】:2014-07-13 15:19:29
【问题描述】:
如果我在 wordpress 的文本编辑器中包含唯一的短代码,我正在尝试查找有关如何获取页面 ID 的一些信息。假设我有一个简码,因为[testingshortcode] 正在执行某些功能(显示表单)将其放入 wordpress 的编辑器中。现在我想找到在哪个页面 id 中使用的简码?
有没有办法找到短代码在哪个页面中使用?
任何建议都会很棒:)
【问题讨论】:
如果我在 wordpress 的文本编辑器中包含唯一的短代码,我正在尝试查找有关如何获取页面 ID 的一些信息。假设我有一个简码,因为[testingshortcode] 正在执行某些功能(显示表单)将其放入 wordpress 的编辑器中。现在我想找到在哪个页面 id 中使用的简码?
有没有办法找到短代码在哪个页面中使用?
任何建议都会很棒:)
【问题讨论】:
我不确定我是否正确理解了这个问题,但我会试一试。
我不是 Wordpress 专家,所以我不知道是否存在内置功能,但我立即想到:这很容易通过手动 SQL 查询来完成。
所以我这样设置查询:
<?php
/* global $wpdb; //you may need to enable this */
$results = $wpdb->get_results('SELECT ID FROM '.$table_prefix.'posts WHERE post_content LIKE "%[testingshortcode]%" AND post_parent = 0');
var_dump($results);
?>
根据您将在何处使用它,您可能需要启用全局 $wpdb 变量。
该查询在 Wordpress 数据库上进行简单搜索,并检索所有提及字符串 [testingshortcode] 的帖子。起初我惊讶地发现它返回的 ID 比我预期的要多,但后来我记得 Wordpress 现在保存了修订后的内容,所以我使用 post_parent = 0 语句将其过滤掉了。它现在应该只返回真正的帖子 ID。
有关在Worpress Codex 上使用$wpdb 类的更多信息。
我希望这会有所帮助。
【讨论】: