[textGenerator] Компонент для генерации текстов

Простенький компонент для автоматической генерации SEO-текстов методом перебора из шаблона вида:

Это {скрипт|плагин|сниппет} генерации  {текстов|описаний|заголовков}  {для сайта|для {оптимизации|SEO}}

Состоит из плагина textGenerator и чанка textGenerator.

Плагин берет текст шаблона из чанка textGenerator, генерирует тексты, выбирает случайный вариант и записывает в поле документа description, если оно не пустое.

Куда сохранять, пока что, изменить можно только в самом плагине в строках (позже вынесу в системные настройки):

if ($resource->get('description') != "") {return;}
$resource->set('description', $result);

Сильно не пинайте. Любые советы по улучшению кода приветствуются.

Пакет: yadi.sk/d/CIXh7iO3tE9tx

GitHub: github.com/ig0r74/textGenerator

Modstore: modstore.pro/packages/content/textgenerator
Игорь Терентьев
12 июля 2016, 13:33
modx.pro
7
2 929
+8

Комментарии: 23

@ndrew
14 июля 2016, 20:41
0
Полезная штука +

Поле для сохранения я вынес в параметры плагина — field = description или любое другое
if ($resource->get('$field') != "") {return;}
.................
$resource->set($field, $result); // Устанавливаем новые значения в поле
    Игорь Терентьев
    14 июля 2016, 21:26
    0
    Спасибо!
      Игорь
      22 февраля 2022, 12:39
      0
      Подскажите как в чанке запустить?
      {'{привет|пока} или {добрый день|добрый вечер}'|textGenerator}
    Игорь Терентьев
    02 октября 2018, 11:56
    0
    Наконец появилось время опубликовать в modstore: modstore.pro/packages/content/textgenerator
      Plushkin
      08 мая 2019, 17:14
      0
      Здравствуйте, подскажите как его использовать, только начал изучать MODx)
      Я хочу его использовать для генерации мета данных для страниц. Установил его но не могу понять как его заставить работать. В системных настройках не нашел как его активировать и менять поля куда он вставляет значения.
      Хочу сделать два шаблона autokeywords и autodescription и подставлять их в поля METAx
      Нужно делать для этого два дополнительных поля TV?
      Заранее спасибо)
        mrmelkiy
        31 мая 2019, 20:17
        0
        ру сообщество MODX, после слов — «только начал изучать MODx)» вам скорее не ответят ))
        Ответят если вы с PHP на 4 хотябы. )
        Фарит
        Фарит
        26 декабря 2021, 22:41
        0
        {'Это {скрипт|плагин|сниппет} генерации  {текстов|описаний|заголовков}  {для сайта|для {оптимизации|SEO}}' | textGenerator}
        вот так не работает, всегда подтягивает текст из чанка: tpl.textGenerator.input

        Как заставить работать? Кеши все чистил.
          Игорь Терентьев
          27 декабря 2021, 09:46
          +1
          Привет, нужно открыть сниппет textGenerator и очистить этот параметр:
            Фарит
            Фарит
            27 декабря 2021, 21:28
            0
            1+ 1★
              Игорь Терентьев
              22 февраля 2022, 14:11
              +1
              Залил новую версию с фиксом этого бага.
                Игорь
                22 февраля 2022, 15:26
                0
                Пробовал снова, удалил в снипете и в настройках системы шаблоны,
                пытаюсь в чанке
                {'Это {скрипт|плагин|сниппет} генерации  {текстов|описаний|заголовков}  {для сайта|для {оптимизации|SEO}}' | textGenerator}
                {'это {привет|пока} или {добрый день|добрый вечер}' | textGenerator}
                никакой реакции, просто выводит этот текст на сайте
                fenom включен.
                Увидел что вы обновили сборку, обновил сейчас, тоже самое ничего не помогло.

                так


                так


                так
                  Игорь Терентьев
                  22 февраля 2022, 17:07
                  0
                  Посмотри в журнале ошибок есть что-нибудь?
                    Игорь
                    22 февраля 2022, 20:48
                    0
                    Оказалось fenom не весь был включён. Теперь выводит в контенте сообщение: Это плагин генерации текстов для оптимизации Array
                      Игорь
                      23 февраля 2022, 08:26
                      0
                      в журнале ошибок касательно плагина ничего не увидел.
                        Игорь
                        23 февраля 2022, 16:28
                        0
                        теперь только выводит из чанка tpl.textGenerator.input базовую фразу
                        Игорь
                        23 февраля 2022, 16:37
                        0
                        Все работает. спасибо!
                        моя ошибка не до конца в феном включил галочки
                          Игорь
                          23 февраля 2022, 16:41
                          0
                          Я думал плагин можно запускать на одной странице несколько штук…
                          получается работает только для одной фразы… а нельзя сделать что б несколько работало? я хотел по многим местам пройтись с шаблоном…
                            Дима Сайт
                            23 февраля 2022, 17:20
                            0
                            В описании же написано четко:
                            записывает в поле документа description, если оно не пустое.
                            Если тебе нужно в другие поля записывать, то нужно на основе этого плагина сделать такие же для других полей. Этот «из коробки» так не умеет, но и исправить его надо совсем чуть-чуть чтобы работало нестандартно, но прямо как надо именно сейчас (указать вместо description другое поле, например introtext или content)
                              Дима Сайт
                              23 февраля 2022, 17:25
                              +1
                              Просто ты пытаешься плагин использовать как сниппет судя по вот таким попыткам:
                              {'это {привет|пока} или {добрый день|добрый вечер}' | textGenerator}
                              Но не очень понятно зачем. Ведь если такую конструкцию заставить работать, она скорее всего будет генерировать каждый раз при перезагрузке страницы новый вид фразы, а такое для SEO например точно не годится))

                              Хотя в коде сниппета это можно обойти через значительное усложнение, или с помощью кэша результаты будут меняться не так часто, но всё равно записывать один раз плагином (как изначально и задумал автор) кажется максимально логичным — сгенерировал 1 раз по шаблону, записал, и оно там навсегда осталось. Потом можно руками править.
                                Игорь
                                23 февраля 2022, 17:59
                                0
                                Вот кстати вы сразу ответили и на мой вопрос, про СЕО, гуглил как раз как это скажется для поисковиков рандомный текст.

                                Понял. спасибо
                      Игорь
                      23 февраля 2022, 16:27
                      0
                      Удалить целиком или очистить...? просто хочется выводить теги в любом месте
                      {'это {привет|пока} или {добрый день|добрый вечер}' | textGenerator}
                    Игорь
                    22 февраля 2022, 12:34
                    0
                    Увы ничего не понятно. Плагин активировал в настройках.
                    А дальше не ясно, как запустить…

                    а нельзя в html редакторе вставлять кусок и что б перебирал слова в тексте сразу?
                    Это {скрипт|плагин|сниппет} генерации  {текстов|описаний|заголовков}  {для сайта|для {оптимизации|SEO}}
                    или хотя бы в чанке?
                    или этот плагин годится только если делать генерацию под description?
                      Игорь Терентьев
                      22 февраля 2022, 14:02
                      0
                      Да, вот так будет работать
                      {'Это {скрипт|плагин|сниппет} генерации  {текстов|описаний|заголовков}  {для сайта|для {оптимизации|SEO}}' | textGenerator}
                      В контенте тоже можно, только нужно убрать у ресурса чекбокс «Использовать HTML-редактор»

                      И сделать как здесь описано: modx.pro/components/9236#comment-131694
                      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                      23