PHPackages                             shane310/field\_group\_ajaxified\_multipage - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. shane310/field\_group\_ajaxified\_multipage

ActiveDrupal-module

shane310/field\_group\_ajaxified\_multipage
===========================================

Allow make fieldgroups to build multipage content creation forms.

02.5k1PHP

Since Jul 23Pushed 4y ago1 watchersCompare

[ Source](https://github.com/shane310/field_group_ajaxified_multipage)[ Packagist](https://packagist.org/packages/shane310/field_group_ajaxified_multipage)[ RSS](/packages/shane310-field-group-ajaxified-multipage/feed)WikiDiscussions master Synced 2d ago

READMEChangelogDependenciesVersions (1)Used By (0)

Contents of this file
=====================

[](#contents-of-this-file)

---

- Introduction
- Requirements
- Installation
- Configuration
- Using custom forms
- Issues
- Maintainers

Introducction
-------------

[](#introducction)

---

The Field Group Ajaxified Multipage module makes possible turn a form to a multipage form ajaxified using groups.

It also provides developers with special variables attached to form array regarding page status to allow them to further customize the form depending on the active page.

Also, it works with any forms, even custom ones!

- For a full description of the module visit: [https://www.drupal.org/project/field\_group\_ajaxified\_multipage](https://www.drupal.org/project/field_group_ajaxified_multipage)
- To submit bug reports and feature suggestions, or to track changes visit: [https://www.drupal.org/project/issues/field\_group\_ajaxified\_multipage](https://www.drupal.org/project/issues/field_group_ajaxified_multipage)

Requirements
------------

[](#requirements)

---

- Field group:

    By using Field Group, it's possible to easily turn an entity form into a multipage form.

Installation
------------

[](#installation)

---

- Install the Field Group Ajaxified Multipage module using "composer require 'drupal/field\_group\_ajaxified\_multipage:'". Then enable the module.

Configuration - Using Field Group
---------------------------------

[](#configuration---using-field-group)

---

```
1. You'll have two new types of field groups on the displays:

    - Multipage step: Use this type of group to wrapper each field of your
    step.

    - Multipage group: Use this type of group to wrapper each step group
    "Multipage step".
    The options than able the multipage works properly are:
        * Ajaxfied: Yes.
        * Non Javascript Multistep: No.

```

Using custom forms
------------------

[](#using-custom-forms)

---

Field group ajaxified multipage allows to transform custom forms to multipage ajax forms.

There are a submodule included called "fgam\_example" with a full example of a custom form explained. Enable the module, then you can see the result in: "examples/field\_group\_ajaxified\_multipage/custom\_form"

The code is in Example.php file.

If you're a developer and like to implement more complex multi-page forms you can use the following variables defined by the module:

```
* "$form_state['field_group_ajaxified_multipage_enabled']" This is sets when

```

the form multipage is defined.

```
* "$form_state['field_group_ajaxified_multipage_group']" This  contains the

```

multipage group.

Sample code for using these variables:

```
function hook_form_alter(&$form, &$form_state, $form_id) {

    if (isset($form_state['field_group_ajaxified_multipage_enabled']) &&
        $form_state['field_group_ajaxified_multipage_enabled']) {

        // Actual number step.
        $step = empty($form_state['storage']['field_group_ajaxified_multipage_step']) ? 1 : $form_state['storage']['field_group_ajaxified_multipage_step'];

        // Main group multipage.
        $page_group = $form_state['field_group_ajaxified_multipage_group'];

        // Best practice for accessing variables, it works even when this ajax
        // grouping is disabled.
        if (isset($form_state['storage']['all']['values'])) {
          $values = $form_state['storage']['all']['values'];
        }
        elseif (isset($form_state['values'])) {
          $values = $form_state['values'];
        }

    }
}

```

Issues
------

[](#issues)

---

The paging can only be done on client side which has several disadvantages.

```
1. Validation of form fields is very basic, real validation is done after
   the form is submitted and users will often have to return to previous
   pages to correct the entered values.
2. More complex multi page forms often dynamically change what the users see
   in next steps depending on the data entered in previous steps. Now that
   the form pages are Ajaxified, there are no limitations.
3. When the form is complex and has many pages with different fields, it
   can become considerably heavy to load since it uses javascript to
   hide/show related fields on each page, but the whole form is still
   loaded.

```

FORM API image buttons are not supported by default.

Maintainers
-----------

[](#maintainers)

---

- Sina Salek ()
- Sebastian Gurlt ()
- Eduardo Morales ()

Supporting organization:

- Bright Solutions GmbH -
- Metadrop -

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity17

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity29

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/7b15b162f623fcd361187ac414a84ee62112c6ae77e204782f2b8c98d1181214?d=identicon)[shane310](/maintainers/shane310)

---

Top Contributors

[![shane310](https://avatars.githubusercontent.com/u/18435495?v=4)](https://github.com/shane310 "shane310 (2 commits)")

### Embed Badge

![Health badge](/badges/shane310-field-group-ajaxified-multipage/health.svg)

```
[![Health](https://phpackages.com/badges/shane310-field-group-ajaxified-multipage/health.svg)](https://phpackages.com/packages/shane310-field-group-ajaxified-multipage)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
