Crocoblock / suggestions

The suggestions for CrocoBlock project
197 stars 79 forks source link

JetEngine v3.6.0 Beta #7842

Closed MjHead closed 8 hours ago

MjHead commented 2 weeks ago

Hi,

We are almost getting ready to release JetEngine v3.6.0 and we would like to ask you to help us test it.

You can download beta version from your Crocoblock account.

Please note that is a beta version, not stable release, so its not ready to use on production websites!

AI Website Structure Builder

This functionality enables the creation of a data model for a website based on user input. The model includes:

Logic and UI

image

For setup, users describe their desired website in 1–2 sentences. The first field covers the site’s general purpose, while the second field outlines specific functionalities, such as listings, filters, and visitor capabilities. Once both fields are completed, the “Preview Website Model” button is enabled. Clicking it generates a data model for review without actually creating it on the site. Users can review and adjust the model before moving to the creation step.

To create all the entities outlined in the model, check the box labeled “I understand that by clicking ‘Create Website Model,’ all described entities will be physically created on my website,” then click “Create Website Model.” After this, all entities from the model are created, and the user is redirected to a page with details about the created model.

image

Now, users can edit entities or related elements, rename the model (useful when managing multiple models), check the tutorials for individual entities, or the recommended tutorials for further steps.

The final component of the builder is a list of all previously created models.

image

When hovering over a model, a control appears to delete it. This removes only the model information but not the entities it created. Full entity deletion isn’t currently available, as it poses risks. However, based on demand, we may add this feature.

image

The created models page and the individual model page serve as a central hub for site administrators, consolidating controls for managing the entire data structure in one place. This setup also provides an overall view of each entity’s purpose on the site and its relationships with other entities.

JetEngine Calendar Module. Min/Max Year and Selects for Years and Months

Now, you can set a min and max year in the Calendar JetEngine module.

Previously, the only way to switch to a different month in the calendar was by using arrows. This was not convenient if you needed to go many years back or forth, e.g., from November 2024 to March 1992, as it required a lot of clicks.

Enable Date Selection

To solve this, a new setting called Allow date select was added to the Dynamic Calendar.

image

When enabled, the month and year in the calendar header become clickable.

image

By clicking, a dropdown select menu appears, allowing you to choose the desired month or year. Once selected, it navigates immediately, so going from November 2024 to March 1992 now only requires selecting March and then 1992, instead of almost many clicks on arrows.

Additional Settings

image

These controls allow you to limit the year selection to only the years present in the query, which cannot be auto-detected and must be estimated by the user.

By default (if max and min years are not set here, and the controls are left empty), the available date range will be 1970-2038.

Setting Min and Max Years Depending on the Current Year

Sometimes, you may want to set min and max years relative to the current year, such as [current year (2024) minus 5 years]. This can be done as follows:

The resulting dropdown would look like this:

image

Macros can also be used (e.g., to pull the minimum or maximum year from an options field or a post field).

For instance:

image

image

image

Now, the calendar’s minimum year is pulled from the Options Pages’ field.

Drag-and-Drop Custom Ordering for Related Items on the Back End with Front-End Result Display

Now, you can drag and drop related items to change their order on the back end, and the changes will be reflected on the front end.

image

The only problem here - each time we need to set new order of items in the DB. If do this on the fly, after item reordering - it will use a lot of server resources and could cause UX problems. So, after reordering items, user need to manually confirm re-ordering and after this the new order will be written into the DB. If user reload page without confirming re-order, these changes will be lost.

image

How to apply the new order on the front end

After changing the order in the admin panel, all methods (macros, dynamic tags, etc.) that return a list of related IDs for a given post (user, term, etc.) will reflect the new order. However, suppose you are not just displaying this list of IDs directly but passing it as an argument to a query builder. In that case, you need to specify in the sorting settings of the corresponding query to order the results according to the sequence of IDs in the provided option. The settings and sorting options vary for each query type.

Querying related items for Posts

image image

Querying related items for Users

image image

Querying related items for Taxonomy Terms

image image

For Custom Content Types (CCT)

image image

Quick Query Editing for Listings on the Front End

When you hover over a widget/block containing a query (only available for JetEngine widgets), the "Edit Query" button will appear in the top right corner, as shown here:

image

After clicking this button, the pop-up opens where you can edit the query like this:

image

This button is visible only to administrators.

If you want to disable this feature, add the following code to your theme’s functions.php file or into a PHP snippet:

add_filter( 'jet-engine/query-builder/frontend-editor/is-enabled', '__return_false' );

Rich Text Сontrol Type for Components

A new control type, Rich Text, has been added.

image

For each builder where a component instance is used, this control is added through the corresponding control type for that builder. In Bricks and Elementor, these controls appear similarly:

image

For the Block Editor, however, things are more complex, as this type of control is only supported within the main editor canvas, not in the sidebar. To accommodate this, a custom solution was created:

image

For sidebar Rich Text controls, only an "Edit HTML" button is available. When clicked, the component content in the editor canvas is replaced with the control-specific content for advanced editing. Once you click "Done," the main component returns with the applied control settings.

image

Timber/Twig Editor. Emmet support

HTML and CSS editors (if you use the Timber/Twig View) now support the Emmet syntax - https://docs.emmet.io/abbreviations/. Abbreviations turn into code if you click on the tab.

image

Please leave your feedback and any found bugs or issues in the comments below

tobisalami commented 2 weeks ago

Can't wait to take it for a spin. I think it'll be a game changer, especially for those who already understand how the structure is meant to be. How do we improve the AI feedback? Is there a way we can further train it?

Once I get a hang of this, I'm going to make a video concerning it.

MjHead commented 2 weeks ago

@tobisalami at the moment we're using completion API to get the results, so you can improve result only by writing new, more specific prompts. Maybe in the future we'll try to migrate to an Assistant API to keep the context while working on the same website

amy-turner commented 2 weeks ago

Regarding the AI Website Structure Builder, this is a solid start on what could be an extremely useful tool.

In my first test, it's not accepting my prompts. When I click the "Preview Website Model" button, it keeps giving the error "Prompt is too long. Limit is 450 chars" no matter how many characters I have entered. I can't get past that point.

Let me know if any other info would be helpful.

CleanShot 2024-11-10 at 12 09 55@2x

MjHead commented 2 weeks ago

@amy-turner Hi! Thanks for the feedback, we already fixed this issue and tomorrow will upload 3.6.0-beta2 to the account

yasirshabbirservices commented 6 days ago

I just watched Paul video and it looks just game changer :)