我正在尝试编辑媒体管理器,以允许在“链接到”选择字段中选择新选项。
此主干模板当前在媒体模板中定义。php
<label class="setting">
<span><?php _e(\'Link To\'); ?></span>
<select class="link-to"
data-setting="link"
<# if ( data.userSettings ) { #>
data-user-setting="urlbutton"
<# } #>>
<option value="post" <# if ( ! wp.media.galleryDefaults.link || \'post\' == wp.media.galleryDefaults.link ) {
#>selected="selected"<# }
#>>
<?php esc_attr_e(\'Attachment Page\'); ?>
</option>
<option value="file" <# if ( \'file\' == wp.media.galleryDefaults.link ) { #>selected="selected"<# } #>>
<?php esc_attr_e(\'Media File\'); ?>
</option>
<option value="none" <# if ( \'none\' == wp.media.galleryDefaults.link ) { #>selected="selected"<# } #>>
<?php esc_attr_e(\'None\'); ?>
</option>
</select>
</label>
我可以将此模板复制到我的插件中,进行更改并扩展
media.view.Settings.Gallery
添加我的新功能,但这可能会导致与其他也想修改media manager此部分的插件发生潜在冲突。
media.view.Settings.Gallery = media.view.Settings.Gallery.extend({
template: media.template(\'caffeine-gallery-settings\'),
另一种选择是,我通过jQuery/similar向select菜单添加新选项。该应用程序已经依赖JavaScript工作,因此体验不会降低。但这并不是做出这种改变的正确方式。这似乎违背了脊梁和文字出版社的精神。
我的理想是在主干模板中有WordPress过滤器(因为它毕竟只是一个PHP文件,所以是可行的),可以将新选项添加到这个选择菜单中。
在我的推理之外,这些选项中哪一个是最好的?