IIS 7 Rewrite rule throws HTTP Error 403.14 – Forbidden if folder exists

IIS 7 Rewrite rule throws HTTP Error 403.14 – Forbidden if folder exists

I have one web site routed by php.
I have put this on web.config file:

  

    
    
      
      
      
      
    

    
    
      
      
    

    
    
      
      
        
        
      
      
    
  


It works ok for all my site routes, except if route match one existing directory.
I have this folders structure:
index.php
cursos/img
assets/img

My web site manage without problems routes like: /paginas, /paginas/contacto, cursos/masinformacion/10, cursos/img/banner.jpg, etc...
But if I try to goto /cursos i get: HTTP Error 403.14 - Forbidden
I have added these lines to web.config file:


  
  


And now it's:

  

    
    
      
      
      
      
    

    
    
      
      
    

    
    
      
      
        
        
      
      
    
  


But it still does not work. It looks like IIS tries to access the cursos folder before running the rewrite rules

Solutions/Answers:

Answer 1:

Problem happened because of trailing slash.You can fix it in two steps:

1.Fix your regexp to ^cursos(\/?)$

2.Move this rule at first place:

<rule name="cursos redirect" stopProcessing="true">
  <match url="^cursos(\/?)$" />
  <action type="Rewrite" url="/index.php/{R:0}" appendQueryString="true" />
</rule>

Our Awesome Free Tools

References

Adding another Column to a table in a wordpress plugin

Adding another Column to a table in a wordpress plugin

Evening Everyone
I am working on a wordpress website which has a product wishlist display plugin.
Now its only displaying the products in a single column. I would like it to be in a grid.
I am not the best with tables. Could someone assist me?
I know your not supposed to ask for help but rather do it yourself. But I have this due tomorrow and I am stuck...I apologize to the Admins if this question is breaking any rules.
Code:

0 && apply_filters( 'tinvwl_wishlist_item_visible', true, $wl_product, $product ) ) { $product_url = apply_filters( 'tinvwl_wishlist_item_url', $product->get_permalink(), $wl_product, $product ); ?>
   
', esc_attr( $wl_product['ID'] ) ), $wl_product, $product ); ?> get_image(), $wl_product, $product ); if ( ! $product->is_visible() ) { echo $thumbnail; // WPCS: xss ok. } else { printf( '%s', esc_url( $product_url ), $thumbnail ); // WPCS: xss ok. } ?> %s', esc_html( __( 'Move', 'ti-woocommerce-wishlist-premium' ) ) ), $wl_product, $product, $wishlist ); // WPCS: xss ok. } ?>

Solutions/Answers:

Answer 1:

Remove <table class="tinvwl-table-manage-list"> and </table>

Remove everything from <thead> to </thead>

Change <tbody> to <div class="product-table"> and </tbody> to </div>

Within foreach ( $products as $wl_product ) change <tr to <div and change all <td to <div

Change <tfoot> <tr> <td colspan="100%"> to <div class="product-list-footer">

Update your CSS to set

div.product-table{
box-sizing:border-box;
width:100%; /* Or something else appropriate */
}
div.product-table > div{
box-sizing:border-box; /* makes sure border and padding fits inside the 50% */
width:50%;
}

You will need to tweak a lot of other CSS too but this might get you started.

Our Awesome Free Tools

References