Как изменить префикс author для авторов сайта?
По умолчанию WordPress дает изменить префиксы только для рубрик и меток сайта. Чтобы изменить префикс для авторов сайта (по умолчанию используется префикс author) вам необходимо добавить в файл functions.php вашей темы следующий код:
//смена префикса для авторов start function wph_author_base() { global $wp_rewrite; $author_slug = 'profile'; $wp_rewrite->author_base = $author_slug; } add_action('init', 'wph_author_base'); //смена префикса для авторов end |
Где "profile" это новый префикс для авторов. Так же после добавления этого кода вам необходимо зайти в "Настройки\Постоянные ссылки" и нажать кнопку "Сохранить изменения" (ничего менять в настройках не требуется) - только после этого новый префикс для авторов начнет работать на вашем сайте.
Как удалить ширину и высоту у вставляемых медиафайлов?
Если вы не хотите, чтобы редактор WordPress автоматически добавлял размеры (width и height) вставляемого в запись медиафайла, то добавьте в файл functions.php вашей темы следующий код:
function wph_remove_attributes($html) { $html = preg_replace('/(width|height)=\"\d*\"\s/', "", $html); return $html; } add_filter('post_thumbnail_html', 'wph_remove_attributes', 10); add_filter('image_send_to_editor', 'wph_remove_attributes', 10); |
Это может быть необходимо в некоторых адаптивных темах под WordPress.
Как запретить пользователям входить в админку?
Если по каким-то причинам вы не хотите, чтобы пользователи сайта могли входить в админку (любые ссылки в wp-admin), то сделать это очень просто. Достаточно лишь добавить в файл functions.php вашей темы следующий код:
//запрет доступа к админке start function wph_noadmin() { if (is_admin() && !current_user_can('administrator')) { wp_redirect(home_url()); exit; } } add_action('init', 'wph_noadmin'); //запрет доступа к админке end |
И это все. В админку вашего сайта зайти смогут только администраторы, а все остальные пользователи при попытке открыть любую ссылку в админке будут перенаправлены на главную страницу вашего сайта. Не забудьте только убрать верхнюю панель WordPress для пользователей, так как в ней содержатся ссылки на админку (как минимум ссылка на профиль пользователя и ссылка на консоль).
Как добавить nofollow к ссылкам на рубрики?
Если вы хотите закрыть от индексирования ссылки на ваши рубрики, то вы можете просто прописать необходимый запрет в файле robots.txt. Однако, хотя поисковики не включат страницы рубрик в поисковый индекс, они все равно передадут этим страницам определенный вес (например, Google передаст таким страницам PR, даже не добавляя их в индекс). Чтобы этого избежать, вам необходимо добавить ссылкам на рубрики атрибут rel="nofollow". Сделать это можно с помощью вот такого кода в файле functions.php вашей темы:
//добавление nofollow для ссылок на рубрики start function wph_nofollow_cats($text) { $text = stripslashes($text); $text = preg_replace_callback('|<a (.+?)>|i', 'wp_rel_nofollow_callback', $text); return $text; } function wph_nofollow_cat($text) { $text = str_replace('rel="category tag"', "", $text); $text = wph_nofollow_cats($text); return $text; } add_filter('wp_list_categories', 'wph_nofollow_cats'); add_filter('the_category', 'wph_nofollow_cat'); //добавление nofollow для ссылок на рубрики end |
Атрибут nofollow будет добавлен ссылкам на рубрики, выводимым в записях и ссылкам на рубрики в виджете "Рубрики". Если для вывода рубрик вы используете облако меток, то воспользуйтесь дополнительно кодом из этой статьи.
Как изменить имена ролей пользователей?
В WordPress каждый пользователь имеет свою собственную роль - от подписчика до администратора. С помощью небольшого кода можно изменить стандартные имена этих ролей, без изменения их функциональных возможностей (то есть меняются только имена ролей и ничего больше). Для этого вам необходимо добавить в файл functions.php вашей темы следующий код:
Как убрать поле сайт в форме комментирования?
В целях защиты от спама можно удалить поле "Сайт" из формы добавления комментария. Тем самым количество ручного спама снизится на порядок. Для этого вам необходимо добавить в файл functions.php вашей темы следующий код:
Данный код удалит поле "Сайт" в форме добавления комментария. Однако, уже существующие комментарии будут выводиться с ссылкой на автора комментария (если он указал свой сайт). Чтобы удалить ссылки на сайт из уже добавленных комментариев вы должны использовать такой код: