首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MovableType 5.2.6 - modify添加到条目中的资产的默认html标记?

MovableType 5.2.6 - modify添加到条目中的资产的默认html标记?
EN

Stack Overflow用户
提问于 2014-02-19 02:34:22
回答 2查看 65关注 0票数 1

我知道很长一段时间以来,MT并没有使编辑嵌入到MT条目时包装图像资产的默认标记变得容易/可访问。(这太奇怪了,它还没有像其他所有东西一样作为系统模块创建。)

有一个插件似乎解决了这个问题,尽管它是为MT 4*编写的,而且似乎已经失效:无论如何,https://github.com/endevver/mt-plugin-custom-asset-markup我已经安装了它,并且不清楚它应该如何工作或如何被触发/管理(没有设置,尽管我可能做错了)。

每当一个图像被插入到一个条目中时,我都希望它的标记在标记中包含它的一些属性。例如,当每个图像插入到条目主体时,我希望分配它的ID值:

代码语言:javascript
复制
<IMG ID="ar_<mt:AssetId>" … />
  • 这个问题在MT 6中解决了吗?(我在推迟系统升级,因为我现在不想破坏稳定,但这可能是值得的。)
  • 关于如何操作上述插件的技巧?
  • 除了直接编辑Perl模块或编写我自己的插件之外,还有其他建议/黑客吗?
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-20 02:20:28

我已经用[化] Assetylene插件做了很多次了。它的工作原理与您所期望的一样--创建一个名为"Asset“的模板模块,并编辑要被吐出的HTML。我已经用MT4和5测试过它--我肯定它适用于5.2.6 --而且它也应该适用于MT6。

票数 2
EN

Stack Overflow用户

发布于 2014-02-19 04:20:53

最后,我只是编辑了Perl文件。FTR相关部分如下:

代码语言:javascript
复制
lib/MT/Asset/Image.pm

新代码在下面。本质上,有几种条件可以根据用户在将资产插入条目时选择的选项来输出HTML的块。我对Perl - but一无所知,基本上在每种相关的情况下都将MT::Util::encode_html( $asset->id )插入到sprintf调用中,并使用%s thingy在适当的点将ID的值插入到我的HTML中。

(我还去掉了ca 1999 onclick“打开一个弹出式”代码- replaced it,它的属性可以通过将要编写的jquery调用读取。)

代码语言:javascript
复制
        my $link
            = $thumb
            ? sprintf(
            '<img src="%s" %s alt="%s" %s id="aid_%s" />',
            MT::Util::encode_html( $thumb->url ),   $dimensions,
            MT::Util::encode_html( $asset->label ), $wrap_style,
            MT::Util::encode_html( $asset->id )
            )
            : MT->translate('View image');
        $text = sprintf(
            q|<a href="%s" class="popup" data-img-url="%s" data-img-width="%s" data-img-width="%s">%s</a>|,
            MT::Util::encode_html( $popup->url ),
            MT::Util::encode_html( $popup->url ),
            $asset->image_width,
            $asset->image_height,
            $link,
        );
    }
    else {
        if ( $param->{thumb} ) {
            $text = sprintf(
                '<a href="%s"><img alt="%s" src="%s" %s %s id="aid_%s" /></a>',
                MT::Util::encode_html( $asset->url ),
                MT::Util::encode_html( $asset->label ),
                MT::Util::encode_html( $thumb->url ),
                $dimensions,
            : MT->translate('View image');
        $text = sprintf(
            q|<a href="%s" class="popup" data-img-url="%s" data-img-width="%s" data-img-width="%s">%s</a>|,
            MT::Util::encode_html( $popup->url ),
            MT::Util::encode_html( $popup->url ),
            $asset->image_width,
            $asset->image_height,
            $link,
        );
    }
    else {
        if ( $param->{thumb} ) {
            $text = sprintf(
                '<a href="%s"><img alt="%s" src="%s" %s %s id="aid_%s" /></a>',
                MT::Util::encode_html( $asset->url ),
                MT::Util::encode_html( $asset->label ),
                MT::Util::encode_html( $thumb->url ),
                $dimensions,
                $wrap_style,
                MT::Util::encode_html( $asset->id )
            );
        }
        else {
            $text = sprintf(
                '<img alt="%s" src="%s" %s %s id="aid_%s" />',
                MT::Util::encode_html( $asset->label ),
                MT::Util::encode_html( $asset->url ),
                $dimensions, $wrap_style,
                MT::Util::encode_html( $asset->id ),
            );
        }
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21869876

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档