# WPBE - WordPress Posts Bulk Editor Professional v.2.0.0

## Professional way to manage posts and custom post types data of your WordPress site!

View the Plugin Site Support

- Created: 29-07-2019 (d-m-Y)
- Latest update: 31-07-2019 (d-m-Y)
- By: realmag777
- Site: wp.bulk-editor.com
- Contact&Support: PLUGINUS.NET

Thanks you for buying of my plugin. I hope its will give for your site more power and more flexibility with the data!

### Installation

1. Go to your codecanyon account on page download to get the plugin bundle
2. Unpack downloaded codecanyon bundle zip
3. In your wordpress site go to: http://YOUR_SITE.com/wp-admin/plugin-install.php?tab=upload
4. Press there button 'View'
5. Find unzipped codecanyon folder, open it, find there bulk-editor.zip and select it
6. Press 'Install Now' link
7. Wait a little
8. After installation finish press 'Activate Now' link
9. WPBE page on: http://YOUR_SITE.comwp-admin/admin.php?page=wpbe

### Posts Editor

The plugin has 5 basic tabs - Posts Editor, Settings, Meta Fields, History, Help and 3 operating tabs: Filters, Bulk Edit, Export. All basic operations are performed in the first tab Posts Editor.

This is main tab and all another are services for this one. 2 first columns always visible - checkboxes and posts ID and its not possible to disable them or change their order, last columns with 2 blue buttons also not possible to disable or reorder.

Using checkbox is possible to select one or more posts. To select some posts select first one, then press SHIFT button on your keyboard and select last one. The same way working deselection of the posts - deselect first one and pressing SHIFT button on your keyboard select last post to deselect all posts between them.

Selecting posts by chekboxes allows you to set posts which values are possible to change using Bulk Editor tab form and also if to enable 'binded editing' it is possible to change any value in any one selected posts and the same value will be set to all another selected posts.

Also after selecting posts in the tools panel will be appeared some new blue buttons as: duplicate posts, remove posts, uncheck all selected posts.

### Tools panel

- Set full width - allows to hide/show wp-admin navigation sidebar
- Columns profile - allows saving and load columns profiles which helps load necessary columns structure and their order instantly. Convenient with bulk editing and export different set of posts data.
- New posts - creates new empty posts using WordPress API functionality
- binded editing - in this mode, in the the same column of all selected (checked) rows, will be set the value of the column which been edited in all selected posts.
- Duplicate posts - allows to duplicate (clone) selected posts.
- Remove posts - allows to remove selected posts. If you by mistake removed some posts you can revert them back in on the posts trash page here wp-admin/edit.php?post_status=trash&post_type=post
- Post type selector - drop-down for selecting post type you want to manage
- Uncheck all selected posts - deselect all selected posts
- Per page - set how many posts display per page, max value is 100.

Last column with 2 blue buttons allows to see the post on the front and also edit post on its edit page as you did it before installing WPBE.

All fields has attached interactive elements which allows edit its value by click on it. The simplest is textinput attached to such columns as title and meta fields. Click on it one time, enter new value and press Enter button to save and complete editing. All columns can be enabled or disabled in tab Settings. All another interactive elements are simple and intuitive. The plugin has about ~20 different predefined columns.

Some fields (title, numeric meta, date) can be ordered by their values.

ATTENTION: WPBE works with PHP from 5.4 to 7.3 and its recommended to use PHP 7.x.x. Also do not show all system columns on the page on the same time as its possible to get 500 server error because of memory overloading - use columns you need for the current operation, the more - profile system allows to switch between "predefined columns set" very quickly (columns profile button). Also by the plugin design to avoid memory overloading, maximum posts per page is 100 - you can edit as all posts in the shop on the same time using tab Bulk Edit, so you can filter posts by Filters and then bulk edit only filtered posts. As the system uses rich interactive elements its takes more server resources from one side, but from another its provides reliability, compatibility and high managing possibilities for your site data.

If you edited data in some posts and decided that you entered wrong data it is possible to roll back changes in tab History.

If you need edit meta fields generated by any plugins (for example SEO meta title of any SEO-plugin) use tab Meta Fields to add new meta keys, save, select them in tab Settings and press save button - now all them are visible and ready for editing in the Posts Editor. Usually a meta field has long key, so to avoid making its column too wide in tab Meta Fields set short title for the meta key.

Also read:

- Calculator

### Settings

### In this tab you can do next:

- Activate columns and set their order
- Set personal settings for the current user - different users can work with the posts data using WPBE on the same time and not interfering with each other

Settings tab page divided into 2 columns: columns settings and total settings.

### In column settings possible:

- columns activation/deactivation
- changing columns titles
- select columns background color
- select columns text color
- set columns order using drag-and-drop method
- set columns visibility for site editors. Yes! You can set what fields your site editors can edit 🙂

### In Total settings possible:

- Default posts per page - How many rows of posts show per one page in tab "Posts Editor" after editor page loaded. Max possible value is 100!
- Default sort by - Select column by which posts sorting is going after page loaded
- Default sort - Select sort direction for "Default sort by" column above
- Show button in admin bar - Show "Bulk Editor" button in admin bar for quick access to the posts editor.
- Show thumbnail preview - Show bigger thumbnail preview on mouse over
- Load beauty switchers - Load beauty switchers instead of checkboxes in the "Posts Editor" table. ATTENTION: with a lot of posts per page (100) - table redrawing will take some more time!
- Site editors post types - What post types can edit site editors in the tab Posts Editor. Use comma, example: post,car,page

After WPBE activation all columns related to the WordPress posts will be in this current tab. All custom taxonomies created for current selected post type will be attached here automatically, so you will just need activate it in this tab. To add any meta data fields firstly it is necessary to add their keys in tab Meta Fields, and then activate it in the columns settings.

Using columns settings you can decide which posts fields your site editors can manipulate, and by the way they can do their job on the same time with you as all WPBE settings are different for each user and not interfering with each other if you NOT edit the same field, so be care.

For quick columns searching use the text input above - 'columns finder'

Both 'Save all settings' buttons do the same work, so no matter what button to press - both saves all the data which are presented in the Settings tab.

- Recommended minimum RAM: 256 MB
- Minimal PHP version is: PHP 5.4
- Recommended PHP: 7.xx

### Meta Fields

In this tab you can attach all posts meta fields related to the posts in 2 ways ways:

- Add Custom key by hands - add keys by hands, do it when you know meta key
- Get keys from any post by its ID - convenient way get all meta keys and leave all you need. Just drop in the textinput the post ID which has already filled up all meta data you need and press 'Get' button or Enter on your keyboard.

After adding meta key in the system select which type data keeps there and how to display it in the Posts Editor. For decimals select type 'number' and string for all another types. If data is logic and can be 1 or 0 - select view type as checkbox.

Do not forget to rename meta fields title, because usually it has long title (equal to key string) and without changing this title its column in the Posts Editor will be to wide.

After adding meta keys, renaming and selecting its view type click on 'Save meta fields' button. After page reloading go to tab Settings and activate that new columns to make their data editable. Press save button. Now you can see them in the plugins tab settings, tab Filters and tab Bulk Edit. Do not forget that you can save current columns set in profiles (see profiles button on tools panel of the Posts Editor) to load them quickly in the future.

### History

Sometimes mistakes happens, and it is not appropriate for the site posts data. To roll back to the previous data will help tab History, where it is possible to roll back nearly all the posts data as for one post so for bulk operations.

ATTENTION: History doesn work with the posts removing.

Some buttons in this tab you interested in:

- Clear the History - remove the history for the current logged-in user. Do it before starting of your work day to avoid big heap of history data where you can get lost.
- Revert - button which displays on each history operation. Clicking this button revert data to the post field ID and title of which you can see on the left side
- Delete - remove a history item forever

Different logged-in users has their own history to avoid data messing. So admin and his site editors can work together without misunderstanding. Of course if they not edit the same post field for the same posts!

All bulk operations marked as 'Bulk operation' describes time of the operation (from - to), count of edited posts, operation status (completed or terminated) and columns/fields names which been edited in the posts.

On the left top of the tab you can see filter for history operation.

### Filters

In tab Filters it is possible to filter all posts of the site and see results in the Posts Editor table.

Nearly all columns displays there. Attached Meta Fields also are visible here and its possible to filter by them also. Filters is very important tool in the plugin as they allows to select posts by taxonomies and meta fields and edit them using Bulk Edit tab and also do data Export.

After filtering on the tools panel appears filtering reset button (see the screens below) which duplicates functionality of 'Reset' button in the Filters tab.

### Behavior drop-downs

Near textinputs of the text filters fields you can see drop-downs which declare search behavior:

- LIKE - will be found posts where textinput value is exact or like a part of the text(title for example)
- EXACT - will be found posts where textinput value is exact as in the text(title for example)
- NOT - will be found posts where textinput value is not presented
- BEGIN - will be found posts where textinput value is on the text(title for example) begin
- END - will be found posts where textinput value is on the text(title for example) begin

For searching by posts ID always uses 'EXACT' only. Also for searching for some posts by ID you can use comma for example: 23,586,777. Also it is possible use ranges like: 29-32 - will be found posts from ID 29 to ID 32.

HINT: for text searching you can use next syntax: logo^with^!1111- will be found using behavior 'LIKE' all posts where is text-part(title for example) or exact word 'logo' OR 'with' AND not (!) such text-part as '1111'. So if we looking for posts by titles, will be found smth like: Logo Collection, T-Shirt with Logo, Hoodie with Pocket - all founded titles can not has text-part as '1111'. And make your attention that all operations with NOT (!) should be at the end of the string!!

To print sign '^' press SHIFT+6.

Note: If your site in Russian language you should install this plugin for correct working of WPBE with Cyrillic

Near taxonomies you can see drop-downs which declare search behavior:

- OR - will be found all posts which has one of the selected terms
- AND - will be found all posts which has all selected terms
- NOT IN - will be found all posts which has no one of the selected terms

Between taxonomies always relation is 'AND'!

### Bulk Edit

Tool which allows realize bulk editing of the data in your site in 3 ways: to all posts, to filtered posts, to selected (checked by checkbox) posts. Selected posts has more high priority, so if posts filtering done and there are selected posts - bulk editing will be applied to the selected posts. Deselect selected posts, using button on the tools panel, to apply bulk editing to the filtered posts.

CLARIFICATION: Bulk editing not only applied to the posts on the current page of the Posts Editor - its applied on all posts on all pages with 2 ways of targeting: filtering and selection. Posts selection with checkboxes is possible only on current page, if click to another page selection will be reset.

### Fields

- Thumbnail
- Title
- Content
- Excerpt
- Slug
- all attached to the system text meta fields
- Status
- Comment status
- Ping status
- Send trackbacks to
- Post password
- Menu order
- Author
- Date Published
- Date Published GMT
- Post modified
- Post modified GMT
- all attached to the system decimal meta fields
- Post parent
- Post type
- Post mime type
- Sticky
- All taxonomies which related to the posts

ATTENTION: to activate any field in bulk editing form enable it using checkbox in it

### Behavior drop-down for text values:

- append - value will be attached to the end of the existed value
- prepend - value will be attached to the bedining of the existed value
- new - existed value will be removed and replaced by new value
- replace - value will replace text in the existed text

### Behavior drop-down for decimal values:

- increase by value - the result will: existed value plus entered value
- decrease by value - the result will: existed value minus entered value
- delete - set NULL
- set new - new value will replace existed value
- increase by % - the result will: existed value plus (existed value multiply entered value)/100 - entered value means percents
- decrease by % - the result will: existed value minus (existed value multiply entered value)/100 - entered value means percents

HINT: it is possible to copy data from meta fields using next syntax: {meta:_woocs_regular_price_USD}. Just drop it in any text cell OR apply in bulk editing operation to get the same value there. Read more here

### Export

Functionality of this tab allows to export all posts of the site.

To export posts you can use some ways:

- Do nothing, and in this case all posts in the shop will be exported
- Filter posts you need by categories or by any another parameters
- Select posts using checkbox of the first column and only them will be exported
- Filter posts you need by categories or by any another parameters AND then select any you want

All export ways do exporting with current data structure (current columns set)!

Export is possible in CSV only. After exporting you can download file wpbe_exported.csv with posts and open it with Excel or Open Office programs BUT remember about DELIMITER of the separated data! CSV data delimiter you can select using special drop-down in the tab.

After export process finish - download button appears.

### Calculator

For all decimal data cells in the Posts Editor attached calculator which allows recount the data quickly without direct edit in its cells.

### How to use:

- Set mouse over the cell you want to edit. Calculator icon appears
- Click on the calculator icon
- Select operation + or -
- Select operation type: n - number, % - percents
- Enter relevant value you want to the textinput
- Click on first blue button ˅ or press Enter button on your keyboard

### Numeric meta fields rounding which type is number

Select how to round float values fractions in the numeric fields. Sometimes site editor want to specify rounding precision when changing for example prices and its possible with calculator so with Bulk Edit tab functionality.

Let's consider way with calculator. You can use this way if all the posts which prices you want to change is visible on one page.

- select posts you need using checkboxes
- enable 'binded editing'
- click on calculator on the cell you need, for example let it be price cell (hover mouse pointer on the cell to see calculator icon)
- enter natural value or percentage and select 'rounding' there
- press accept button and wait until data set finished

Second way allows set rounding prices for filtered posts or all posts on the site (in this case do not filtered posts). For example:

- filter posts by any category using functionality of tab Filters (or skip this step)
- go to Bulk Edit tab
- in 'numeric' section enable 'regular price' field and set value there
- and then select cents rounding as on the screen below
- click on 'Do Bulk Edit' button and wait until operation is finished

Information about rounding behavior:

- no rounding - rounding will not be applied
- 5 - values will be rounded to numbers like: 23.75, 44.45, 11.15
- 10 - values will be rounded in numbers like: 23.70, 44.40, 11.10
- 9 ... 99 - will round values in numbers like: 23.09, 44.49, 11.99

Also, if it's necessary to realize your own rounding logic it is possible to use hook 'wpbe_number_field_manipulation':

                        add_filter('wpbe_number_field_manipulation', function($value, $field_key, $post_id) {
                            //write your logic here
                            return $value;
                        }, 10, 3);

The code above you should apply in file functions.php of your current WordPress theme.

### Creating an extension

WPBE allows to create custom extensions which should be placed in folder: wp-content/wpbe_ext Here are some existed native extensions for example:

- Calculator
- Export
- Info

Extension functionality can be presented in tabs: top tabs and basic tabs, or without any tabs, as 'calculator' for example. Let's consider the most simple extension as Info:

- Its folder has name 'info'
- Inside folder 'info' should be: info.php, views/panel.php, js/info.js, css/info.css and can be also folder img if its necessary
- info.php has PHP class inside as WPBE_INFO which extends class WPBE_EXT
- in class WPBE_INFO should be defined protected variable $slug with value 'info'
- in the constructor of class WPBE_INFO should be defined next code to create tabs:

      $this->add_tab($this->slug, 'panel', __('Help', 'bulk-editor'));
      add_action('wpbe_ext_panel_' . $this->slug, array($this, 'wpbe_ext_panel'), 1);

  To create tabs in the top slider (where is filter,bulk,export) the code should be:

      $this->add_tab($this->slug, 'top_panel', __('Help', 'bulk-editor'));
      add_action('wpbe_ext_top_panel_' . $this->slug, array($this, 'wpbe_ext_panel'), 1);

  Look closer to the code to see the difference: panel -> top_panel; wpbe_ext_panel_ -> wpbe_ext_top_panel_
- If we need to use any js and css in the our extension write function wpbe_ext_scripts:

              public function wpbe_ext_scripts() {
                  wp_enqueue_script('wpbe_ext_' . $this->slug, $this->get_ext_link() . 'assets/js/' . $this->slug . '.js');
                  wp_enqueue_style('wpbe_ext_' . $this->slug, $this->get_ext_link() . 'assets/css/' . $this->slug . '.css');
                  ?>
                  <script>
                      lang.slug ?> = {};
                      lang.slug ?>.example= "";
                  </script>
                  <?php
              }

- Function wpbe_ext_panel will show any forms we need to see in our application. Of course it will show HTML code which you will write in file views/panel.php, for example any popups there
- So now we have the most simple application which is possible to create. To write your logic you need to see code of extensions which you can download on this page as examples or see native extensions of WPBE in folder wp-content\plugins\bulk-editor\ext
- ATTENTION: for external extensions should be defined protected variable $is with value 'external'

### Some actions:

- wpbe_adv_panel_buttons_end - will add any html on the end of tools panel in the Posts Editor tabs, see example in extension 'bulk'
- wpbe_adv_panel_buttons - will add any html on the beginning of tools panel in the Posts Editor tabs, see example in extension 'bulk'
- wpbe_page_end - with this hook you can render any additional html elements you need for your application, see as example extension calculator
- wpbe_before_update_page_field - hook which can be executed before posts field update: models/posts.php
- wpbe_after_update_page_field - hook which can be executed after posts field update: models/posts.php

      add_action('wpbe_after_update_page_field', function($post_id, $post, $field_key, $value, $field_type) {
          //do smth here
      });

- wpbe_bulk_started - hook before bulk editing started: \ext\bulk\bulk.php
- wpbe_bulk_going - hook while bulk editing going: \ext\bulk\bulk.php
- wpbe_bulk_finished - hook after bulk editing done: \ext\bulk\bulk.php

### Some variables:

- wpbe_checked_posts - (js) ids of the selected posts in the Posts Editor
- wpbe_bind_editing - (js) is bind editing enabled
- wpbe_adv_panel_full_width - (js) is full width activated
- global $WPBE - (php) global plugin main variable you can use

### Localization

All words wrapped in wordpress function '_e' or '__'. So it is possible localize it for any language.
For this you are need create .po file and edit it with poedit.
Get more info here.

### More ...

- How To