Добавляем миниатюру в столбцы разделов записей/страниц в админке
Добавление этого сниппета в файл functions.php вашей темы WordPress добавит новый столбец с миниатюрами на страницы записей/страниц. В сниппете реализована проверка поддержки миниатюр в теме, чтобы избежать ошибок. Также сниппет определяет изображение по-умолчанию, а также поддерживает и страницы и записи.
![]()
if (function_exists( 'add_theme_support' )){
add_filter('manage_posts_columns', 'posts_columns', 5);
add_action('manage_posts_custom_column', 'posts_custom_columns', 5, 2);
add_filter('manage_pages_columns', 'posts_columns', 5);
add_action('manage_pages_custom_column', 'posts_custom_columns', 5, 2);
}
function posts_columns($defaults){
$defaults['wps_post_thumbs'] = __('Thumbs');
return $defaults;
}
function posts_custom_columns($column_name, $id){
if($column_name === 'wps_post_thumbs'){
echo the_post_thumbnail( array(125,80) );
}
}
Запрещаем доступ для пользователей к определенным шаблонам страниц
Это модификация прекрасного сниппета автора Elliott Richmond, где изменено “include” на “get_template_part”. Создаем новый файл шаблона и вставляем в него следующий код и получаем возможность запретить доступ пользователю к этому шаблону. Не забудьте изменить название шаблона. Также необходимо создать файл шаблона с именем error.php, в котором указать что-то вроде “wp_die(‘У вас недостаточно прав для доступа.’)” вместо загрузки шаблона.
<?php
/* Template Name: Доступ только для авторов */
if ( !current_user_can('author')) {
get_template_part('error');
exit(0);
}
?>
Добавляем HTML в метабокс миниатюры
Добавление этого сниппета в файл functions.php позволит вам добавлять HTML в метабокс миниатюры. Это может быть, например, дополнительная информация для ваших клиентов о том, как пользоваться указанной функцией движка.
add_filter( 'admin_post_thumbnail_html', 'add_featured_image_html');
function add_featured_image_html( $html ) {
return $html .= '<p>Здесь будет какой-то текст, который будет отображаться в метабоксе миниатюры.</p>';
}
Отключаем опцию «Публикация через e-mail»
Добавление этого сниппета в файл functions.php уберет настройки публикации через e-mail в разделе Параметры — Написание.
add_filter( 'enable_post_by_email_configuration', '__return_false' );
И наоборот, если вы хотите вывести эти настройки (а они спрятаны в режиме multisite), то добавьте такую строку:
add_filter( 'enable_post_by_email_configuration', '__return_true' );
Убираем настройки цветовой схемы админки из профиля пользователя
Добавление этого сниппета в файл functions.php уберет настройки цветовой схемы админки из профиля пользователя.
function admin_color_scheme() {
global $_wp_admin_css_colors;
$_wp_admin_css_colors = 0;
}
add_action('admin_head', 'admin_color_scheme');
Выводим аватар автора в записях и страницах
Добавление этого сниппета в файл functions.php в цикл выведет аватар текущего автора.
<?php
echo get_avatar( get_the_author_email(), '60' );
?>
Убираем эффект дрожания формы входа в админку при ошибке
Если вас когда-либо раздражало дрожание формы входа в административную панель Вордпресс, в случае когда вы ввели некорректное имя пользователя или пароль, мы рекомендуем воспользоваться сниппетом ниже, который прежде нужно добавить в файл functions.php темы.
function wps_login_error() {
remove_action('login_head', 'wp_shake_js', 12);
}
add_action('login_head', 'wps_login_error');
Добавляем произвольный класс к the_tags
Добавление этого сниппета в файл functions.php темы добавит произвольный класс к ссылкам, выводимым тегом шаблона the_tags.
function add_class_the_tags($html){
$postid = get_the_ID();
$html = str_replace('<a','<a class="wpsnipp"',$html);
return $html;
}
add_filter('the_tags','add_class_the_tags',10,1);
Добавляем произвольный класс к to wp_get_attachment_link
Добавление этого сниппета в файл functions.php темы добавит произвольный класс к ссылкам, выводимым тегом шаблона wp_get_attachment_link.
function add_class_attachment_link($html){
$postid = get_the_ID();
$html = str_replace('<a','<a class="wpsnipp"',$html);
return $html;
}
add_filter('wp_get_attachment_link','add_class_attachment_link',10,1);
