我编辑了插件WP用户Frontend(用于从Frontend编辑帖子),为两种不同的帖子类型创建了两个不同的编辑页面。下面是处理edit\\u链接的原始函数。
function wpuf_edit_post_link( $url, $post_id ) {
if ( is_admin() ) {
return $url;
}
$override = wpuf_get_option( \'override_editlink\', \'yes\' );
if ( $override == \'yes\' ) {
$url = \'\';
if ( wpuf_get_option( \'enable_post_edit\' ) == \'yes\' ) {
$edit_page = (int) wpuf_get_option( \'edit_page_id\' );
$url = get_permalink( $edit_page );
$url = wp_nonce_url( $url . \'?pid=\' . $post_id, \'wpuf_edit\' );
}
}
return $url;
}
add_filter( \'get_edit_post_link\', \'wpuf_edit_post_link\', 10, 2 );
如何调用函数中的当前post参数?我用过
get_post
但它不起作用(我想是因为它不在循环中…)。这是我编辑的函数片段。201和203是正确的编辑页面ID:页面内部有一些短代码,可以将它们转换为编辑页面。
$override = wpuf_get_option( \'override_editlink\', \'yes\' );
if ( $override == \'yes\' ) {
$url = \'\';
if ( wpuf_get_option( \'enable_post_edit\' ) == \'yes\' ) {
$post = get_post($post_id);
if ($post->post_type == \'type1\') {
$url = get_permalink( 201 );
$url = wp_nonce_url( $url . \'?pid=\' . $post_id, \'wpuf_edit\' );
}
if ($post->post_type == \'type2\') {
$url = get_permalink( 203 );
$url = wp_nonce_url( $url . \'?pid=\' . $post_id, \'wpuf_edit\' );
}
}
}
这个代码怎么了?