private function getShortcode() { $shortcode = new Shortcode(); $shortcode->register('name', function (ShortcodeInterface $s) { return $s->getName(); }); $shortcode->register('content', function (ShortcodeInterface $s) { return $s->getContent(); }); $shortcode->register('nc', function (ShortcodeInterface $s) { return $s->getName() . ': ' . $s->getContent(); }); return $shortcode; }
function testRegisterShortcodeUsingClasses() { $shortcode = new Shortcode(); $shortcode->register('div', 'HTMLShortcode@div'); $shortcode->register('img', 'HTMLShortcode@img'); $exceptedDiv = '<div>Hello</div>'; $exceptedImg = '<img src="#">'; $this->assertEquals($exceptedDiv, $shortcode->compile('[div]Hello[/div]')); $this->assertEquals($exceptedImg, $shortcode->compile('[img src="#"]')); }
/** * Register new shortcode. * * @param string $name * @param mixed $callback * @return void * @static */ public static function register($name, $callback) { \Pingpong\Shortcode\Shortcode::register($name, $callback); }