好吧,在把问题缩小到函数之后get_post_permalink()
被调用的wp-admin/includes/class-wp-press-this.php
在第181行,由于某种原因,当我使用我的第三方主题时,返回的是Querystring而不是Permalink,我实现了一个不理想的解决方案,但它是有效的!
我在第181行之后添加了以下代码:
if ( \'publish\' === get_post_status( $post_id ) ) {
$redirect = get_post_permalink( $post_id ); // at this point the function returned a querystring
/**/
/*START - Attempted fix for not redirecting to Permalinks with 3rd Party Theme*/
/**/
$post = get_post($post_id);
$slug = $post->post_name;
$post_link = $redirect;
$post_link = str_replace("%$post->post_type%", $slug, $post_link);
$post_link = home_url( user_trailingslashit($post_link) );
$redirect = $post_link;
/**/
/*END - Attempted fix for not redirecting to Permalinks with 3rd Party Theme*/
/**/
} elseif {...}
因此,我基本上从get\\u post\\u permalink()中提取了部分代码,并手动将其添加到此处,以便在最初调用
$redirect = get_post_permalink( $post_id );
.
再一次,这远非理想!它确实有效,但它只是解决了症状,而不是根本原因。
现在就可以了,我将等待主题开发人员通过主题更新提供更持久的解决方案!
一旦发生这种情况,我将更新这篇文章,主题开发人员将从这个问题的根本原因开始。