Как установить значения по умолчанию для wpLink ()

9

В WP 3.2 WordPress, возможно, имеет новую функцию для добавления Link-Quicktags в редактор. Но я нашел функцию для установки значений по умолчанию для кнопки ссылки:

Взгляните на строку wplink.js 278 .

    setDefaultValues : function() {
        // Set URL and description to defaults.
        // Leave the new tab setting as-is.
        inputs.url.val( 'http://' );
        inputs.title.val( '' );

        // Update save prompt.
        inputs.submit.val( wpLinkL10n.save );
    },

Как можно установить значения для пользовательского значения?

Это возможно, и вы можете мне помочь?

Спасибо за ответ от эксперта JavaScript.

bueltge
источник

Ответы:

4

Также небольшой пример для изменения URL-адреса в кнопке ссылки, чтобы использовать URL-адрес из установленного блога. Использовать print JS в нижнем колонтитуле, а не включать из файла js через wp_enqueue_script()- для более быстрой разработки, особенно для этого небольшого требования, но не так стандартно и нормально, как в примере из другого ответа.

введите описание изображения здесь

введите описание изображения здесь

<?php
/**
 * Plugin Name: Change URL in Link Popup
 * Plugin URI:  http://bueltge.de/
 * Description: Adds a domain link button to the post editing screen.
 * Version:     0.0.1
 * Author:      Frank B&uuml;ltge
 */

if ( ! function_exists( 'fb_add_quicktag_button' ) ) {

    function fb_add_quicktag_button() {
        ?>
        <script type="text/javascript">
            // change link on Link popup in TinyMCE and quicktag popup
            ( function( $ ) {

                if ( typeof wpLink == 'undefined' )
                    return;

                wpLink.setDefaultValues = function () { 
                    $('#url-field').val('<?php echo home_url( '/' ); ?>');
                };
            } )( jQuery );
        </script>
        <?php
    }
    add_action( 'admin_footer-post-new.php', 'fb_add_quicktag_button', 9999 );
    add_action( 'admin_footer-post.php',     'fb_add_quicktag_button', 9999 );

}
bueltge
источник
@ B & lumge; ltge +1;)
кайзер
1
@kaiser: +1 за прочтение моих материалов в глубокой жизни
2012 года
2

Поместите следующее в свой functions.php; лучше это пользовательский плагин.

add_action( 'admin_print_scripts-post.php',     'wpse22643_overwrite_wplinks' );
add_action( 'admin_print_scripts-post-new.php', 'wpse22643_overwrite_wplinks' );
/**
 * enqueue script
 */
function wpse22643_overwrite_wplinks( $hook ) {

    // register is important, that other plugins will change or deactivate this
    wp_register_script(
        'overwrite-wplinks', 
        get_stylesheet_directory_uri() . '/js/overwrite-wplinks.js',
        array( 'jquery' ),
        '',
        TRUE
    );
    wp_enqueue_script( 'overwrite-wplinks' );
}

Проверьте путь к файлу js, который вы хотите включить выше. Затем поместите следующий код в вышеупомянутый файл js.

( function( $ ) {

    if ( typeof wpLink == 'undefined' )
        return;

    wpLink.setDefaultValues = function () { 
        $('#url-field').val('http://example.com');
        $('#link-title-field').val('This works :)');
        $('#wp-link-submit').val( 'Use this link' );
    };
} )( jQuery );

Теперь вы можете изменить значения по умолчанию.

Джошуа Абеназер
источник
Спасибо за Ваш ответ. Но это перезапись строк, верно? Я ищу замену формы по умолчанию. Но пока это решение, и я буду улучшать только перевод.
Bueltge
2
Это так же, как setDefaultValues ​​устанавливает значения по умолчанию.
Джошуа Абеназер
1
Я изменил ваше решение, только для кодекса и чтобы другие люди использовали пример соответствия кодексу.
Bueltge