Пачка полезных сниппетов для блога. Часть 3

Автоматическое перенаправление при единственном результате поиска

Иногда, при использовании поиска на блоге WordPress, вы в результатах выдачи получаете только один результат. В зависимости от того, как организован ваш сайт, это должен быть результат, который пользователь рассчитывал найти. Нмже сниппет для того, чтобы перенаправлять пользователей сразу к записи, если в результатах поиска будет только один результат.

Открываем файл functions.php темы и вставляем туда следующий код:

add_action('template_redirect', 'one_match_redirect');
function one_match_redirect() {
    if (is_search()) {
        global $wp_query;
        if ($wp_query->post_count == 1) {
            wp_redirect( get_permalink( $wp_query->posts['0']->ID ) );
        }
    }
}

Однако стоит учесть, что некоторых пользователей такое поведение может сбить с толку.

Как заставить ваш блог освободиться от фреймов

Из заголовка понятно, что будет делать сниппет: он вынудит блог использовать на страницах контент только с вашего домена, а не например с Google adsense..

Ничего сложного, просто вставляем код в functions.php, сохраняем — и всё готово!

// Разрушаем фреймы в  WordPress
function break_out_of_frames() {
	if (!is_preview()) {
		echo "\n<script type=\"text/javascript\">";
		echo "\n<!--";
		echo "\nif (parent.frames.length > 0) { parent.location.href = location.href; }";
		echo "\n-->";
		echo "\n</script>\n\n";
	}
}
add_action('wp_head', 'break_out_of_frames');

Как создать каталог в папке uploads

При разработке плагина или темы может оказаться полезным программно создать директорию в папке wp-content/uploads (например, для резервных копий БД). Вот полезный кусочек кода для этого.

Просто вставляем код в functions.php (или в файл плагина, если вы разрабатываете оный):

function myplugin_activate() {
    
    $upload = wp_upload_dir();
    $upload_dir = $upload['basedir'];
    $upload_dir = $upload_dir . '/mypluginfiles';
    if (! is_dir($upload_dir)) {
       mkdir( $upload_dir, 0700 );
    }
}
 
register_activation_hook( __FILE__, 'myplugin_activate' );

Добавляем поддержку загрузки файлов изображений SVG в ваш блог на WordPress

По-умолчанию, загрузчик WordPress не поддерживает загрузку формата SVG. В виду того, что формат становится довольно популярным в последнее время, вот простой сниппет для поддержки загрузки файлов изображений SVG в ваш блог на WordPress.

Вставляем код в functions.php темы. После сохранения — функция сработает.

add_filter('upload_mimes', 'my_upload_mimes');
 
function my_upload_mimes($mimes = array()) {
    $mimes['svg'] = 'image/svg+xml';
    return $mimes;
}
VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)

Об авторе ADv

Занимаюсь разработкой сайтов и магазинов на WordPress. Оказываю платные помощь и консультации. Skype: advokat_b
Scroll To Top