der-spiegel/ww-assets-client

WoodWing Assets (原名:Elvis DAM) 系统的 PHP 客户端 https://www.woodwing.com/en/products/woodwing-assets

v7.1.0 2024-09-04 14:30 UTC

README

WoodWing Assets 是一个 DAM(数字资产管理)系统。此 PHP 客户端库使用了它的 REST API

这不是 WoodWing 供应商提供的官方库。它是在德国 SPIEGEL Gruppe 在 2019-2020 年实施 WoodWing Assets 时开发的。

功能

安装

使用 Composer 将此库添加到项目的 composer.json 文件中

$ composer require der-spiegel/ww-assets-client

快速测试

以下是从新项目开始进行快速测试的步骤(需要 Docker)

使用 Composer 安装依赖项

$ mkdir MyExample && cd MyExample
$ docker run --rm --interactive --tty \
  --volume $PWD:/app \
  --volume ${COMPOSER_HOME:-$HOME/.composer}:/tmp \
  composer/composer require der-spiegel/ww-assets-client monolog/monolog

复制并编辑示例脚本

$ cp vendor/der-spiegel/ww-assets-client/UsageExample.php MyExample.php

编辑您的副本,在此部分设置正确的 Assets URL、用户名(API 用户优先)和密码

$assetsConfig = AssetsConfig::create(
    'https://assets.example.com/', // Assets URL (without app/ or services/ postfix)
    'username',                    // Assets user name (API user preferred)
    'password'                     // That user's password
);

示例脚本在所有资产(对该用户可见)中进行简单搜索,并返回前 50 个资产 ID - 您可以将其保留为初始测试

$assetsClient = new AssetsClient($assetsConfig, $logger); // Create client

$request = new SearchRequest($assetsClient,               // Create search request
        q: '',                                            // Assets query
        metadataToReturn: ['']                            // Metadata fields to return
);

$response = $request();                                   // Perform search

foreach ($response->hits as $assetResponse) {             // Loop through results
    echo $assetResponse->id . "\n";                       // Access asset metadata
}

然后运行您的副本

$ docker run -it --rm --name assets-client-example \
  --volume "$PWD":/usr/src/myapp --workdir /usr/src/myapp \
  php:cli php MyExample.php

开发

有关运行单元和集成测试的说明,请参阅 运行测试

要使用源文件从 docs/_build/html 重新生成文档,请运行 Sphinx

$ docker run --rm --volume "$PWD":/usr/src/myapp --workdir /usr/src/myapp/docs sphinxdoc/sphinx:5.3.0 make html

作者

许可证

本库采用 MIT 许可证授权 - 有关详细信息,请参阅 LICENSE 文件。