ギャラリーを挿入すると、次のショートコードが追加されます。
[gallery columns="6" ids="18,150,146,23,147,17,21,20,22"]
ショートコードが追加されるたびに、自動的に最後の属性としてlink = "file"を追加したいと思います。そのようです:
[gallery columns="6" ids="18,150,146,23,147,17,21,20,22" link="file"]
ショートコードハンドラをハイジャックして、属性を任意の値に設定できます。次に、このショートコードのネイティブコールバックを呼び出します。
add_shortcode( 'gallery', 'file_gallery_shortcode' );
function file_gallery_shortcode( $atts )
{
$atts['link'] = 'file';
return gallery_shortcode( $atts );
}
Mark Jaquith によると、WordPressのshortcode_atts_{$shortcode}
に新しい3.6
フィルタがあります。
shortcode_atts_gallery
フィルタを使用して、link='file'
属性を強制することができます。
add_filter('shortcode_atts_gallery','overwrite_gallery_atts_wpse_95965',10,3);
function overwrite_gallery_atts_wpse_95965($out, $pairs, $atts){
// force the link='file' gallery shortcode attribute:
$out['link']='file';
return $out;
}
3.6
にアップグレードしたとき。
Core-Trac-Trunk の/wp-includes/shortcodes.php
でチェックアウトできます。
http://core.trac.wordpress.org/browser/trunk/wp-includes/shortcodes.php#L316