Title: Forbidden
Last modified: August 31, 2016

---

# Forbidden

 *  [Dane Morgan](https://wordpress.org/support/users/dane-morgan/)
 * (@dane-morgan)
 * [10 years ago](https://wordpress.org/support/topic/forbidden-32/)
 * I have a development copy of each of our sites, and a live copy of each. I was
   able to import all of the shortcodes and fix errors and save them on the development
   site, but when I attempted to do this on the live site, when i click the save
   button I am getting a “Forbidden” notice.
 * The Live site has W3TC, MaxCDN, Cloudflare, Wordfence, and blogVault installed,
   but otherwise the sites are identical.
 * [https://wordpress.org/plugins/add-actions-and-filters/](https://wordpress.org/plugins/add-actions-and-filters/)

Viewing 8 replies - 1 through 8 (of 8 total)

 *  Plugin Author [Michael Simpson](https://wordpress.org/support/users/msimpson/)
 * (@msimpson)
 * [10 years ago](https://wordpress.org/support/topic/forbidden-32/#post-7354939)
 * Would you try selectively deactivating those plugins and importing to figure 
   out which one causes the issue?
 *  Thread Starter [Dane Morgan](https://wordpress.org/support/users/dane-morgan/)
 * (@dane-morgan)
 * [10 years ago](https://wordpress.org/support/topic/forbidden-32/#post-7354961)
 * I’m going to have to recreate the site on a test domain to do that, but yes I
   will.
 *  Thread Starter [Dane Morgan](https://wordpress.org/support/users/dane-morgan/)
 * (@dane-morgan)
 * [10 years ago](https://wordpress.org/support/topic/forbidden-32/#post-7355027)
 * It is Wordfence that is preventing saving the form.
 * This code returns a “Forbidden” message with WordFence activated.
 *     ```
       /*if ( is_numeric ( $thisrank ) ) :
       	$rank = 0;
       	foreach( get_cfc_meta( 'logotable', $post->ID ) as $key => $value ) :
       		$check = get_cfc_field( 'logotable','rank', false, $key );
       		if ( $check == $thisrank ) :
       			$rank = $check;
       			$img_obj = get_cfc_field( 'logotable','logo-image', false, $key );
       			$logo =  '<img class="nobo aligncenter wp-image-' . $img_obj['id'] . ' size-full"
       								  id="' . $img_obj['id'] . '"
       								  src="' . $img_obj['sizes']['csm-logo-table'] . '"
       								  height="' . $img_obj['height'] . '"
       								  width="' . $img_obj['width'] . '"
       								  alt="' . $img_obj['alt'] . '"
       								  title="' . $img_obj['title'] .'" />';
       		endif;
       	endforeach;
       	if ( $rank != 0 ) :
       		$out = <<<EOD
       		<table class="alignleft nobo logotable" style="table-layout:fixed;width:374px;height:90px;">
       			<tbody>
       				<tr class="nobo">
       					<td class="nobo rank-number" style="font-size:67px;font-weight:bold;color:#000;width:134px;height:90px;line-height:90px;vertical-align: middle;">#$rank</td>
       					<td class="nobo rank-logo" style="width:240px;height:90px;vertical-align:middle;">$logo</td>
       				</tr>
       			</tbody>
       		</table><!-- .logotable -->
       EOD;
       	else :
       		$out = <<<EOD
       		<table class="alignleft nobo logotable" style="table-layout:fixed;width:374px;height:90px;">
       			<tbody>
       				<tr class="nobo">
       					<td class="nobo rank-number" style="font-size:67px;font-weight:bold;color:#000;width:134px;height:90px;line-height:90x;vertical-align:middle;">Err</td>
       					<td class="nobo rank-logo" style="width:240px;height:90px;vertical-align:middle;">Requested rank value does not exist. Please add it in the editor.</td>
       				</tr>
       			</tbody>
       		</table><!-- .logotable -->
       EOD;
       	endif; // $rank != 0
       else :
       	$out = <<<EOD
       	<table class="alignleft nobo logotable" style="table-layout:fixed;width:314px;height:110px;">
       		<tbody>
       			<tr class="nobo">
       				<td class="nobo rank-number" style="font-size:67px;font-weight:bold;color:#000;width:134px;height:90px;line-height:90px;vertical-align:middle;">Err</td>
       				<td class="nobo rank-logo" style="width:240px;height:90px;vertical-align:middle;">Rank must be numeric.</td>
       			</tr>
       		</tbody>
       	</table><!-- .logotable -->
       EOD;
   
       endif; //is_numeric($thisrank) */
       ```
   
 * Here is the Wordfence setting token
    fae10262e6faf3ed80613a2e5d84af2f0966b75a7d5b003c48abba25d7f3e314da73948d290d8dd90e2dff22e85e92ab147baea4299b03dbc6270bfcb99146f8
 *  Thread Starter [Dane Morgan](https://wordpress.org/support/users/dane-morgan/)
 * (@dane-morgan)
 * [10 years ago](https://wordpress.org/support/topic/forbidden-32/#post-7355028)
 * In the above code it seems to be choking on the
 * `global $post;`
 * When I remove that it saves just fine.
 * However, the shortcode did not return any value or any error.
 * Then when I deleted it and remade it without the global $post; it saved and the
   shortcode works.
 * I guess I didn’t need the global, I thought, at best, I was going to get the 
   message about an error in the shortcode.
 *  Plugin Author [Michael Simpson](https://wordpress.org/support/users/msimpson/)
 * (@msimpson)
 * [10 years ago](https://wordpress.org/support/topic/forbidden-32/#post-7355036)
 * I’m totally confused. What is that code? is that a shortcode you made? It’s all
   commented out. There is no “global $post” in it. And $thisrank is not defined
   either.
 * Are you saying when you put (or don’t put?) “global” in your shortcode then the
   plugin fails to save but only when WordFence is activate?
 *  Thread Starter [Dane Morgan](https://wordpress.org/support/users/dane-morgan/)
 * (@dane-morgan)
 * [10 years ago](https://wordpress.org/support/topic/forbidden-32/#post-7355044)
 * Sorry. I was testing commenting out different parts of the code and had narrowed
   it down to a global $post that was at the top of the code. removing it and running
   the remaining code prevents the code from saving to the database when WordFence
   is enabled.
 * So the presence of global $post in my shortcode while WordFence was enabled with
   the settings exported to the provided token results in a failure to save the 
   shortcode and a message “Forbidden”
 *  [jeffThevenot](https://wordpress.org/support/users/jeffthevenot/)
 * (@jeffthevenot)
 * [9 years, 11 months ago](https://wordpress.org/support/topic/forbidden-32/#post-7355082)
 * Hello,
    Thank you for your post, I had the same bug! I copy all my website to
   my dev server and I couldn’t save/update my shortcode PHP with add-actions-and-
   filters (Forbidden) or shortcode-exec-php plugin (error 403). In fact that is
   the new firwall in Wordfence who do that. Solution: 1. If your are in Learning
   Mode you have to answer allowed at “Whitelisted while in Learning Mode” question.(
   In my case I had deleted Wordfence and Wordfence table in dB)
 * 2. You can add “Add Whitelisted URL/Param” in the Firewall tab:
    **shortcode-
   exec-php** : URL:/wp-admin/admin-ajax.php Param: POST/Body Param Name: phpcode
 * **add-actions-and-filters** :
    URL:/wp-admin/admin-ajax.php Param: POST/Body 
   Param Name: code
 *  Plugin Author [Michael Simpson](https://wordpress.org/support/users/msimpson/)
 * (@msimpson)
 * [9 years, 11 months ago](https://wordpress.org/support/topic/forbidden-32/#post-7355083)
 * That you for posting!

Viewing 8 replies - 1 through 8 (of 8 total)

The topic ‘Forbidden’ is closed to new replies.

 * ![](https://s.w.org/plugins/geopattern-icon/add-actions-and-filters_ffffff.svg)
 * [Add Shortcodes Actions And Filters](https://wordpress.org/plugins/add-actions-and-filters/)
 * [Frequently Asked Questions](https://wordpress.org/plugins/add-actions-and-filters/#faq)
 * [Support Threads](https://wordpress.org/support/plugin/add-actions-and-filters/)
 * [Active Topics](https://wordpress.org/support/plugin/add-actions-and-filters/active/)
 * [Unresolved Topics](https://wordpress.org/support/plugin/add-actions-and-filters/unresolved/)
 * [Reviews](https://wordpress.org/support/plugin/add-actions-and-filters/reviews/)

## Tags

 * [forbidden](https://wordpress.org/support/topic-tag/forbidden/)
 * [save](https://wordpress.org/support/topic-tag/save/)

 * 8 replies
 * 3 participants
 * Last reply from: [Michael Simpson](https://wordpress.org/support/users/msimpson/)
 * Last activity: [9 years, 11 months ago](https://wordpress.org/support/topic/forbidden-32/#post-7355083)
 * Status: not resolved