gwa/zero-library-shortcodes

zero library 的插件,用于快速构建 WordPress 短代码。

v1.3.0 2015-11-05 10:01 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:26:03 UTC


README

Latest Version on Packagist Total Downloads Software License

主分支

Build Status Coverage Status Quality Score

开发分支

Build Status Coverage Status Quality Score

安装

通过 Composer 安装

$ composer require gwa/zero-library-shortcodes

使用方法

首先,您需要扩展 RendererData 并创建一个 getDefaults 函数。

use Gwa\Wordpress\Template\Zero\Library\Shortcodes\RendererData;

class CardData extends RendererData
{
    public function getDefaults()
    {
        return [
            'title' => null,
            'btn'   => null,
            'url'   => null,
        ];
    }
}

现在我们扩展 Renderer 并为一些键添加一些值。

use Gwa\Wordpress\Template\Zero\Library\Shortcodes\Renderer;

class CardRenderer extends Renderer
{
    public function render()
    {
        return $this->get('title');
    }
}

最后,现在需要创建一个短代码类。

use Gwa\Wordpress\Template\Zero\Library\Shortcodes\Shortcode;

class CardShortcode extends Shortcode
{
    public $atts = [
        'title' => ''
    ];

    public function getShortcode()
    {
        return 'card';
    }

    public function render($atts)
    {
        $attr = $this->getWpBridge()->shortcodeAtts($this->atts, $atts);

        return = (new CardRenderer())->setRendererData($this->getData())->render();
    }

    protected function getData()
    {
        $renderdata = new CardData();
        $renderdata->set('content', $this->getContent($id))
            ->set('url', 'http://google.com/')
            ->set('title', 'google');

        return $renderdata;
    }
}

注册您的插件。

use Gwa\Wordpress\MockeryWpBridge\WpBridge;

(new CardShortcode())->setWpBridge(new WpBridge())->init();

变更日志

有关最近更改的详细信息,请参阅CHANGELOG

测试

$ composer test

贡献

有关详细信息,请参阅CONTRIBUTING

鸣谢

许可证

MIT 许可证 (MIT)。有关更多信息,请参阅许可证文件