更改添加到POST中的WordPress快捷代码

时间:2014-03-30 作者:Chaos67731

问题:我使用的插件可以将wordpress图库变成一个很酷的幻灯片。

然而,每次我制作一个图库时,Wordpress都会将此代码添加到帖子中。

[画廊ID=“334332”]

我需要这样-

[wp幻灯片包括=“334332”]

可能会有帮助:我想这就是控制输出的文件?

http://core.trac.wordpress.org/browser/tags/3.0.1/wp-includes/media.php#L745

1 个回复
SO网友:s_ha_dum

@洋红的解决方案是简单的解决方案,应该能够充分发挥作用。但是,它确实运行rather complicated shortcode regex 两次,再加上do_shortcode() 呼叫两者都应该是可以避免的。

你没有说出你正在使用的插件的名字,搜索揭示了许多我没有时间去挖掘的可能性,所以这里有一个外线和概念验证代码。

其思想是通过直接调用插件的短代码处理函数来避免第二个复杂的短代码序列。

// The callback for the wp-slideshow shortcode
// I don\'t know the real function name
function plugin_gallery_shortcode( $atts, $content = null ) {
  $atts = shortcode_atts( 
    array( \'include\' => \'\' ), 
    $atts 
  );
  var_dump($atts);
}
add_shortcode(\'wp-slideshow\',\'plugin_gallery_shortcode\');

// This is a callback we are using to hijack the Core gallery
function convert_gallery_shortcode( $atts, $content = null ) {
  $atts = shortcode_atts( 
    array( \'ids\' => \'\' ), 
    $atts 
  );
  $atts[\'include\'] = $atts[\'ids\'];
  unset($atts[\'ids\']);
  plugin_gallery_shortcode($atts,$content);
}
// only hijack if the plugin gallery callback exists
if (function_exists(\'plugin_gallery_shortcode\')) {
  add_shortcode(\'gallery\',\'convert_gallery_shortcode\');
}

结束

相关推荐

Dynamic Gallery

我正在建立一个单页网站,这意味着所有链接都需要动态调用帖子内容。我发现this tutorial 在StackOverflow的一些人的帮助下,我成功地创建了这样的页面。但当我需要在一个页面中创建一组动态库时,一个新的挑战出现了。所以这里需要做的是:有一个帖子标题列表,每个标题中都有图库。当我点击其中一个链接时,带有缩略图的帖子应该显示在它的正下方。我很好地做到了这一点,但当单击缩略图时,较大的版本应该会出现在旁边。我应用了相同的代码,但它根本不起作用!这是我目前掌握的代码:索引。php(图库部分)hav