如何删除EDIT_POST_LINK的所有实例

时间:2011-07-11 作者:tonyf

在作者模式下,是否有人可以帮助我删除我所有页面中的edit\\u post\\u链接(edit link)。为了不再显示这个编辑链接,我需要注释掉211主题(WordPress v3.2)中的哪些php文件?

我知道你只在作者模式下看到这一点,但我想知道如何完全删除。

谢谢

5 个回复
最合适的回答,由SO网友:kaiser 整理而成

这是edit_post_link() 作用您将发现以下需要注释掉的行:

// from /twentyeleven/content-intro.php
edit_post_link( __( \'Edit\', \'twentyeleven\' ), \'<span class="edit-link">\', \'</span>\' );

SO网友:Hameedullah Khan

一种方法是编辑主题的模板文件,正如您在问题中提到的,您使用的是211,因此您可以按照@kaiser.

我更喜欢的另一种方法是使用过滤器,而不是修改模板文件。filter的优点是它也可以用于其他主题。过滤器的缺点是你会有空的<span></span> html源中的标记,尽管它们在实际页面上不可见。

您可以在函数中放入以下代码。php。

function wpse_remove_edit_post_link( $link ) {
    return \'\';
}
add_filter(\'edit_post_link\', \'wpse_remove_edit_post_link\');
另外,你可以使用过滤器来禁用选择性帖子上的编辑帖子链接。

SO网友:Art Smith

哈米·杜拉(Hameedullah)的回答更为优雅,但并没有排除前后两项。为此,您需要过滤get\\u edit\\u post\\u链接,并返回null。

function wpse_remove_get_edit_post_link( $link ) {
    return null;
}
add_filter(\'get_edit_post_link\', \'wpse_remove_get_edit_post_link\');

SO网友:Yasin Yaqoobi

这是一条单行线。add_filter(\'edit_post_link\', \'__return_false\');
奖励:隐藏管理栏add_filter(\'show_admin_bar\', \'__return_false\');

SO网友:Ahmed El-Atab

对非管理员隐藏编辑帖子链接。

// Hide the Edit Post Link from Non Administrators Start.

function prefix_remove_get_edit_post_link( $link ) {
    if(current_user_can(\'administrator\')) {
        return $link;
    }
    return null;
}

add_filter(\'get_edit_post_link\', \'prefix_remove_get_edit_post_link\');

// Hide the Edit Post Link from Non Administrators End.

结束

相关推荐

在Pages_Links中传递自定义参数

例如,我domain.com/about?project=1 但我已经启用了永久链接,我正在使用thins生成分页paginate_links. 问题是生成的链接是这样的domain.com/about?project=1/page/1 它打破了一切,因为项目被视为1/page/1有一种方法可以domain.com/about/project/1/page/1 在分页链接中?我正在使用get从一个表单提交它来显示项目。