web-dev-qa-db-fra.com

htaccess ou rediriger pour masquer une partie d'un lien?

Un plug-in de rotation d'annonce est installé pour afficher quelques annonces sur mon site, mais le plug-in est codé de manière à utiliser le répertoire complet dans le lien du nombre d'annonces. J'aimerais savoir s'il y a quelque chose de facile à mettre dans mes épaules pour dissimuler le lien. Donc par exemple:

http://monsite.com/wp-content/plugins/ad-rotating-plugin/rotate.php?trackerid=1

doit ressembler à:

http://mysite.com/rotate.php?trackerid=1 (en fait, toute variation de ceci convient, je ne veux tout simplement pas être complet wp-content/plugins/répertoire indiqué dans le lien).

J'ai essayé quelques plugins mais je n'ai pas obtenu les résultats souhaités. Pour récapituler, je veux que le lien vers SHOW soit le lien du bas, mais lorsque vous cliquez dessus, dirigez-vous vers le lien du haut, et j'ai besoin de ce trackerid = # pour rester l'id généré, donc je veux seulement en masquer une partie. Y at-il quelque chose que je peux mettre dans mon htaccess pour le faire?

Merci!

1
RodeoRamsey

Ce que vous devez faire, c'est configurer une réécriture personnalisée. Cela peut changer quelque chose comme http://site.com/rotate/1 à http://site.com/wp-content/plugins/ad-rotating-plugin/rotate.php?trackerid=1

Voici du code non testé qui pourrait aider:

<?php
/*
Plugin Name: Your Plugin
Plugin URI: 
Description: 
Version: 0.1
Author: 
Author URI: 
*/

// Add rewrite rule and flush on plugin activation
register_activation_hook( __FILE__, 'ad_rotate_activate' );
function ad_rotate_activate() {
    ad_rotate_rewrite();
    flush_rewrite_rules();
}

// Flush on plugin deactivation
register_deactivation_hook( __FILE__, 'ad_rotate_deactivate' );
function ad_rotate_deactivate() {
    flush_rewrite_rules();
}

// Create new rewrite rule
add_action( 'init', 'ad_rotate_rewrite' );
function ad_rotate_rewrite() {
    add_rewrite_rule( 'rotate/([^/]+)','/wp-content/plugins/ad-rotating-plugin/rotate.php?trackerid=$matches[1]','top' );
}
2
EAMann