typecho文章点击插入全部附件,详细研究

本文阅读 3 分钟
广告

一个可能有点鸡肋的功能,反正一般情况是用不上吧,但是排除特殊的情况,比如需要大量文件上传的时候,一个一个的插入确实太慢了,所以还是需要类似的处理机制。好吧,真实原因是一个QQ好友需要,而且对方催了很多天,让我完全无法划水摸鱼,所以抽空做了出来。严格来说还是很简单的,就是不熟悉typecho的文件对应功能,所以找不到修改实现的地方,现在倒也是解决了问题。
总之,其实对研究typecho的文件输出模式,还是很有帮助吧。

timg (1).jpg

控制附件上传的功能在admin/file-upload.php

循环输出代码如下:

<?php while ($attachment->next()): ?>
    内部代码
<?php endwhile; ?>

相关标签:

<?php $attachment->cid(); ?>   附件ID
<?php echo $attachment->attachment->url; ?>  附件详细路径
<?php echo $attachment->attachment->isImage ? 1 : 0; ?>    附件是否为图片
<?php $attachment->title(); ?>   附件名称
?php echo number_format(ceil($attachment->attachment->size / 1024)); ?>   附件大小/单位KB

理解以上的东西后,看看默认附件插入是怎样的。
QQ截图20190629133420.png

是不是很明了了,就是把标签和这些字符组合,再套进循环就好了,不过它是分为两个部分的,所以需要拆分开来,这里我定义了两个js字段,并且把标签套了进去,n代表空格。

var filename="<?php while ($attachment->next()): ?>[<?php $attachment->title(); ?>][<?php $attachment->cid(); ?>]\n<?php endwhile; ?>";
var fileurl="<?php while ($attachment->next()): ?>\n  [<?php $attachment->cid(); ?>]: <?php echo $attachment->attachment->url; ?><?php endwhile; ?>";

有了内容,开始插入
写一个js方法,读取文本框里面的内容,然后把之前字段的内容追加上去。

function filetext(){
    var text = document.getElementById("text");
    text.innerHTML = text.innerText+filename+fileurl;
}

写个a标签或者按钮调用这个方法,我懒得继续美化了。

<div class="full" style="width:100%;text-align:center;">
    <a href="javascript:;" onclick="filetext();">全部插入</a>
</div>

总之,上述都弄完后,file-upload.php里面代码是这样的
1.png

然后,看看实际效果吧。
2.png

文件下载:

规则之树版权所有,转载请注明来源,标明作者及原文链接

本文来自投稿,不代表本站立场,如若转载,请注明出处:https://www.ruletree.club/archives/1324/
[授权转载]《木卫二往事》第三话 阴谋
« 上一篇 06-24
不知不觉,到雅加达第三天了
下一篇 » 07-12
广告

发表评论

V注册会员 L评论等级
R36 条回复
  1. 778Lv.1 说道:
    2020-08-06     Win 10 /    Chrome

    嘿嘿

  2. 路人ALv.1 说道:
    2020-06-22     Win 10 /    Chrome

  3. 刺客Lv.1 说道:
    2020-04-17     Win 7 /    Chrome

    这个是好东西。

  4. 泽泽Lv.2 说道:
    2020-03-15     Android /    Chrome

    我的插件和你这个撞需求了 icon_lol.gif ,不过还好原理没太撞,以前某个群里有人对于传图片有这个需求,当时我没思路,今年我就试试实现,不过那个人已经不知道是谁了 icon_eek.gif

    1. TristeD9VLv.1 说道:
      2022-01-15     Android /    Chrome

      @泽泽

    2. TristeD9VLv.1 说道:
      2022-01-15     Android /    Chrome

      @泽泽

      你有插件吗?能提供下载吗?

    3. 不暇VLv.6 说道:
      2020-03-16     Win 7 /    Chrome

      @泽泽

      那也是巧了,没准我碰到的这个需求人和你在群里遇到的是同一位。

      1. 泽泽Lv.2 说道:
        2020-03-16     MacOS /    Chrome

        @不暇

        我这头像你这里的判断是不是太粗暴的显示qq头像了 icon_lol.gif

        1. 不暇VLv.6 说道:
          2020-03-16     Win 7 /    Chrome

          @泽泽

          应该还得再加一层判断前面是不是数字【手动滑稽】

  5. 沐北Lv.1 说道:
    2020-01-13     Win 10 /    Chrome

    路过

  6. qingfuLv.1 说道:
    2019-12-15     Win 7 /    Chrome

    这个真需要!!

  7. 寻梦xunmLv.2 说道:
    2019-08-02     Android /    Chrome

    大佬好ヾ ^_^♪牛逼牛逼

  8. xiexieLv.1 说道:
    2019-07-28     Win 7 /    Chrome

    你好,请问点全部插入没反应,将文章保存草稿,再编辑点全部插入就起作用是什么原因?

    1. 不暇VLv.6 说道:
      2019-07-28     Android /    Chrome

      @xiexie

      这里我后来改了一些东西,有时间会补充上。

  9. xiexieLv.1 说道:
    2019-07-28     Win 7 /    Chrome

    icon_mrgreen.gif

  10. adkLv.1 说道:
    2019-06-29     Win 10 /    Chrome

    icon_mrgreen.gif

没有更多评论了

作者信息

热门文章

标签TAG

热评文章