1

我创建了一个小型 wordpress 插件,它通过简码在页面中显示人员列表。

当用户单击列表中的其中一个名称时,会设置一个 query_var,并且我的插件会捕获具有用户刚刚单击的人的特定 ID 的 $_GET。到目前为止一切都很好。

我的问题是,现在我想显示一个包含详细信息的页面(对于单击的元素),但我似乎无法编辑进入该页面的内容或帖子,它会将我返回到包含人员列表的页面.

我的问题是如何编辑帖子?我试过添加一个 add_filter('the_content','my_func') ,但这不起作用,因为这个钩子可能已经通过了。

我可以通过 get_content() 或 get_post() 直接访问帖子,但我似乎无法让页面填充新数据。

换句话说......这似乎不起作用

$fid = $_GET['fid'];
global $wpdb;
$sql = "select * from fighters where fighter_id = {$fid} limit 1";
$fighter = $wpdb->get_row($sql);

$html = $this->_getFighterPageLayout($fighter);

$post = get_post();
$post->post_content = $html;
$post->title = 'test';
$post->private = false;
// or even just global $content = $html;

我做错了什么,我有什么方法可以编辑/更新内容/帖子?

4

1 回答 1

3

您必须使用 Wordpress 的钩子来更新内容。这适用于add_filter功能

尝试这样的事情,它应该工作

function mytheme_content_filter( $content ) {
     // Do stuff to $content, which contains the_content()
     // Then return it
     return $content;
}
add_filter( 'the_content', 'mytheme_content_filter' );
于 2013-04-30T20:34:02.937 回答