在内容之后的底部显示图库

时间:2013-07-08 作者:Vincent

如何在任何其他内容之后执行库短代码,无论短代码在post HTML中的什么位置?

谢谢

1 个回复
最合适的回答,由SO网友:TheDeadMedic 整理而成

这不是防弹的,但在大多数情况下应该可以很好地工作:

class WPSE_105676_Gallery_First {
    private static $_gallery = \'\',
                   $_handler;

    public static function gallery( $attr ) {
        self::$_gallery .= is_callable( self::$_handler ) ? call_user_func( self::$_handler, $attr ) : \'\';
        return \'\';
    }

    public static function content( $text ) {
        $text .= self::$_gallery;
        self::$_gallery = \'\';
        return $text;
    }

    public static function startup() {
        if ( ! isset( self::$_handler ) ) {
            if ( empty( $GLOBALS[\'shortcode_tags\'][\'gallery\'] ) || ! self::$_handler = $GLOBALS[\'shortcode_tags\'][\'gallery\'] )
                self::$_handler = \'gallery_shortcode\';

            add_shortcode( \'gallery\', array( __class__, \'gallery\' ) );
        }

        add_filter( \'the_content\', array( __class__, \'content\' ), 1000 );
    }
}

add_action( \'init\', array( \'WPSE_105676_Gallery_First\', \'startup\' ), 100 );
用外行的话说startup() 我们将当前的短代码处理程序保存为gallery (因此,这也应该适用于覆盖默认值的插件和主题),然后用我们自己的插件和主题替换它gallery() 方法这就是我们“捕捉”画廊的地方&;返回一个空字符串,使其不再出现在存在快捷码的位置。

出来content() 方法连接到the_content 在低优先级筛选器上,以确保它在分析完所有短代码以及可能添加自己内容的任何其他筛选器之后运行。这将附加捕获的库,重置属性,并返回帖子内容。

结束

相关推荐

shortcode for logo image

我有以下代码用于使用短代码图像显示图像,但短代码是[image name=logo] 从名为logo的/uploads/目录加载图像。巴布亚新几内亚;更改名称,我可以像狗一样加载不同的图像。png项目符号。png等。名称后写入=名称文件。所以我的问题是如何让函数在短代码上编写[logo] 我可以得到图像标志。巴布亚新几内亚function image_shortcode($atts, $content = null) { extract( shortcode_atts( array(