Как удалить все экземпляры edit_post_link
Кто-нибудь может помочь с удалением edit_post_link (ссылки "Редактировать") из моей темы во время режима автора? Какие файлы PHP в теме Twenty Eleven (WordPress v3.2) нужно закомментировать, чтобы эта ссылка больше не отображалась на всех страницах?
Я понимаю, что эта ссылка видна только в режиме автора, но хотел бы знать, как удалить её полностью.
Спасибо.

Один из способов — редактировать файлы шаблонов вашей темы. Поскольку вы упомянули, что используете Twenty Eleven, вы можете последовать совету @kaiser.
Другой способ, который я предпочитаю вместо изменения файлов шаблона, — это использование фильтра. Преимущество фильтра в том, что он будет работать и с другими темами. Недостаток в том, что в исходном HTML-коде останутся пустые теги <span></span>
, хотя они не будут видны на странице.
Вы можете добавить следующий код в свой functions.php:
function wpse_remove_edit_post_link( $link ) {
return '';
}
add_filter('edit_post_link', 'wpse_remove_edit_post_link');
P.S. Вы также можете использовать фильтр, чтобы отключать ссылку редактирования для выборочных записей.

Или просто используйте add_filter( 'edit_post_link', '__return_false' );
:)

Будет ли add_filter( 'edit_post_link', '__return_null' );
более подходящим, чем false?

Ответ Hameedullah более элегантен, но не удаляет элементы "до" и "после". Чтобы сделать это, нужно фильтровать get_edit_post_link и возвращать null.
function wpse_remove_get_edit_post_link( $link ) {
return null;
}
add_filter('get_edit_post_link', 'wpse_remove_get_edit_post_link');

Это функция edit_post_link()
. Вам нужно закомментировать строки, подобные следующей:
// из файла /twentyeleven/content-intro.php
edit_post_link( __( 'Редактировать', 'twentyeleven' ), '<span class="edit-link">', '</span>' );

Скрытие ссылки на редактирование записи для пользователей без прав администратора.
// Начало скрытия ссылки редактирования записи для не администраторов.
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');
// Конец скрытия ссылки редактирования записи для не администраторов.
