web-dev-qa-db-fra.com

Wordpress Media Manager 3.5 - lien par défaut vers

Media Manager encore une fois. Cette fois, je recherche un simple hack/hook/filter pour changer les "paramètres d'affichage des pièces jointes" par défaut dans le gestionnaire de média. L'option "Lien vers" est définie par défaut sur "Fichier multimédia" et je souhaite le forcer pour tous les utilisateurs à être défini par défaut sur "aucun".

Media Manager Screen

S'il n'y a aucun moyen de le faire avec hook/filter (média-template.php, lignes 282 à 306), existe-t-il un moyen de joindre un fichier jQuery à Media Manager et de l'utiliser pour forcer l'option de changement une fois Media Manager chargé?

7
Marcin Bobowski

Vous pouvez faire ce que vous voulez en remplaçant la vue Backbone appropriée, responsable du rendu des paramètres d'affichage des pièces jointes.

plugin.php

add_action( 'load-post.php', 'wpse8170_media_popup_init' );
add_action( 'load-post-new.php', 'wpse8170_media_popup_init' );
function wpse8170_media_popup_init() {
    wp_enqueue_script( 'wpse8170-media-manager', plugins_url( '/js/media.js', __FILE__ ), array( 'media-editor' ) );
}

media.js

(function() {
    var _AttachmentDisplay = wp.media.view.Settings.AttachmentDisplay;
    wp.media.view.Settings.AttachmentDisplay = _AttachmentDisplay.extend({
        render: function() {
            _AttachmentDisplay.prototype.render.apply(this, arguments);
            this.$el.find('select.link-to').val('none');
            this.model.set('link', 'none');
            this.updateLinkTo();
        }
    });
})();
4
Eugene Manuilov

Je sais que c’est une vieille question, mais je pense que cette réponse est plus adaptée maintenant, car WordPress vous permet maintenant de vous y intéresser.

Les propriétés par défaut de la taille, de l'alignement et du lien de l'image pour insérer une image sont définies via les options image_default_size, image_default_link_type et image_default_align, respectivement. Vous pouvez changer cette situation de plusieurs manières:

  • Dans /wp-admin/options.php
  • Directement dans la table d'options de la base de données
  • À travers update_option( 'default_image_link_type', 'none' )
  • En vous connectant au filtre pre_option_[option]

Vous pouvez vous connecter au filtre pre_option_[option] comme ceci:

function wpse151868_image_default_link_type( $value ) {
    return 'none';
}

add_filter( 'pre_option_image_default_link_type', 'wpse151868_image_default_link_type' );
1
engelen