Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 03/03/2026 in all areas

  1. PromptAI v2.3 — Inline Mode, Streaming, Placeholders, and more Hi everyone, It's been a while since the last update for PromptAI, and quite a lot has changed. Here's a summary of what's new since the last public release. Inline Mode The biggest addition is a new Inline Mode that adds magic wand buttons directly next to your fields. Instead of the "Save + Send to AI" workflow, you can now trigger AI processing on individual fields without saving the page first. The response streams in live and replaces the field content — but nothing is saved until you hit Save. Both modes (Page Mode and Inline Mode) can be mixed freely in the same configuration. Each prompt is configured as either "page" or "inline". Inline mode works with all supported field types: text fields, TinyMCE/CKEditor fields, image descriptions, file descriptions, and custom subfields — including inside repeaters. Streaming Responses AI responses now stream in real-time via Server-Sent Events (SSE). You can watch the text appear token by token instead of waiting for the full response. This obviously only works in inline mode. Placeholder Support Prompts can now reference other field values from the page using `{page.fieldname}` syntax. Inside repeaters, use `{item.fieldname}` to access the current repeater item's fields. Examples: - Summarize the following text to 400 characters: {page.body} - Create an SEO meta description for a page titled '{page.title}' - Write a caption for this gallery item titled '{item.title}' from the {page.gallery_name} collection This makes prompts context-aware without having to send field content manually. Multi-Field Selection Instead of configuring a single source field per prompt, you can now select multiple fields. The same prompt will be applied to each selected field. This replaces the old source/target field concept — the "target" is now only used for subfield options in file/image fields. AI Tools (experimental) The module now ships with three experimental tools that allow the AI to query your ProcessWire installation: - getPages — find pages by selector - getPage — get detailed info about a single page - getFields — list available templates and their fields These are disabled by default and must be enabled in module configuration. They're meant as starting points — their usefulness depends heavily on your use case and I recommend to create your own for each projects specific demand. Other Changes - PHP 8.3 is now required to use this module Important: Backup Before Updating The internal configuration structure has changed significantly. The old `sourceField`/`targetField` concept has been replaced with a multi-field `fields` array and a separate `targetSubfield` option. There is no automatic migration for this change. I'm sorry for the inconvenience — the old structure simply didn't support the new features. I attached two short screen videos showing the prompt config screen with example prompts and one page edit screen where I showcase some of the predefined prompts. As always, feedback and bug reports are welcome — either here or on GitHub. promptai-showcase.mp4 promptai-config.mp4
    1 point
  2. Adding custom PHP code to any page in the backend is extremely easy as well (if you know how) ? <?phhp // in site/ready.php $wire->addHookAfter("ProcessPageEdit::buildForm", function ($event) { $form = $event->return; $page = $event->object->getPage(); if ($page->template != 'home') return; $existingField = $form->get('title'); $out = "Show 5 random pages:"; $pages = $this->wire->pages->find("limit=5, template=basic-page, sort=random"); foreach ($pages as $p) { $out .= "<div><a href={$p->editUrl}>{$p->title}</a></div>"; } $newField = [ 'type' => 'markup', 'label' => 'foo', 'icon' => 'check', 'value' => $out, ]; $form->insertAfter($newField, $existingField); });
    1 point
  3. You could add a multi page reference field to the "Project" template to store the associated persons. And synchronize the two reference fields with the excellent "Connect Page Fields" module by Robin S. https://github.com/Toutouwai/ConnectPageFields
    1 point
  4. Just wanted to share the simplest language switcher possible if you only have two languages: <a href="<?= $page->localUrl($languages->findOther()->first()) ?>">DE/EN</a> ??
    1 point
  5. Here is the GitHub link to the flag-icon-css repo: https://github.com/lipis/flag-icon-css Don't use flags for language selectors as flags do not represent languages!
    1 point
×
×
  • Create New...