Questions tagged [plugin-development]

WordPress Plugins allow easy modification, customization, and enhancement to a WordPress blog. Instead of changing the core programming of WordPress, you can add functionality with WordPress Plugins.

Filter by
Sorted by
Tagged with
8
votes
3answers
9k views

Getting Path To Uploaded Attachment Image After Upload

After you have uploaded an attachment in Wordpress using the media upload screen, is there a hook or filter I can run after the image has been uploaded where I can get the path to the uploaded image ...
8
votes
3answers
6k views

Is there a way for a plug-in to get it's own version number?

Is there an API I can call, inside my plug-in, to determine the plug-in's version? I just want to have my plug-in emit a html comment with it's own version number ... for diagnostic purposes.
8
votes
1answer
11k views

How to add tab which is visible only in admin side of product in woocommerce? [closed]

I am new in wordpress development. I want to do add settings in a product page in a new tab. How to I add settings code That I tried to add Tab //add product tab link in admin add_action(...
8
votes
3answers
20k views

Create a custom admin page for custom post type + taxonomies + metas

I'm writing a plugin that relies on custom post types, new taxonomy and few custom fields. All this data will be private (not queryable or searchable). I'd like to provide an admin page to the user, ...
8
votes
2answers
2k views

How to prevent Composer dependency conflicts amongst WP plugins?

In our plugin development we use Composer to install e.g. Symfony\Process that we later use in the code. The big question is how do we make sure that this dependency is not in a conflict with some ...
8
votes
1answer
23k views

How to Use Checkbox in Custom Option Page Using The Setting API

Can you please let me know how I can add a checkbox to Setting API in creating Custom Options Page? I am using the following code to add a txt box which is working perfectly but I am totally confused ...
8
votes
1answer
1k views

Do plugin files have to follow a specific convention to be “picked up” by WordPress?

I developed a plugin using the normal convention of naming the main plugin file after the plugin folder (i.e. prefix-someplugin for the folder and prefix-someplugin.php for the file). However, I saw ...
8
votes
4answers
14k views

Where to put third party PHP library?

I'm developing a couple of open-source plugins and a theme (all part of a "suite") that all use the same third party PHP library. I'm wondering what is the best way to include it in Wordpress. Here ...
8
votes
2answers
2k views

Loading external page template and enqueue script from plugin causes 403 forbidden error

I have a plugin, which creates a panel on following page: mysite.com/wp-content/plugins/myplugin/includes/mypanel.php I want to use this panel on following page mysite.com/mypanel Solution that I ...
8
votes
2answers
2k views

When to use Exceptions vs Error Objects vs just plain false/null

I'm in the process of writing a plugin and I'm trying to gauge when to use different approaches of handling errors. There are three methods I'm considering: Throwing an Exception (custom class) ...
8
votes
1answer
5k views

Is it worth checking if class_exists when developing a plugin and how to do it?

I'm learning WordPress plugin development using OOP approach. In most resources before declaring a class there is usually a check if class exists class_exists(). Is it a good approach to check this ...
8
votes
3answers
405 views

Getting a peer review for my new plugin?

What is the best way to get an experienced WordPress developer take a look at my plugin and give constructive criticisms? I have written code to solve some of my questions on this site, and I think ...
8
votes
3answers
3k views

How can I make it so the Add New Post page has Visibility set to Private by default?

I'm trying to create a plugin that alters the Add New Post page so the Visibility field says "Private" by default: Status: Draft Visibility: **Private** Publish immediately [Publish] ...as opposed ...
8
votes
3answers
770 views

Plugin directory “Last Updated” not changed after initial commit?

I released the first version of my Rewrite analyzer plugin with a commit on 2010-05-12. The WordPress.org plugin directory however still displays 2010-11-27 as the "Last Updated" date - this is the ...
7
votes
1answer
13k views

Export data as CSV in back end with proper HTTP headers

I wrote a plugin that displays all products in a woocommerce store in admin settings option, now I want to add a link to download the products as CSV file. The problem is, when I click the link I get ...
7
votes
2answers
1k views

My custom made plugin has “a new version available” which links to unrelated plugin

My custom made plugin has "a new version available", also the "view details" link links to a completely unrelated plugin. The plugin files begins with: <?php /* Plugin Name: Simple Contact Form ...
7
votes
2answers
3k views

Best practices for using the transients API

I've recently come across the Transients API in Wordpress in hopes of improving the performance of the plugin that I'm trying to write. Basically the plugin is storing product details from the amazon ...
7
votes
3answers
38k views

Create a table in custom plugin on the activating it?

I'm trying to create a custom plugin where I want create a table when the plugin gets activated. I have tried the following code but it is not creating the table in the database function ...
7
votes
3answers
4k views

How do I log plugin (cron) actions?

Is there a recommended way to log (failed) cron actions from your plugin? For example, I have a plugin that synchronizes with an external service every hour. I want to log how much was changed, but ...
7
votes
2answers
4k views

dbDelta only creates the last table

I'm using following install function with dbDelta as referring to the codex, articles on SO I watched out for the typical problems with e.g. one space instead of two spaced at the PRIMARY KEY ... ...
7
votes
2answers
8k views

Using add_theme_support inside a plugin

I've created a custom post type as a plugin and released it into the repository. One of the core features involves using a featured image. I've added thumbnail to $supports in register_post_type(), so ...
7
votes
2answers
11k views

Making a plugin file accessible via url rewrite?

In my WordPress plugin I have a php file that generates some stats about the blog and outputs it as a simple text file. To access WordPress functions I've included this at the top of the file: define(...
7
votes
2answers
3k views

What is the correct way to build a widget using OOP

I am working on a simple search form widget, with a built in autocomplete capability (You can download the current version here). The plugin is working, but I am currently rewriting all the code using ...
7
votes
3answers
7k views

How do I create links at the top of WP_List_table?

I am trying to create links like the ones in the post tab (see image below). I created my WP_List_table but I am not sure how to create those links or how to get them to show a different db query. I ...
7
votes
4answers
4k views

Default table collation on plugin activation?

I'm following this to make my plugin auto-create a table when the plugin is activated, but what happens is that while all the tables (the whole db) are utf8_general_ci, the newly created table is ...
7
votes
3answers
15k views

error_log() output for print_r() appearing on page

I am trying to debug a plugin and am using error_log() in various places to see what various things are. I am using the following: error_log( print_r( $variable ) ); When I look at debug.log, all I ...
7
votes
2answers
2k views

wp.media update options and force render on uploader

Elliot here from the "Advanced Custom Fields" plugin. I'm working on integrating the new WP 3.5 uploader into the ACF plugin and can't find much documentation about the new uploader at all! Creating ...
7
votes
1answer
573 views

Optimize shortcode callbacks

I created a plugin to add some shortcodes in my WordPress site. But I'm a PHP newbie, so I believe it may have some errors or ways to optimize it. It's working fine, and apparently there are no ...
7
votes
1answer
2k views

Nonces can be reused multiple times? Bug / Security issue?

I've read that nonces are meant to be for one time use only, and after an ajax request, you should issue a new nonce so with the next ajax request, a new nonce would be sent to the server. However, I ...
7
votes
2answers
7k views

Include WP_Query in my own PHP file?

I want to write a cronjob for myself. But I need to get access to WP_Query and the permissions to delete posts etc. My question now is, how can I include the WP_Query function to my own PHP file and ...
7
votes
2answers
18k views

$wpdb->insert_id

I'm using $wpdb->insert to insert data to my plugin table. How can I get the id of the new line I Just insert. Because I have a lot of users that add data to the table I can't use $wpdb->insert_id ...
7
votes
1answer
26k views

How can I run AJAX on a button click event?

Update: I managed to get the AJAX working, but not in the click event. I updated the question to match this. I'm trying some code I found on the page: 'AJAX in Plugins'. However I can't get it to ...
7
votes
2answers
1k views

Accessing plugin settings in gutenberg

I'm trying to build a gutenberg block (via plugin) that interfaces with a third-party api via credentials. I'm unsure how to, or even if I can, access a plugin's settings in gutenberg in order to grab ...
7
votes
1answer
707 views

Unit tests - Dealing with dependencies

This might be seen as a corollary of Testing hooks callback. The issue: I want to test a class which creates a new instance of a My_Notice class defined outside the plugin (let's call it the "Main ...
7
votes
1answer
5k views

Add async script

I am working on a plugin that has to inject a script on pages (something like RefTagger), which would be easy using wp_enqueue_script, but there are two reasons I cannot do that: the script tag has to ...
7
votes
4answers
14k views

How to properly validate data from $_GET or $_REQUEST using WordPress functions?

I am working on a plugin that requires on-the-fly manipulation of content output. This is solely dependent on the current $_GET variable or $_REQUEST variable. Depending on what the variable is set ...
7
votes
2answers
2k views

register_uninstall_hook() vs uninstall.php - which one is better way to handle plugin uninstallation script?

today while looking inside WP Codex, I saw two ways to handle plugin uninstall scripts (like deletings, options, data, tables etc.). One way is using register_uninstall_hook() and the other is by ...
7
votes
2answers
5k views

Creating a Custom Post Type as a Plugin? Why?

I've been experimenting with creating a Custom Post Type as a plugin (because I've seen this recommended in various places). But I have a question not about the how, but rather the why of building ...
7
votes
2answers
1k views

Strategies to implement selective loading of plugins

I'm trying to figure out some kind of mechanism to load plugins on demand, depending on the page url, to improve performance. My primary concern is that I have some admin-ajax.php calls that are ...
7
votes
1answer
1k views

WordPress 4.5 deprecated get_currentuserinfo()

As of about 10 days ago, WordPress 4.5 developers deprecated get_currentuserinfo() as a pluggable function. Unfortunately my plugin uses it's own get_currentuserinfo() to login users from an external ...
7
votes
2answers
968 views

Completely remove WP_Admin_Bar for specific user roles

How do I hide/remove the admin bar that is displayed when a user with specific role is logged in? I figured I have to do something with remove_menu(), but not exactly what and how. Codex
7
votes
3answers
15k views

Quick edit screen customization

Possible Duplicate: How to show custom meta box on "Quick Edit" screen? I'm trying to edit the quick edit screen on my custom post type "visitor" so that I can add some options for my end-users. My ...
7
votes
1answer
458 views

Custom action button in Gutenberg editor (post_submitbox_misc_actions - equivalent)

On Classic Editor and Wordress 4.x i used 'post_submitbox_misc_actions' action to add custom control to submit box area. Is there a way to do this in Gutenberg editor? Some equivalent to old action? ...
7
votes
2answers
750 views

What is an alternative method to the WordPress private _doing_it_wrong() function

I've noticed plugins using a singleton pattern that will use WordPress's _doing_it_wrong() function in their clone() methods, like so: <?php public function __clone() { _doing_it_wrong( ...
7
votes
1answer
1k views

WordPress and PHP Sessions - Security and Performance

I'm writing a WordPress plugin to deal with a third-party API. This API requires a session identifier be passed to it so that the API (which basically functions as a third-party cart) knows what ...
7
votes
1answer
333 views

Admin settings update updating every time home page is hit?

I have created a plugin that sends an email with all orders placed that day by X o'clock to email Y. I followed the tutorial here: https://scotch.io/tutorials/how-to-build-a-wordpress-plugin-part-1 ...
7
votes
1answer
1k views

Mini-Site Strategy

I'm working on a project to allow a number of mini-sites within a WordPress multisite installation. Here's how it's supposed to function: The client has a large number of individual locations, each ...
6
votes
17answers
441 views

The Great Plugin Nomenclature Contest of 2011

It's been a while since I've done a bounty challenge, so here's another. Same basic rules: 1 answer per person, most creative/useful/helpful/entertaining answer wins. This time around, the award will ...
6
votes
1answer
8k views

Fatal error: Class 'ms\WP_Query' not found on plugin initialization [closed]

How can I make a call to WP_Query on plugin initialization and save posts data to $data? I am getting Fatal error: Class 'ms\WP_Query' not found no matter on which hook I call the method. Even if I ...
6
votes
1answer
18k views

WordPress Hook for user register

how can I tell WordPress, that if a user registers, it shall execute my function?

1
3 4
5
6 7
121