WordPress как на ладони
Очень Удобный и Быстрый Хостинг для сайтов на WordPress. Пользуюсь сам и вам рекомендую!

Горячая клавиша CTRL + S чтобы «обновить/опубликовать» запись

Часто исправляю, публикую и обновляю статьи. Много произвольных полей. Приходится все правки внести (опуститься в самый низ статьи) и затем подниматься снова вверх, чтобы нажать "Обновить". Это не удобно, особенно, когда надо по 100 статей править. Есть ли сочетание клавиш, которое за это отвечает?

<input name="save" type="submit" class="button button-primary button-large" id="publish" accesskey="p" value="Обновить">

Вот код кнопки. Я так понимаю, accesskey="p" за это и отвечает, но как не нажимай кнопку "p" - ничего путного не получается. Подскажите, пожалуйста, решение.

3
campusboy
9.4 года назад 4750
  • 2
    Kama9616

    Не работает accesskey='p' для input. Этот аттрибут для активации ссылок <a accesskey='p'> с ними он работает хорошо (проверял), подробнее: http://htmlbook.ru/html/a/accesskey.

    В общем, я накидал решение с помощью jQuery. Вставьте этот код в functions.php темы:

    <?php
    
    // сохранение поста (записи) в wordpress при помощи сочетания клавиш ctrl + s
    add_filter('admin_footer', 'post_save_accesskey');
    function post_save_accesskey(){
    	if( get_current_screen()->parent_base != 'edit' ) return;
    
    	?>
    	<script type="text/javascript">
    	jQuery(document).ready(function($){
    
    		$(window).keydown(function(e){
    			// событие ctrl+s - 83 код s
    			if( e.ctrlKey && e.keyCode == 83 ){   
    				e.preventDefault();
    				$('[name="save"]').click();
    			}
    		});
    
    	});</script>
    	<?php
    }

    Заметки:

    Тут селектор [name="save"] относится к кнопке "Сохранить", т.е. если запись еще не опубликована она будет просто сохраняться. Можно изменить селектор на [accesskey="p"], тогда если не опубликована будет публиковаться.

    тестировал только на chrome, для других браузеров возможно нужно будет поменять 83 на другую цифру - это код кнопки "s".

    campusboy 9.4 года назад

    Спасибо, Тимур. Отлично работает! smile Очень признателен. Надеюсь, я тоже так в будущем смогу помогать) чётко и быстро

    kolshix 5 лет назад

    Охринительная!!! функция
    поправил под себя для публикации и загнал mu-plugins

    1 Команда ОПУБЛИКОВАТЬ - Сочетание клавиш CTRL+S

    ...
    $('[name="publish"]').click();
    ...

    еще юзаю часто галереи и там в режиме правки нужно удалять картинку из сервера - по 1-20 картинок, а клавиша DELETE не срабатывает, вот и подправил эту несправедливость.

    Через CTRL+D не работает, так как браузер отлавливает команду по своим горячим клавишам - сделал CTRL+DEL

    2 Команда УДАЛИТЬ КАРТИНКУ ГАЛЕРЕИ ИЗ СЕРВЕРА - Клавиши CTRL+DEL

    <?php
    // удалить картинку галереи из сервера в wordpress при помощи клавиш CTRL+del
    add_filter( 'admin_footer', 'post_save_accesskey' );
    function post_save_accesskey(){
    
    	if( get_current_screen()->parent_base != 'edit' )
    		return;
    
    	?>
    	<script type="text/javascript">
    	jQuery(document).ready(function($){
    
    		$(window).keydown(function(e){
    			// событие del - 46 код del
    			if( e.ctrlKey && e.keyCode == 46 ){   
    				e.preventDefault();
    				$submit = $('[class="button-link delete-attachment"]').click();
    			}
    		});
    
    	});</script>
    	<?php
    }
    
    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация