=== WP htaccess Control ===
Author: António Andrade
Author URI: http://antonioandra.de/
Plugin URI: http://antonioandra.de/
Contributors: antonioandra.de
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=antonio%40antonioandra%2ede&lc=US&item_name=WP%20htaccess%20Control%20%28Antonio%20Andrade%29&no_note=0&currency_code=EUR&bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHostedGuest
Tags: permalinks, permalink, author, htaccess, rewrite, redirect, admin, maintenance, pagination, category, category base, archive, archives
Requires at least: 3.9
Tested up to: 4.3.1
Stable tag: 3.5.1

Interface to customize the permalinks (author, category, archives and pagination) and htaccess file generated by WordPress.

== Description ==

**WP htaccess Control** should now really be called WP htaccess *and Rewrite* Control. It provides an interface to customize the htaccess file generated by WordPress but also its permalinks (author, category, archives, pagination and custom taxonomies). Have a look at the screenshot for a clearer idea of the available options.

**Features:**

* Customizing the htaccess file generated by WordPress;
* Removing any custom taxonomy's slug base from permalinks;
* Removing the category base from permalinks;
* Removing the author base from permalinks;
* Customizing the Author Permalink Base;
* Customizing Paginated Permalinks (translate the "page" word on permalinks to your own language);
* Customization (and canonization) of the Search Permalink Base;
* Creation of Category, Author, Tag and Custom Taxonomy based archives (ex: *"http://your-site.com/category/stories/2010/12"*, *"http://your-site.com/author/admin/2010/12/page/2"* and *"http://your-site.com/tag/wordpress/2010/12"*), this will also work if you've removed the base slug;
* Maintenance mode.

**Easy to use "Suggested htaccess" rules:**

* Jim Morgan's htaccess;
* Disable directory browsing;
* Disable and redirect image hotlinking;
* Disable and redirect file hotlinking;
* Force canonical url (WWW or non-WWW);
* Limit maximum file upload size;
* Protect wp-config.php file from access;
* Protect .htaccess file from access;
* Protect comments.php from spam bots coming from nowhere;
* Set 500 error page;
* Set 403 error page;
* Use mod_gzip if available;
* Use mod_deflate if available;
* Set admin email on server generated error pages;
* Disable ServerSignature on server generated error pages.

**POT file is included, translations are welcome.**

== Installation ==

1. Download **WP htaccess Control**;
2. Extract its content;
3. Upload the **wp-htaccess-control** folder to **wp-content/plugins**;
4. Activate it under **Plugins**;
5. Configurate it under **Settings** > **WP htaControl**.

== Frequently Asked Questions ==

= Pagination base is not working on Twenty Fourteen or some other theme? =
WP htaccess Control can modify the pagination permalink structure for you (ie, turn "/page/2" into "/pagina/2") and will also try to intercept any method outputting pagination links so the structure change is seamless.

Some themes however do not use the standard way of generating these pagination links, which means WP htaccess Control can't update them.

Unfortunately this is the case for Twenty Fourteen. To make it clear, this is a markup issue; if you type in the new structure in the address bar it will still work as expected.


= Do you have any questions? = 
Suggestions are welcome and please report any bugs found!

== Screenshots ==

1. Administration page (as of v.2.0)

== Known Issues ==

I still haven't tested this under **WordPress multisite**, issues have however been reported.

== Additional Credit ==

Removal of the category base is based on iDope's **WP No Category Base** but extended so that it works with category archives (ie.: *"http://example.com/my-category/2010/12"*).

Search redirection is based on Mark Jaquith's **Nice Search** but extended so that it works with custom search base (ie.: *"http://example.com/search-base/search-term"*).

== Stable Versions ==

For WordPress versions above 3.9 use the plugin version 3.4.

For WordPress versions above 3.4 use the plugin version 3.3.

For WordPress versions prior to 3.4 use the plugin version 2.7.2.1.


== Changelog ==

= 3.5.1 (17/10/2015) =

* Fix: custom page permalink base markup filter;
* Tested under WordPress 4.3.1.

= 3.4.5 (21/4/2014) =

* Fix: more fixes.

= 3.4.4 (21/4/2014) =

* Fix: taxonomy base removal admin interface would agglomerate settings;
* Fix: wiped a number of php warnings.

= 3.4.3 (20/4/2014) =

* Fix: taxonomy base removal.

= 3.4.1 (20/4/2014) =

* Fix: implicit array with break the admin interface on some php versions.

= 3.4 (19/4/2014) =

* Fix: fixed category and tag advanced archives;
* Fix: if both author advanced archives and author permalink base removal were active, archives wouldn't work;
* Removed experimental login section;
* Tested under WordPress 3.9.

= 3.3.4 (28/01/2013) =

* Fix: some servers would send http:// to https:// on admin settings page.

= 3.3.3 (28/01/2013) =

* Fix: PHP and WordPress deprecation warnings.

= 3.3.2 (28/01/2013) =

* Fix: empty categories should also have the proper template instead of a 404.

= 3.3.1 (28/01/2013) =

* Tested under 3.5.1.

= 3.3 (01/07/2012) =

* Added option to force removal of taxonomy hierarchy from permalinks;
* Only supporting WordPress > 3.4 from now on;
* Fix tax link filter;
* Fix rules reset;
* Smaller fixes;
* Tested under 3.4.1.

= 3.2.1 (29/04/2012) =
* Forcing 3.2.1.

= 3.2 (27/04/2012) =
* Fix: still fixing 3.0 critical errors (mostly data handling and link filtering).

= 3.1 (27/04/2012) =
* Fix: 3.0 introduced errors (removal of bases regardless of the settings);
* Optimized number of actions and filters and database access.

= 3.0 (26/04/2012) =
* Feature: base slug and archive creation for any taxonomy;
* Major rewrite of core methods.

= 2.7.2.1 (03/04/2012) =
* Images and donators list included (no longer remotely loaded).

= 2.7.2 (30/03/2012) =
* *Feature:* added Login Control.

= 2.7.1 (30/03/2012) =
* *Fix:* regenerate rules on user creation or deletion;
* *Fix:* toggle handle height glitch (admin panel);
* changed menu entry title;
* updated plugin info.

= 2.7 (01/10/2011) =
* *Feature:* added option to "Disable file hotlinking" (thank you for the suggestion Syamsul Alam);
* *Fix:* fixed erroneous description of the "Disable image hotlinking" option: if no redirection is to be done "_" should be input instead of "-".

= 2.6 (23/08/2011) =
* *Feature:* added option to remove author base (good idea gavinhamm).

= 2.5.8 (23/08/2011) =
* *Fix:* fixed file encoding introduced on 2.5.7 (which should always by UTF-8 without BOM).

= 2.5.7 (22/08/2011) =
* *Fix:* fixed daily archives on categories, authors and tags (thank you AlZuwaga).
* Confirmed compatibility with WP 3.2.1.

= 2.5.5 (27/06/2011) =
* *Fix:* fixed search pagination using custom search base; (better regex should be put in place or maybe go for an alternative solution).

= 2.5.4 (23/06/2011) =
* *Fix:* fixed search feed using custom search base.

= 2.5.3 (23/06/2011) =
* *Fix:* fixed special characters on query using custom search base as 2.5.2 did not solve it.

= 2.5.2 (18/06/2011) =
* *Fix:* fixed german umlauts and other special characters on query using custom search base (thank you for pointing it out Tatron);
* *Fix:* get_search_query no longer empty when using custom search base.

= 2.5.1 (30/05/2011) =
* *Fix:* fixed php short tag on wp-htaccess-control-ui.php (thank you caillou!).
* Confirmed compatibility with WP 3.1.3.

= 2.5 (16/05/2011) =
* *Fix:* fixed a security vulnerability (lack of _nonce on settings page) (thank you Julio from Boiteaweb.fr for ringing the alarm bell; thank you Otto for the kind support!).

= 2.4 (04/05/2011) =
* *Feature:* added htaccess suggestion "Protect comments.php" (thank you specimen.tk);
* Added "Latest donations";
* Confirmed compatibility with WP 3.1.2.

= 2.3 (27/03/2011) =
* *Feature:* "?s=search+term" redirects to "/search-base/search+term" (as requested by Tatron).
* Removed "Rewrite Pairs" code and did some clean up.
* Added donation link.

= 2.2.4 (26/03/2011) =
* *Fix:* Still fixing 2.2 canonical bug.

= 2.2.2 (26/03/2011) =
* *Fix:* 2.2 canonical bug fix resulted in errors which sould now be fixed.

= 2.2.1 (26/03/2011) =
* Reverted stable version to 2.1.2.

= 2.2 (25/03/2011) =
* *Feature:* adding Custom Search Base (thank you Fagner JB.);
* *Fix:* fixed a long time known canonical redirection bug where links like "/?p=55" wouldn't redirect to "/post-slug" (causing duplicated content) (thank you Tatron, thank you John);
* Confirmed compatibility with WP 3.1.

= 2.1.2 (01/02/2011) =
* *Fix:* fix on canonical url setting (thank you 8bitkid for pointing it out).

= 2.1.1 (03/12/2010) =
* *Fix:* small fix related to 2.1 and subcategories (thanks again for the report zamuta).

= 2.1 (02/12/2010) =
* *Fix:* fixed "customization" of urls using cyrillic alphabet and other characters generally not safe (thank you for the report zamuta).

= 2.0 (27/11/2010) =
* *Feature:* removal of the category base;
* *Feature:* archives for categories with no base (ie.: *"http://example.com/my-category/2010/12"*) (again, good point webakimbo).

= 1.9.1 (22/10/2010) =
* *Feature:* adding "Author and Tag based archives".

= 1.9 (22/10/2010) =
* *Feature:* adding "Category-based archives" (good idea webakimbo).

= 1.8 (09/09/2010) =
* *Feature:* adding "Maintenance Mode";
* *Feature:* adding 403 error page "htaccess suggestion";
* *Fix:* deprecating the "Rewrite Pairs" as they are superseded by the "Custom htaccess";
* *Fix:* small fix to "original rules" on wordpress htaccess (thank you Agnes for the report).

= 1.7 (01/09/2010) =
* *Feature:* wordpress htaccess rules can be replaced or modified.

= 1.6.1 (17/08/2010) =
* *Fix:* Small update on Jim Morgan's htaccess;

= 1.6 (17/08/2010) =
* *Feature:* added "suggestion" to use Jim Morgan's htaccess as discussed in http://wordpress.org/extend/ideas/topic/wordpress-performance-improvement-that-does-not-require-a-plugin-simple-fix (thank you Will for pointing it out);

= 1.5.5 (25/06/2010) =
* *Feature:* added i18n files and portuguese translation;
* *Fix:* mistagged stable version.

= 1.5.4 (24/06/2010) =
* *Fix:* Setting canonical "www." will no longer be done by htaccess but simply by modifying "site url" and "home" options;
* Confirmed compatibility with WP 3.0.

= 1.5.3 (01/06/2010) =
* *Fix:* small regex correction on filtered pagination links.

= 1.5.2 (02/05/2010) =
* *Fix:* mistake on 1.5.1 would not add wordpress own htaccess rules (thank you JAB_au for the report).

= 1.5.1 (01/05/2010) =
* *Fix:* stripped slashes on custom htaccess (thank you Aleksey for the report);
* *Fix:* regex correction for custom pagination permalink (link from page two to the first page would still point to second page);
* *Fix:* (removed references to "hta_mr").

= 1.5 (25/03/2010) =
* *Feature:* customization of the pagination permalinks;
* *Feature:* "mod_gzip" and "mod_deflate".

= 1.4.3 (22/03/2010) =
* *Fix:* Custom Author Permalink now working when using wp_list_authors (thank you HW for the report);
* *Change:* options page should now only be seen by admins;
* *Change:* prepared l10n.

= 1.4.2 (12/03/2010) =
* *Change:* minor documentation fix (readme).

= 1.4.1 (12/03/2010) =
* *Fix:* debug left over on 1.4 for url canonization.

= 1.4 (12/03/2010) =
* *Feature:* added "Suggested htaccess";
* *Change:* improved ui.

= 1.3 (10/03/2010) =
* *Feature:* integrated the Custom Author Permalink with the Google XML Sitemap plugin;
* *Change:* two fields to customize the htaccess  were being used when only one was needed, for the sake of simplicity.

= 1.2.1 (15/02/2010) =
* *Fix:* bug on resetting all rules;
* *Fix:* critical bug on empty htaccess custom rules;
* Confirmed compatibility with WP 2.9.2.

= 1.2 (15/02/2010) =
* *Change:* improved htaccess customization giving now much more freedom.

= 1.1.4 (05/02/2010) =
* *Fix:* "Current htaccess file as it is generated by WordPress" was not being printed;
* *Change:* minor ui changes;
* Confirmed compatibility with WP 2.9.1.

= 1.1.3 (06/07/2009) =
* *Fix:* mistake on wphtc_cap()'s preg_replace commited on 1.1.2 (thank you mattcav for the report);
* *Fix:* php warning on updating options without htaccess rules.

= 1.1.2 (01/07/2009) =
* *Change:* better options handling (no longer creating empty option array on install or reset);
* Confirmed compatibility with WP 2.8.

= 1.1.1 (09/04/2009) =
* *Change:* minor documentation fix (screenshot).

= 1.1 (09/04/2009) =
* *Change:* separated ui file;
* *Change:* improved management and ui.

= 1.0.1 (08/04/2009) = 
* Added GNU license.

= 1.0 (08/04/2009) =
* Initial public release (poor interface).
