【问题标题】:Get the Page/Post ID of included Shortcode in WordPress获取 WordPress 中包含的简码的页面/帖子 ID
【发布时间】:2014-07-13 15:19:29
【问题描述】:

如果我在 wordpress 的文本编辑器中包含唯一的短代码,我正在尝试查找有关如何获取页面 ID 的一些信息。假设我有一个简码,因为[testingshortcode] 正在执行某些功能(显示表单)将其放入 wordpress 的编辑器中。现在我想找到在哪个页面 id 中使用的简码?

有没有办法找到短代码在哪个页面中使用?

任何建议都会很棒:)

【问题讨论】:

    标签: php wordpress shortcode


    【解决方案1】:

    我不确定我是否正确理解了这个问题,但我会试一试。

    我不是 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 类的更多信息。

    我希望这会有所帮助。

    【讨论】:

    • +1 感谢您的精彩回复将测试并接受您的回答:)
    • 如果您对代码有任何疑问,请回复我。如果需要,我可以解释更多,但我相信这很简单。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多