Media uploadのポップアップページで、添付ファイルのリンクをnoneに設定し、Wordpressバージョン3.5で非表示にするにはどうすればよいですか。次のフィルタは、以前のバージョンのWPでは正常に機能しました。
function my_attachment_fields_edit($form_fields,$post){
// Set attachment link to none and hide it.
$html = "<input type='hidden' name='attachments[".$post->ID."][url]' value=''/>";
$form_fields['url']['html'] = $html; //Replace html
$form_fields['url']['label'] = ''; //Remove label
$form_fields['url']['helps'] ='';//Remove help text
return $form_fields;
}
add_filter('attachment_fields_to_edit', 'my_attachment_fields_edit', 10, 2);
これは実際にここで誰かが投稿した素晴らしいフィルターでした。 WP 3.5でこれを達成する方法を誰かが知っていますか?
この小さなプラグインを含めて、アクティブ化してテストしてください。
3.6-alphaのテスト済みバージョンは、サムネイルをクリックしたときにのみ機能します。
<?php
/**
* Plugin Name: Remove Attachment Link-To and set to value 'none'
*/
add_action( 'admin_footer-post-new.php', 'wpse_76214_script' );
add_action( 'admin_footer-post.php', 'wpse_76214_script' );
function wpse_76214_script() {
?>
<script type="text/javascript">
jQuery(document).ready( function($) {
$( 'li.attachment' ).live( 'click', function( event ) {
$( ".link-to > [value='none']").attr( "selected", true ); // selected none in select field
$( ".link-to-custom" ).val( '' ); // clear input field for target of link
$( '.media-sidebar div.setting' ).remove(); // remove link field
});
} );
</script>
<?php
}
// filter a-Tag in data, there was send to edit; fallback
add_filter( 'media_send_to_editor', 'wpse_76214_send_to_editor', 10, 3 );
function wpse_76214_send_to_editor( $html, $id, $attachment ) {
$html = preg_replace( '@\<a([^>]*)>(.*?)\<\/a>@i', '$2', $html );
return $html;
}
汚い方法は、誰かがどこかをクリックして "ATTACHMENT DISPLAY SETTINGS"を含むdivを隠すことをいつでもキャッチすることです。 jQueryがあるとします。
$(window).click(function() {
$('.attachment-display-settings').hide();
});