Wie werden die Standardeinstellungen für wpLink () festgelegt?

9

Mit WP 3.2 hat WordPress möglicherweise eine neue Funktion, um dem Editor Link-Quicktags hinzuzufügen. Aber ich habe eine Funktion gefunden, um Standardeinstellungen für die Link-Schaltfläche festzulegen:

Schauen Sie sich die Zeile 278 von wplink.js an .

    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 );
    },

Wie ist es möglich, die Werte für einen benutzerdefinierten Wert festzulegen?

Ist das möglich und kannst du mir helfen?

Vielen Dank für eine Antwort von einem JavaScript-Experten.

bueltge
quelle

Antworten:

4

Auch ein kleines Beispiel für das Ändern der URL in der Link-Schaltfläche, um die URL aus dem installierten Blog zu verwenden. Verwenden Sie print JS in der Fußzeile, kein Include aus js-Datei über wp_enqueue_script()- ist schneller vor der Entwicklung, speziell für diese kleine Anforderung, aber nicht so auf Standard und Fein, wie das Beispiel aus der anderen Antwort.

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

<?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
quelle
@ B & uuml; ltge +1;)
Kaiser
1
@kaiser: +1 für meine Sachen in der Tiefe lesen
3.
2

Fügen Sie Folgendes in Ihr ein functions.php; Besser ist ein benutzerdefiniertes Plugin.

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' );
}

Überprüfen Sie den Pfad zu der oben enthaltenen js-Datei. Fügen Sie dann den folgenden Code in die oben genannte js-Datei ein.

( 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 );

Sie können die Standardwerte jetzt ändern.

Joshua Abenazer
quelle
Danke für deine Antwort. Aber das ist ein Überschreiben der Saiten, oder? Ich suche nach einem Ersatzformular für die Standardwerte. Aber im Moment ist es eine Lösung und ich werde nur für die Übersetzung verbessern.
Bueltge
2
Genauso setzt setDefaultValues ​​die Standardeinstellungen.
Joshua Abenazer
1
Ich habe Ihre Lösung geändert, nur für Codex und dass andere Leute ein Codex-konformes Beispiel verwenden.
Bueltge