Can ChatGPT Build a Useful WordPress Plugin That Actually Works?

0
53

Can AI flip non-coders into professional WordPress plugin builders? To discover out, we requested ChatGPT to construct a customized WordPress plugin from scratch after which had our crack group of builders look at the code…

AI is the world’s hottest two-letter phrase proper now. With all of the current information headlines about whether or not AI will take our jobs away, we wished to know… can ChatGPT really develop a practical and helpful WordPress plugin with out having to jot down code from scratch? And does the plugin meet finest coding practices?

Fortunately, WPMU DEV builds a few of the most strong WordPress plugins on this planet, so we now have loads of knowledgeable WordPress plugin builders who can put ChatGPT to the take a look at.

In reality, in the event you take a stroll round our firm’s digital corridors, you may’t assist however stumble upon WordPress coders and builders. It appears everybody round right here can have a look at a WordPress plugin and see PHP the way in which Neo sees the Matrix’s digital rain code.

Matrix code
What PHP code appears to be like prefer to skilled WordPress plugin builders. Source: Giphy.com

Everyone, that’s …besides me!

I’m simply a weblog author with no coding expertise and a burning want so as to add “prompt engineer” to my CV.

So, on this publish, we’ll discover the best way to leverage the facility of ChatGPT to construct a easy customized WordPress plugin shortly and securely, even in the event you lack intensive coding expertise.

We’ll do that by:

1) Asking ChatGPT to generate the code for a helpful plugin that we will take a look at, and

2) Running the code generated by ChatGPT previous our group {of professional} plugin builders to allow them to evaluate it and supply their sincere suggestions.

We’ll cowl the next:

Step 1 – Define the Plugin’s Functionality

Before utilizing ChatGPT to generate code, we have to have a clear understanding of the performance we wish our plugin to supply.

This begins by outlining the precise options, actions, or modifications we’ll need to obtain with our plugin. This will then assist us generate correct prompts for ChatGPT and be sure that our AI-generated code aligns with our desired outcomes.

Step 2 – Generate Code Snippets with ChatGPT

To generate our code snippets utilizing ChatGPT, we’ll maintain issues easy (and free) and use the freely out there interface offered by OpenAI.

Take #1…

Note: My first try at utilizing ChatGPT to create a WordPress plugin from scratch was means too formidable. I requested ChatGPT to construct me a easy WordPress time-travel dummy textual content producing plugin, utilizing the immediate under…

ChatGPT - WordPress plugin creation prompt.
This immediate will certainly kick ChatGPT’s WordPress plugin growth tyres.

As somebody who spends a lot of time writing WordPress tutorials, I typically want dummy content material to check plugins, create screenshots, and so on.

So, I believed it could be nice to mannequin my AI-generated dummy content material plugin on a plugin I typically use known as FakerPress.

ChatGPT pushed again on my request and let me know that creating a absolutely practical WordPress plugin with all of the options I requested was past the scope of a single response.

However, it did supply to supply me with a primary template, information me on the best way to implement a few of the options I discussed, and even gave me directions on the best way to create a plugin listing and file…

ChatGPT response to WordPress plugin development prompt.
Mmm…possibly my first try at creating a WordPress plugin was too formidable!

At first, ChatGPT output code that regarded fairly spectacular…

ChatGPT code
To somebody who is aware of ‘zip’ about coding, the above code snippet certain appears to be like spectacular!

ChatGPT additionally output all the extra code required to finish the subsequent steps.

ChatGPT - WordPress plugin development prompt.
Lacking coding expertise, I relied on ChatGPT to information me by means of every step of the plugin growth course of.

With the plugin code output, the subsequent step was to add the plugin to my take a look at web site and take a look at it to verify it really works.

Step 3 – Test The Custom Plugin

After importing the folder containing the plugin code to the wp-content > plugins listing of my take a look at web site and activating it contained in the Plugins display screen…

Plugins screen - Dummy Content Generator activation menu link.
And now for the second we’ve all been ready for [drumroll]…

I bought a deadly error!

Plugins screen - Fatal error message.
What an anticlimax…the bottom level of my WordPress plugin growth profession!

Assuming that possibly I didn’t add the extra snippets that ChatGPT offered appropriately, I went again and requested for all of the code to be offered as a single file that I might merely copy and paste to overwrite and replace the uploaded plugin file…

Screenshot of ChatGPT prompt and response.
Why couldn’t it simply have given me your entire copy and paste code the primary time?

There was a lot of code to output, so each time the method got here to a standstill, I instructed ChatGPT to proceed…

Screenshot of ChatGPT prompt and response.
ChatGPT generally simply wants a little mild encouragement to maintain going.

After repeating this course of a number of occasions, ChatGPT output your entire code and even offered some useful data.

Screenshot of ChatGPT response.
After ready a entire 2 minutes…ChatGPT lastly output the entire plugin code!

I uploaded the plugin file with the brand new code to my take a look at web site, then jumped into the location’s admin space and activated the plugin.

It labored! Or, so it appeared.

ChatGPT gave the plugin its personal menu merchandise…

Dummy Content Generator WordPress plugin -created by ChatGPT
ChatGPT created all this!

And a settings display screen with plenty of fancy packing containers and fields…

Dummy Content Generator WordPress plugin settings screen.
Looks spectacular…however will it work?

But I couldn’t see a subject to specify what number of posts or pages to create, so I merely ticked some packing containers, entered some values, and clicked on the “Save Changes” button to see what occurs.

Dummy Content Generator WordPress plugin -created by ChatGPT
And now, for the second of fact…

And…completely nothing occurred!

WordPress Posts Table showing a sinlge "Hello world" post.
The latest lowest level of my WordPress plugin growth profession…a plugin that does nothing!

My fancy-ass plugin was all make-believe, similar to a kind of kids’s playground spaceships that’s stuffed with ineffective knobs you may flip and buttons you may press whereas pretending to be flying in outer area.

So, I reached out to certainly one of our builders through Slack and requested them to have a look at the plugin file.

Some of the feedback that got here again included the next:

  • “The plugin tries to generate random content on each and every admin page load”
  • “It calls a operate dummy_content_generator_generate_content_paragraphs which, in flip, makes an attempt to name dummy_content_generator_get_random_paragraph for each paragraph it tries to generate. The downside is that there isn’t any dummy_content_generator_get_random_paragraph operate.
  • “The page loads to a point, then it errors out because there’s more missing stuff”
  • “Other than all the mentioned issues, there’s no validation whatsoever, and no escaping of the output, which is terrible”
  • “In terms of having something as starting point, this is a very, very poor one. In terms of having a working plugin, this is nowhere near that”

After some backwards and forwards discussions , it was deemed that there was fairly a lot mistaken with the plugin, that it could take a lot of labor to repair it, and so they recommended I scrap the challenge.

At this level, nonetheless, I used to be too invested in my mission to easily abandon every little thing and quit. Recalling Sir Winston Churchill’s well-known phrases (“Fetch me another brandy” “Never give in, never give in, never, never, never…”), I made a decision it was time for…

Take #2…

Ok, so my first try and get ChatGPT to construct a WordPress plugin from scratch was a dismal failure. This in itself offered some helpful insights into ChatGPT’s skill to carry out complicated coding duties (or, as somebody within the group put it, “you can’t code using ChatGPT without having extensive coding knowledge.”)

So, for “Take #2,” I made a decision to attempt once more with a less complicated plugin request.

Going again to the drafting board, a genius lightbulb second lit up in my thoughts…why not ask ChatGPT to recommend concepts for easy WordPress plugins it might then generate the code for?

So, that’s what I did. Here’s the immediate I promptly engineered…

ChatGPT prompt for generating WordPress plugin ideas.
My genius immediate.

And right here’s the listing of recommended plugins ChatGPT replied with…

ChatGPT - List of WordPress plugin ideas.
The blueprint of my WordPress plugin empire.

I preferred the final suggestion, so I requested ChatGPT to generate the code for a practical content material duplicator plugin, and it instantly went to work.

ChatGPT prompt to generate code for a WordPress plugin that duplicates content.
This is what a license to print cash appears to be like like!

ChatGPT generated the next code for the plugin within the blink of an eye fixed:


<?php
/*
Plugin Name: Content Duplicator
Description: Allows customers to duplicate posts, pages, or customized publish varieties with one click on.
Version: 1.0.0
Author: Your Name
Author URI: https://yourwebsite.com
*/

// Add duplicate motion hyperlinks to publish row actions
operate content_duplicator_add_duplicate_link( $actions, $publish ) {
    if ( current_user_can( 'edit_posts' ) ) {
        $actions['duplicate'] = '<a href="' . wp_nonce_url( admin_url( 'admin-post.php?motion=content_duplicator_duplicate_post&post_id=' . $post->ID ), 'content_duplicator_duplicate_post' ) . '" title="Duplicate this merchandise" rel="permalink">Duplicate</a>';
    }
    return $actions;
}
add_filter( 'post_row_actions', 'content_duplicator_add_duplicate_link', 10, 2 );

// Duplicate the publish
operate content_duplicator_duplicate_post() {
    if ( isset( $_GET['post_id'] ) ) {
        $post_id = absint( $_GET['post_id'] );

        if ( current_user_can( 'edit_posts' ) && wp_verify_nonce( $_GET['_wpnonce'], 'content_duplicator_duplicate_post' ) ) {
            $publish = get_post( $post_id );

            $args = array(
                'post_title' => $post->post_title . ' (Duplicate)',
                'post_content' => $post->post_content,
                'post_type' => $post->post_type,
                'post_status' => $post->post_status,
                'post_parent' => $post->post_parent,
                'post_author' => get_current_user_id(),
            );

            $new_post_id = wp_insert_post( $args );

            if ( $new_post_id ) {
                // Duplicate meta fields
                $meta_fields = get_post_custom( $post_id );
                foreach ( $meta_fields as $key => $values ) {
                    foreach ( $values as $worth ) {
                        add_post_meta( $new_post_id, $key, $worth );
                    }
                }

                // Redirect to the duplicated publish
                wp_redirect( admin_url( 'publish.php?motion=edit&publish=' . $new_post_id ) );
                exit;
            }
        }
    }
}
add_action( 'admin_post_content_duplicator_duplicate_post', 'content_duplicator_duplicate_post' );


It even offered a set of directions after producing the code.

ChatGPT instructions.
The code not solely comes with directions, however ChatGPT even says “Please”!

I then uploaded the brand new plugin file to the wp-content > plugins listing of my take a look at web site utilizing The Hub’s file manager.

The Hub - File Manager
There’s a lot of motion to unpack on this screenshot.

And created a dummy publish to check the plugin with…

WordPress test post.
Did the plugin duplicate this tacky publish? Let’s discover out!

Here are the publish’s menu choices earlier than activating the plugin…

WordPress Posts table with single post entry.
A default publish with default choices.

After activating the plugin…

WordPress Plugins screen - Activate Content Duplicator
“Activate Content Duplicator” – Sounds like a line from a Star Trek film.

Success!

WordPress Plugins screen - Plugin activated message.
A gratuitous screenshot proving that the plugin efficiently activated.

The plugin activated. But did it really work?

Here’s my take a look at publish once more (be aware that the plugin added a new “Duplicate” merchandise to the menu after activation). I then clicked on “Duplicate” to see what occurs…

WordPress Posts Table - Post entry with a new Duplicate item.
ChatGPT even added a “Duplicate” menu merchandise tooltip to the code!

And a duplicate publish was created!

An example of a duplicated WordPress post.
A replica of the unique publish.

Here’s the desk of posts displaying entries for the unique and duplicated publish.

WordPress Posts table with original post and duplicated post.
The authentic publish and its cloned model.

I’m certain that with higher immediate engineering and a few code tweaking, the plugin might have been considerably improved. For instance, I would like if the plugin set the publish standing of the newly-duplicated publish to ‘draft’ as an alternative of publishing it, however ChatGPT delivered a easy WordPress plugin that labored. It was primary, but it surely did the job.

The final step was to ask somebody who codes WordPress plugins for a residing to scrutinize the code and get their opinion about utilizing a software like ChatGPT to code plugins.

Feedback from Our Expert Plugin Developers

Shortly after importing the plugin to certainly one of our testing channels, I bought a ping from certainly one of our builders. Here are a few of the key factors offered of their suggestions:

  • “ChatGPT et al are decent at answering questions you already know the answer to.”
  • “I also used it in the past to build a simple plugin for me, but as long as I was giving more complex prompts, it started to mess things around, so eventually I manually debug the given code to work, cause else it’d take ages for it to actually debug it line by line.”
  • “Basically, it does what it says. However, it does what it says very literally. As in, it will duplicate a post and its corresponding postmeta (custom) fields. However, it doesn’t seem like it will propagate any taxonomies to the duplicated post (the plugin should copy and assign the same taxonomy terms, such as categories or tags, from the original post to the duplicated post).”
  • If I used to be to be super-nitpicky about this, I’d additionally point out that it’s not L10n-ready – there received’t be an choice to translate this plugin. But, that’s simply being very nitpicky – I don’t actually assume, nor would I count on, a prompt-generated plugin to be generic sufficient to be needing one thing like that in any respect. To me, it’s extra of a “very specific problem domain” form of a factor, together with the language used. At the top of the day, it does do what it says it should, which could be very good.”

In addition to inspecting the WordPress plugin code generated by ChatGPT and offering suggestions as proven above, our builders additionally agreed with the next key factors after assessing ChatGPT’s present capabilities to generate code:

1 – It’s necessary to train warning and never blindly settle for ChatGPT-generated code as right.

  • ChatGPT can present solutions, but it surely’s as much as the person to evaluate whether or not the reply is right or not.
  • There is a threat of receiving incorrect or nonsensical solutions from ChatGPT, each apparent and refined.
  • It’s necessary to train warning and never blindly settle for the generated code as right.
  • ChatGPT’s output must be handled as autocomplete, making life simpler however requiring warning and verification.

The skill to discern good code from unhealthy or nonsensical code, nonetheless, implies that…

2 – Users ought to have adequate information and understanding of WordPress plugin growth to guage and modify the generated code as wanted.

  • ChatGPT can assist simplify and expedite the method of constructing easy customized WordPress plugins, generate code snippets, and supply explanations. Anything extra complicated, nonetheless, requires plugin growth expertise and coding expertise.
  • Using ChatGPT with out adequate information can result in unfavourable penalties or unreliable code.
  • Relying solely on ChatGPT with out essential considering is much like blindly copying the primary reply from Stack Overflow (Stack Overflow threads present extra context, a number of solutions, and suggestions from different customers, making it a extra dependable useful resource, however Stack Overflow threads are typically extra generic, whereas ChatGPT can present particular solutions to particular person queries).

3 – Utilizing different assets, similar to WordPress documentation, tutorials, and group boards, alongside ChatGPT can present a extra complete understanding of WordPress plugin growth.

  • As you discover the probabilities of utilizing ChatGPT for WordPress plugin growth, it’s helpful to interact with the WordPress group. Share your experiences, ask for suggestions, and search steerage from skilled builders. Participating in boards, attending WordPress meetups, or becoming a member of on-line communities can present helpful insights and make it easier to refine your plugin growth course of.
  • Additionally, take into account following WordPress safety finest practices to safeguard your web site from potential vulnerabilities. ChatGPT can present suggestions on safety measures you may implement to guard your plugin.
  • It’s additionally important to keep up a clear understanding of your required performance and totally evaluate and take a look at the generated code and safe your customized plugins earlier than deploying them to a manufacturing setting.

Can ChatGPT Turn You Into a WordPress Plugin Developer?

In this text, we’ve explored how one can make the most of ChatGPT to construct easy customized WordPress plugins, even if in case you have restricted coding expertise.

In different articles, we’ve seen that AI-powered instruments like ChatGP can streamline your workflow, increase productiveness, and unlock new prospects (take a look at our current article on ways that ChatGPT can help you as a WordPress developer).

While there are over 60,000 free WordPress plugins out there masking each kind of performance you may think about, generally you could want a customized resolution to satisfy a consumer’s particular necessities.

Beyond the core performance of your plugin, you may as well leverage ChatGPT to generate code for customized person interfaces. With its skill to know prompts and generate HTML, CSS, and JavaScript snippets, you may create intuitive admin interfaces, front-end elements, and interactive components that may improve the person expertise and will let you ship a polished remaining product.

By using the language mannequin’s capabilities, you may generate code snippets, optimize performance, and create user-friendly interfaces. However, it’s essential to know the generated code, evaluate and refine it, and totally take a look at your customized plugins earlier than deploying them to your dwell web site.

The generated code can also require changes to align with coding requirements, naming conventions, or particular challenge necessities. This requires a certain quantity of coding information and expertise, as does optimizing the code and making certain it follows WordPress coding tips for higher maintainability.

The backside line:

Here are my findings after attempting to get ChatGPT to code me a plugin from scratch:

  1. I couldn’t have gotten this achieved with out the assistance of our skilled builders.
  2. Using ChatGPT to generate code with out coding information is absolutely difficult – it helps to know what you might be doing 🙂
  3. While ChatGPT is a highly effective and helpful software, it doesn’t look like AI will change expert coders any time quickly.

Interested in Developing WordPress plugins?

Check out a few of our tutorials and articles on WordPress plugin growth:

Source link