我创建了一个小型 WordPress 插件,可以通过短代码在页面中显示人员列表。
当用户单击列表中的某个名称时,会设置一个 query_var,并且我的插件会捕获带有用户刚刚单击的人员的特定 ID 的 $_GET。到目前为止一切都很好。
我的问题是,现在我想显示一个包含详细信息的页面(针对单击的元素),但我似乎无法编辑到达该页面的内容或帖子,它会将我返回到带有以下内容的页面:人员名单。
我的问题是如何编辑帖子?我尝试添加一个 add_filter('the_content','my_func') 到此,但这不起作用,因为这个钩子(Hook)可能已经通过了。
我可以通过 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;
我做错了什么以及我必须如何编辑/更新内容/帖子?
最佳答案
你必须使用Wordpress的钩子(Hook)来更新内容。这适用于 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' );
关于wordpress - 如何在WordPress插件中动态编辑帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16308327/