织梦上传本地图片,如何实现?

99ANYc3cd6
预计阅读时长 12 分钟
位置: 首页 织梦建站 正文

通过后台编辑器可视化上传(最常用)

这是最直接、最符合普通用户习惯的方法,通过富文本编辑器完成。

织梦文章上传本地图片
(图片来源网络,侵删)

操作步骤:

  1. 登录织梦后台

    使用你的管理员账号登录网站的后台管理系统。

  2. 进入文章编辑界面

    • 在左侧菜单栏中,找到 【核心】 -> 发布】 -> 【普通文章】
    • 点击 【增加普通文章】 按钮,进入文章编辑页面。
  3. 使用编辑器上传图片

    织梦文章上传本地图片
    (图片来源网络,侵删)
    • 在文章编辑框中,将光标定位到你想要插入图片的位置。
    • 你会看到编辑器工具栏,点击 【图片】 图标(通常是一个小山或相机的图标)。
  4. 选择图片并上传

    • 点击图片图标后,会弹出一个“插入图片”的窗口,这个窗口通常有多个选项卡,最常用的是 【上传】【本地】
    • 选择文件:点击 【选择文件】【浏览】 按钮,从你的电脑本地硬盘选择一张或多张图片。
    • 设置图片属性(可选)
      • 图片描述:为图片添加文字说明,有助于SEO和用户体验。
      • 对齐方式:选择图片在文章中的对齐方式(左对齐、右对齐、居中等)。
      • 边框:设置图片边框宽度。
      • 图片大小:可以设置图片的宽度和高度。建议:如果图片过大,最好先在本地用PS等工具处理成合适尺寸再上传,而不是在这里强行缩放,否则会影响加载速度和清晰度。
    • 上传:设置好属性后,点击 【开始上传】【上传到服务器】 按钮。
  5. 插入图片

    • 上传成功后,图片会出现在上传列表中,点击图片下方的 【插入】 按钮,图片就会被插入到文章编辑器的光标位置。
  6. 保存文章

    • 完成所有内容的编辑后,填写文章标题、选择栏目等,最后点击底部的 【保存】【保存并生成HTML】 按钮。

至此,图片就已经成功上传并与文章关联了,图片文件会被存放在你设定的附件目录中。

织梦文章上传本地图片
(图片来源网络,侵删)

通过代码直接调用(适用于开发者)

如果你在模板文件(如 article_article.htm)中需要动态地显示文章内容里的图片,或者需要做一些特殊处理,就需要使用织梦的标签。 字段是 body,我们可以使用 {dede:field.body/} 标签直接输出。

基础调用:

模板文件中,直接使用以下代码即可输出文章的全部内容,包括图片。

{dede:field.body/}

高级应用:提取第一张图片作为缩略图

这是一个非常常见的需求:从文章内容中自动提取第一张图片,作为文章列表的缩略图,而不需要手动再上传一次。

你可以使用织梦的 preg_replace 函数配合正则表达式来实现。

示例代码:

在需要显示缩略图的地方(如列表页 list_article.htm 或文章页 article_article.htm),使用以下代码:

{dede:field.body runphp='yes'}
    // 正则表达式匹配第一个img标签
    $pattern = "/<img.*?src=['|"](.*?)['|"].*?[/]?>/i";
    // 执行替换,提取出src路径
    preg_match_all($pattern, @me, $matches);
    // 将第一个图片的路径赋值给@me,如果找不到则给一个默认图片
    if(isset($matches[1][0])){
        @me = $matches[1][0];
    }else{
        @me = '/images/default.jpg'; // 设置一个默认图片路径
    }
{/dede:field.body}

代码解释:

  • {dede:field.body runphp='yes'}runphp='yes' 表示开启PHP执行模式,@me 变量代表当前标签的原始值,也就是文章的 body
  • $pattern:这是一个正则表达式,用于匹配 img 标签里的 src 属性值。
  • preg_match_all():执行正则匹配,结果会存放在 $matches 数组中。$matches[1] 存放的就是所有匹配到的 src 路径。
  • isset($matches[1][0]):判断是否找到了至少一张图片。
  • @me = $matches[1][0]:如果找到了,就把第一张图片的路径赋值给 @me,这样标签输出的就是图片路径了。
  • @me = '/images/default.jpg':如果没找到图片,就输出一个你预设的默认图片路径。

重要配置:附件上传目录

在织梦后台,你可以设置上传的图片(附件)存放在哪个目录,这对于后期管理网站文件非常重要。

  1. 登录织梦后台。
  2. 在左侧菜单栏,找到 【系统】 -> 【基本参数设置】 -> 【附件设置】
  3. 在这里你可以修改以下关键参数:
    • 附件保存目录uploads,所有上传的文件都会存放在这个目录下。
    • 附件目录定义:可以按年月自动创建子目录,如 uploads/{yyyy}/{mm},这样文件管理会更清晰。
    • 最大文件大小:限制上传文件的大小。
    • 允许的文件类型:限制可以上传的文件后缀名,如 jpg|gif|png|bmp|jpeg

强烈建议:在安装完织梦后,检查并确认这些设置是否符合你的需求。


常见问题与解决方法

问题1:上传图片后,图片显示不出来,显示为红色叉叉或问号。

原因分析:

  1. 路径错误:这是最常见的原因,织梦保存的是图片的相对路径,当网站域名或目录结构发生变化时,路径就会失效。
  2. 权限问题:网站服务器上的附件目录(如 uploads)没有写入权限,导致图片上传失败,但编辑器误以为成功了。
  3. 服务器安全软件拦截:服务器的安全软件(如安全狗)可能拦截了上传行为。

解决方案:

  • 检查路径:在后台“附件设置”中,确认“附件保存目录”是否正确,可以尝试重新上传一张图片,然后去FTP里看图片是否真的存放在了指定目录。
  • 检查权限:通过FTP连接你的服务器,找到附件目录(如 uploads),将其权限设置为 755777(777有安全风险,用完后记得改回755),确保Web服务器用户(如 www-data, nginx, apache)对该目录有写入权限。
  • 关闭安全软件:临时关闭服务器的安全软件,再尝试上传,看是否是拦截导致。

问题2:图片上传失败,提示“上传失败,请检查目录权限或上传文件是否超限”。

解决方案:

  • 检查权限:同上,确保目录有写入权限。
  • 检查文件大小:检查图片大小是否超过了后台“附件设置”里设定的“最大文件大小”。
  • 检查文件类型:检查图片格式是否在后台“允许的文件类型”列表中。
  • 检查PHP配置:如果图片很大,可能是服务器的 php.ini 配置限制了上传大小,检查 upload_max_filesizepost_max_size 这两个值,并适当调大它们。

问题3:如何在文章中批量上传多张图片?

  • 方法:在方式一的第4步中,点击 【选择文件】 时,不要只选一张,而是按住 Ctrl 键或 Shift 键,一次性选中你电脑上的多张图片,然后一起上传,上传成功后,再依次点击“插入”即可。

希望这份详细的指南能帮助你顺利完成织梦文章的图片上传!

-- 展开阅读全文 --
头像
C语言malloc异常如何排查与解决?
« 上一篇 今天
dede的datalist
下一篇 » 今天

相关文章

取消
微信二维码
支付宝二维码