【问题标题】:handling images, videos, docs for custom cms处理自定义 cms 的图像、视频、文档
【发布时间】:2012-07-09 02:44:54
【问题描述】:

我正在使用 php 构建 CMS,但是我正在努力处理如何处理动态页面可以提供的各种不同资产,通常一个平均页面将包含各种尺寸的图片(拇指、正文、主等)、内嵌图像和各种不同的资产(pdf、flv、mp4、doc 等)。

目前用户可以上传资产并在服务器上创建文件夹,我只是想要一些关于如何在删除、编辑和链接到 cms 中的动态页面方面进行管理的技术和概念?我已经有一个包含所有内容(meta_stuff、title、friendly_url、content_text 等)的内容表。

上传时是否应该将引用存储在资产表中的某处? 是否应该将所有资产路径(图像、文档、视频等)存储在一个表中?还是为每个资产分开? 是否应该将多个图像尺寸(小、中、大等)存储在不同的字段中,例如(assetid、smallpath、mediumpath、largepath? 使用什么技术将资产链接到动态页面?这应该是连接表还是单表?如何为一个页面检索多个 pdf 和多个图像的不同资产? 如何处理资产的删除,因为这可以引用到另一个动态页面? 以及您认为有什么其他好处?

感谢大家的帮助

【问题讨论】:

    标签: php image content-management-system assets concept


    【解决方案1】:

    在类似于您所描述的场景中处理资源(视频、图像、文档..)时,请牢记以下一些基本事项。

    您想要知道什么正在上传,什么类型正在上传以及正在上传。为此,最好有以下表格:

    编辑:抱歉这个错误,asset_types.asset_type_id 应该链接到 assets.asset_type_id 而不是 assesst.asset_id


    (注:这只是一个大纲,当然你会有更多的领域)
    该模型可以轻松完成以下任务

    • 上传:上传内容后,将其存储在某处(使用正确的 .htaccess 配置)然后将该路径存储在表中。
    • 删除:当用户尝试删除某些内容时,您检查他是否是所有者。
    • 当您要添加新类型时,无需创建新表。

    希望这会让你朝着正确的方向前进。

    更新:回答您的评论,例如,当用户想要在文章中添加图片时,您有两种选择:

    1. 用户会看到一个按钮/选择菜单/无论选择所需的图像,一旦单击它将在内容正文中添加<img src=LINK_TO_RESOURCE" />(确保您保护自己免受 XSS 攻击)。

      或者

    2. 您使用自己的简单标记,当用户单击图像时,此 [[PREFIX_IMG:IMG_ID]] 将添加到内容正文中,当查看内容时,您将使用 @987654329 替换该“标签”您使用IMG_ID 获得的@。

    第二次更新:您有几个选项来处理不直接嵌入“文章”本身的资源。

    1. 您可以在“文章”表中有一个字段,例如可以调用summary,在assets 表中再添加一列,可以调用asset_sub_type,并具有不同的类型,例如@987654334 @。然后,当您想查看摘要时,您可以从数据库中获取摘要文本/标题并将资源添加到其中。

    2. (这是我使用的技术)从数据库中获取摘要时,我会查看与该文章相关的数据库中的哪个图像,然后使用 PHP 动态调整其大小并将其附加到摘要中。

    【讨论】:

    • 感谢您的回复,我从没想过使用业主的好主意。当用户上传缩略图、主图像并且现在想要将其添加到多个内容页面时会发生什么情况?还是其他方法?
    • 再次感谢您抽出宝贵时间回答,抱歉我的问题不是很清楚,我理解实际内容中的内嵌图像的这个概念,但是我说的是关于不在文章内容中的图片,可用于列出文章、列出视频缩略图或功能的图片,如您查看bbc.co.uk/sport/0
    • 例如,单个内容页面可能有多个关联图像,内容的大图像,要在功能中显示的中等图像,要在所有内容列表中显示的缩略图等。我想知道如何系统应该处理吗?感谢您的所有帮助
    • @user1511907,已更新。注意:这是我能帮到你的。如果您需要其他任何东西,请雇人为您做或教您如何做。
    • 感谢您的所有帮助 Adnan,您的技术对我帮助很大。我一直在努力解决的主要问题是图片本身不在文章中,而您的摘要方法是我实现的或类似的方法。干杯:)
    猜你喜欢
    • 2021-11-21
    • 1970-01-01
    • 2011-12-03
    • 1970-01-01
    • 1970-01-01
    • 2018-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多