wordpress插件:在插件中查询post-ID?

时间:2011-02-15 16:33:09

标签: php wordpress-plugin wordpress

嘿伙计们, 也许你们中的一些人有编写wordpress插件的经验。我有一个相当简单的问题,但我在网上找不到任何东西。

<?php
/*
Plugin Name: test
*/

function test($content) {

    echo $post_id;
    return $content;
}

add_filter('the_content', 'test');  
?>

我有一个简单的插件,应该回显其内容中每个帖子的唯一ID。 因此,在我的首页上有10个帖子,每个帖子应该有它的ID回显。

任何想法如何实现?谢谢!

3 个答案:

答案 0 :(得分:2)

我的猜测是 使用global关键字访问功能

中的帖子ID

而且我的猜测是返回和回声都不能在函数中一起工作

function test($content) {
        global $post;
        return $post->ID.'<br>'.$content;
    }

答案 1 :(得分:1)

你正在混合回声和回归 - 这不起作用。但是,试试:

function test($content) 
{
    return "id: ".$post_id."<br/>".$content;
}

另外,请确保使用小写ID,因为它区分大小写

http://codex.wordpress.org/Function_Reference/get_the_ID可能也很有用

答案 2 :(得分:0)

滤镜应该返回,而不是回声。

function test($content) {
    global $post;
    return 'id: ' . $post->ID . '<br />' . $content;
}

为了查看post对象属性,你必须将$post带入函数的范围,这就是这一行的作用..

global $post;

然后允许引用对象的ID,例如

$post->ID;

请参阅此处以获取有关理解操作和过滤器的帮助 http://codex.wordpress.org/Plugin_API

示例过滤器。
http://codex.wordpress.org/Plugin_API#Example