alex290 / yii2-widget-content-old
Widget content old
Installs: 6
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Language:JavaScript
Type:yii2-extension
Requires
- alex290/yii2-images: *
- yiisoft/yii2: ~2.0.0
README
Widget content
Installation
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist alex290/yii2-widget-content "*"
or add
"alex290/yii2-widget-content-old": "*"
to the require section of your composer.json
file.
Usage
Once the extension is installed, simply use it in your code by :
в конфиге web.php прописать
'modules' => [
'widget-content' => [
'class' => 'alex290\widgetContentOld\Module',
'path' => 'upload', //path to files
'ckeditorPath' => '/web/lib/ckeditor/ckeditor.js', // Путь к внешнему Ckeditor - Необязательно
'ckeditorConfig' => '/web/lib/ckeditor/config-st.js', // Путь к конфигурации внешнего Ckeditor - Необязательно
],
],
run migrate
php yii migrate/up --migrationPath=@vendor/alex290/yii2-widget-content/migrations
attach behaviour to your model (be sure that your model has "id" property)
public function behaviors()
{
return [
'widget' => [
'class' => 'alex290\widgetContentOld\behaviors\Behave',
]
];
}
Вывести виджет в админке
<?php if (!$model->isNewRecord) : ?>
<?= $model->getWidget() ?>
<?php endif ?>
Получить массив объектов виджетов данной модели
$model->getContent();
Удалить виджеты
$model->removeWidgetAll();
$model->removeWidget($id);
Выводить записи на странице
<?php if ($model->getContent() != null) : ?>
<?php foreach ($model->getContent() as $key => $widget) : ?>
<?php if ($widget->type == 1) : ?>
<?php $data = Json::decode($widget->data) ?>
<!-- Выводим текст ($data['text']) -->
<?php elseif ($widget->type == 2) : ?>
<?php $data = Json::decode($widget->data) ?>
<!-- Выводим изображение -->
<!-- $widget->getImage()->GetPath() -->
<!-- Заголовок изображения ($data['title']) -->
<?php elseif ($widget->type == 3) : ?>
<?php $data = Json::decode($widget->data) ?>
<!-- Выводим файлы -->
<a href="/web/<?= $data['file'] ?>" download="<?= $data['fileName'] ?>"><?= $data['title'] ?></a>
<?php endif ?>
<?php endforeach ?>
<?php endif ?>