更改固定链接结构隐藏按钮编辑

时间:2021-05-24 作者:Renan Bessa

我在下面创建了一个函数,它可以更改特定类别中帖子的永久链接结构。一切都正常,但帖子中编辑slug的按钮不见了。

打印编辑按钮图像

enter image description here

add_filter( \'post_link\', \'idinheiro_custom_permalink\', 10, 3 );
function idinheiro_custom_permalink( $permalink, $post ) {
    $category = get_the_category($post->ID);
    if (  !empty($category) && $category[0]->slug == "negocios" ) {
        $permalink = trailingslashit( home_url(\'/\'. $category[0]->slug . \'/\' . $post->post_name .\'/\' ) );
    }
    return $permalink;
}

1 个回复
最合适的回答,由SO网友:Sally CJ 整理而成

这个post_link hook 具有第三个参数,名为$leavename:

$leavename
(bool)是否保留帖子名称。

这意味着,如果$leavenametrue, 然后,post名称/slug应该保存在permalink中,因此它需要包含%postname% (或%pagename% 对于page 而不是替换为实际的post slug(或其他内容)。

因为如果该占位符丢失,永久链接将在编辑后屏幕上变为不可编辑,因此“编辑”按钮被禁用。(参见get_sample_permalink_html(), 明确地this part, 该函数是生成post permalink编辑器的函数)

因此,要解决此问题,请定义变量:function idinheiro_custom_permalink( $permalink, $post, $leavename ) 并更改\'/\' . $post->post_name .\'/\' 收件人:

\'/\' . ( $leavename ? \'%postname%\' : $post->post_name ) .\'/\'

相关推荐

Modifying WordPress plugins

关于对WordPress插件进行更改,我有一个非常简单的问题。我为我的问题的简单性道歉,因为我对使用开源代码和插件开发新手非常陌生。我发现了一个插件,它为我正在进行的一个项目提供了一个很好的解决方案。然而,为了更好地满足我的需要,我修改了代码。插件有一个;GPLv2或更高版本“;许可证,基于this 似乎是说对插件的修改很好,只要我注意到我所做的任何更改,并将插件发布在;GPLv2或更高版本“;许可证也是。由于我对插件所做的修改,我希望能够将其作为客户端工作的一部分提供给其他人。然而,我不确定前进的最佳方