Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

redirect von .com.html/ per htaccess

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
bydlo
PostRank 9
PostRank 9
Beiträge: 2209
Registriert: 11.12.2004, 01:03
Wohnort: Berlin

Beitrag von bydlo » 17.01.2009, 20:23

moin moin,
ein von mir benutztes Plugin verursacht mir als Homelink so eine URL:
www.domain.com.html/

wie bekomme ich denn per htaccess das so hingebogen das es wieder stimmt?

Der normale redirect gebietet ja das man die umzuleitende URL ohne angabe der doman notiert, oder?
gruss axel

Anzeige von ABAKUS

von Anzeige von ABAKUS »


Hochwertiger Linkaufbau bei ABAKUS:
  • Google-konformer Linkaufbau
  • nachhaltiges Ranking
  • Linkbuilding Angebote zu fairen Preisen
  • internationale Backlinks
Wir bieten Beratung und Umsetzung.
Jetzt anfragen: 0511 / 300325-0

Anonymous

Beitrag von Anonymous » 17.01.2009, 20:28

mit .htaccess kannste das nicht hinbiegen... das musste schon im plugin selber umbiegen... mit der .htaccess kannste nur beim seitenaufruf etwas umbiegen, nicht bei der Auslieferung einer Seite, und wenn jemand einen solchen krummen Link aufruft, landet er ja garnicht bei dir auf dem server, also kannste mit .htaccess nix machen..

bydlo
PostRank 9
PostRank 9
Beiträge: 2209
Registriert: 11.12.2004, 01:03
Wohnort: Berlin

Beitrag von bydlo » 17.01.2009, 20:36

schade.

hat jemand ne idee wie mnan dieses Plugin so hinbiegt?

Code: Alles auswählen

<?php
/*
Plugin Name&#58; 123 HTML
Plugin URI&#58; http&#58;//schnurpsel.de/wordpress-plugins/123-html/
Description&#58; Setzt an die URLs ein '.html' hinten dran.
Author&#58; Ingo Henze
Version&#58; 0.18
Author URI&#58; http&#58;//putzlowitsch.de/
*/ 
// Einstellungen für das Plugin

// Einstellungen laden
$plw123htm_options = get_option&#40; 'plw123htm_options' &#41;;
// noch keine vorhanden, dann mit Default-Werten vorbelegen
if&#40; !is_array&#40; $plw123htm_options &#41; &#41; &#123;
	$plw123htm_options = array&#40;				// Verwenden ...
		'use_post_link'  => true,			// für Artikel
		'use_page_link'  => true,			// für Seiten
		'use_category_link'  => false,	// für Kategorien
		'use_tag_link'  => false,				// für Tags
		'use_year_link'  =>false,				// für Jahresarchiv
		'use_month_link'  => false,			// für Monatsarchive
		'use_day_link'  => false,				// für Tagesarchiv
		'opt_category_link'  => false,	// Verbindestrichung für Kategorien
		'opt_archive_link'  => false		// Verbindestrichung für Archive
	&#41;;
&#125;
// wenn vorhanden, gegebenenfalls fehlende mit Default-Werten vorbelegen
else &#123;
	if&#40; !array_key_exists&#40; 'use_post_link', $plw123htm_options &#41; &#41;
		$plw123htm_options&#91;'use_post_link'&#93; = true;
	if&#40; !array_key_exists&#40; 'use_page_link', $plw123htm_options &#41; &#41;
		$plw123htm_options&#91;'use_page_link'&#93; = true;
	if&#40; !array_key_exists&#40; 'use_category_link', $plw123htm_options &#41; &#41;
		$plw123htm_options&#91;'use_category_link'&#93; = false;
	if&#40; !array_key_exists&#40; 'use_tag_link', $plw123htm_options &#41; &#41;
		$plw123htm_options&#91;'use_tag_link'&#93; = false;
	if&#40; !array_key_exists&#40; 'use_year_link', $plw123htm_options &#41; &#41;
		$plw123htm_options&#91;'use_year_link'&#93; = false;
	if&#40; !array_key_exists&#40; 'use_month_link', $plw123htm_options &#41; &#41;
		$plw123htm_options&#91;'use_month_link'&#93; = false;
	if&#40; !array_key_exists&#40; 'use_day_link', $plw123htm_options &#41; &#41;
		$plw123htm_options&#91;'use_day_link'&#93; = false;
	if&#40; !array_key_exists&#40; 'opt_category_link', $plw123htm_options &#41; &#41;
		$plw123htm_options&#91;'opt_category_link'&#93; = false;
	if&#40; !array_key_exists&#40; 'opt_archive_link', $plw123htm_options &#41; &#41;
		$plw123htm_options&#91;'opt_archive_link'&#93; = false;
&#125;


// Die Endung .html aus der Request-URI entfernen
function plw123htm_link_remove_html&#40;&#41; &#123;
	global $plw123htm_options;
	
	$request_uri = $_SERVER&#91;'REQUEST_URI'&#93;;

	// bestimmte URIs unverändert lassen
	if&#40; preg_match&#40; "#/wp-admin/#", $request_uri &#41; &#41;
		return;
	
	
	$permalink_structure = get_option&#40; 'permalink_structure' &#41;;
	$use_trailing_slashes = &#40; substr&#40;$permalink_structure, -1, 1&#41; == '/' &#41; ? true &#58; false;

	$request_uri = preg_replace&#40; '/\.html/i', "", $request_uri &#41;;

	// Bei einem Kategorie-Link die Bindestriche in Schrägstriche umwandeln
	$cat_base = get_option&#40; 'category_base' &#41;;
	if&#40; empty&#40;$cat_base&#41; &#41;
	  $cat_base = '/category';
	else
	  $cat_base = rtrim&#40; $cat_base, '/' &#41;;
/*	if&#40; $cat_base == '/.' &#41;
		$request_uri = '/.'.$request_uri; */
	$request_uri = preg_replace&#40; "#^$cat_base&#40;.*&#41;-#i", "$cat_base$2/", $request_uri &#41;;
	
	// Ab WP-Version 2.3 müssen auch die Tag-Links behandelt werden
	// die Verbindestrichung erfolgt wie bei Kategorien
	// Bei einem Tag-Link die Bindestriche in Schrägstriche umwandeln
	if&#40; version_compare&#40; get_bloginfo&#40;'version'&#41;, '2.3', '>='&#41; &#41; &#123;
	    $plw_tag_base = get_option&#40;'tag_base'&#41;;
	    if&#40; empty&#40;$plw_tag_base&#41; &#41;
	      $plw_tag_base = '/tag';
	    else
	      $plw_tag_base = rtrim&#40; $plw_tag_base, '/' &#41;;

	    $plw_tag_base = preg_quote&#40; $plw_tag_base, '#' &#41;;
	    $plw_request_uri = preg_replace&#40; "#^$plw_tag_base&#40;.*&#41;-#i", "$plw_tag_base$2/", $plw_request_uri &#41;;
	&#125;

	// Bei einem Archiv &#40;Monat / Tag&#41; die Bindestriche in Schrägstriche umwandeln
	if&#40; $plw123htm_options&#91;'opt_archive_link'&#93; && preg_match&#40; "#\d&#123;4&#125;-\d&#123;2&#125;&#40;-\d&#123;2&#125;|&#41;#", $request_uri &#41; &#41; &#123;
		$home = rtrim&#40; get_option&#40; 'home' &#41;, '/' &#41;.'/';
		if&#40; preg_match&#40; "#^$home&#40;.*&#41;#", $request_uri, $matches &#41; &#41;
			$request_uri = $matches&#91;1&#93;;
		else
			$home='';
	  $request_uri = $home.strtr&#40; $request_uri, '-', '/' &#41;;		
	&#125;
	if&#40; $use_trailing_slashes &#41;
		$request_uri = trailingslashit&#40; $request_uri &#41;;
	$_SERVER&#91;'REQUEST_URI'&#93; = $request_uri;
&#125;

plw123htm_link_remove_html&#40;&#41;;

// Filter für die Linkerzeugung hinzufügen
function plw123htm_link_append_html&#40; $link &#41; &#123;
  $link = rtrim&#40; $link, '/' &#41;;
  return $link.'.html';
&#125;

function plw123htm_link_append_html_to_cat&#40; $link &#41; &#123;
	global $plw123htm_options;

  $link = rtrim&#40; $link, '/' &#41;;
	// Bei einem Kategorie-Link die Schrägstriche in Bindestriche umwandeln
	if&#40; $plw123htm_options&#91;'opt_category_link'&#93; &#41; &#123;
		$home = rtrim&#40; get_option&#40;'home'&#41;, '/' &#41;;
		$cat_base = get_option&#40;'category_base'&#41;;
		if&#40; empty&#40;$cat_base&#41; &#41;
		  $cat_base = '/category/';
		else
		  $cat_base = rtrim&#40; $cat_base, '/' &#41;.'/';
		$home .= $cat_base;
		if&#40; preg_match&#40; "#^$home&#40;.*&#41;#", $link, $matches &#41; &#41;
			$link = $matches&#91;1&#93;;
		else
			$home='';
	  $link = $home.strtr&#40; $link, '/', '-' &#41;;
	&#125;
  return $link.'.html';
&#125;

function plw123htm_link_append_html_to_arc&#40; $link &#41; &#123;
	global $plw123htm_options;
	
  $link = rtrim&#40; $link, '/' &#41;;
	// Bei einem Archiv &#40;Monat / Tag&#41; die Schrägstriche in Bindestriche umwandeln
	if&#40; $plw123htm_options&#91;'opt_archive_link'&#93; &#41; &#123;
		$home = rtrim&#40; get_option&#40;'home'&#41;, '/' &#41;.'/';
		if&#40; preg_match&#40; "#^$home&#40;.*&#41;#", $link, $matches &#41; &#41;
			$link = $matches&#91;1&#93;;
		else
			$home='';
	  $link = $home.strtr&#40; $link, '/', '-' &#41;;
	&#125;
  return $link.'.html';
&#125;

function plw_feed_link&#40; $link &#41; &#123;
  // html in Feedlinks entfernen
    if&#40; preg_match&#40; '~&#40;.*&#41;\.html&#40;/feed.*&#41;$~i', $link, $treffer &#41; &#41; &#123;
      $link = $treffer&#91;1&#93;.$treffer&#91;2&#93;;
    &#125;
    return $link;
&#125;

add_filter&#40; 'post_comments_feed_link', 'plw_feed_link' &#41;;
add_filter&#40; 'category_feed_link', 'plw_feed_link' &#41;;

if&#40; $plw123htm_options&#91;'use_post_link'&#93; &#41;
	add_filter&#40; 'post_link', 'plw123htm_link_append_html' &#41;;
if&#40; $plw123htm_options&#91;'use_page_link'&#93; &#41;
	add_filter&#40; 'page_link', 'plw123htm_link_append_html' &#41;;
if&#40; $plw123htm_options&#91;'use_category_link'&#93; &#41;
	add_filter&#40; 'category_link', 'plw123htm_link_append_html_to_cat' &#41;;
if&#40; $plw123htm_options&#91;'use_tag_link'&#93; &#41;
	add_filter&#40; 'tag_link', 'plw123htm_link_append_html' &#41;;
if&#40; $plw123htm_options&#91;'use_year_link'&#93; &#41;
  add_filter&#40; 'year_link', 'plw123htm_link_append_html' &#41;;
if&#40; $plw123htm_options&#91;'use_month_link'&#93; &#41;
  add_filter&#40; 'month_link', 'plw123htm_link_append_html_to_arc' &#41;;
if&#40; $plw123htm_options&#91;'use_day_link'&#93; &#41;
  add_filter&#40; 'day_link', 'plw123htm_link_append_html_to_arc' &#41;;

// Admin-Panel
function plw123htm_options_subpanel&#40;&#41; &#123;
	global $plw123htm_options;

  if &#40;isset&#40;$_POST&#91;'plw123htm_update'&#93;&#41;&#41; &#123;
		// Optionen
		$plw123htm_options&#91;'use_post_link'&#93; = isset&#40;$_POST&#91;'plw123htm_opt_upl'&#93;&#41;;
		$plw123htm_options&#91;'use_page_link'&#93; = isset&#40;$_POST&#91;'plw123htm_opt_ual'&#93;&#41;;
		$plw123htm_options&#91;'use_category_link'&#93; = isset&#40;$_POST&#91;'plw123htm_opt_ucl'&#93;&#41;;
		$plw123htm_options&#91;'use_tag_link'&#93; = isset&#40;$_POST&#91;'plw123htm_opt_utl'&#93;&#41;;
		$plw123htm_options&#91;'use_year_link'&#93; = isset&#40;$_POST&#91;'plw123htm_opt_uyl'&#93;&#41;;
		$plw123htm_options&#91;'use_month_link'&#93; = isset&#40;$_POST&#91;'plw123htm_opt_uml'&#93;&#41;;
		$plw123htm_options&#91;'use_day_link'&#93; = isset&#40;$_POST&#91;'plw123htm_opt_udl'&#93;&#41;;
		$plw123htm_options&#91;'opt_category_link'&#93; = isset&#40;$_POST&#91;'plw123htm_opt_ocl'&#93;&#41;;
		$plw123htm_options&#91;'opt_archive_link'&#93; = isset&#40;$_POST&#91;'plw123htm_opt_oal'&#93;&#41;;
		update_option&#40;'plw123htm_options', $plw123htm_options &#41;;
	
    ?><div class="updated"><p><strong>Einstellungen wurden gespeichert.</strong></p></div>
	<?php
  &#125;
	$plugindata = get_plugin_data&#40; __FILE__ &#41;;
	?>
	
<div class="wrap" style="height&#58;100%">
  <form method="post" id="plw123htm_optform" onsubmit="return createLists&#40;&#41;">
    <h2><?php echo $plugindata&#91;'Title'&#93;; ?> Einstellungen</h2>
	<p>Plugin-Version <?php echo $plugindata&#91;'Version'&#93;; ?></p>
	<p><?php echo $plugindata&#91;'Description'&#93;; ?></p>
	<fieldset class="options" style="clear&#58;both;"><legend>Optionen&#58;</legend>
	<table cellspacing="2" cellpadding="5" class="editform">
	<tr><th><label>Verwendung&#58; </label></th><td><input type="checkbox" name="plw123htm_opt_upl" value="1" <?php if&#40;$plw123htm_options&#91;'use_post_link'&#93;&#41; echo 'checked="checked"'; ?> /><label> für Blogbeiträge</label></td></tr>
	<tr><td>&nbsp;</td><td><input type="checkbox" name="plw123htm_opt_ual" value="1" <?php if&#40;$plw123htm_options&#91;'use_page_link'&#93;&#41; echo 'checked="checked"'; ?> /><label> für Seiten</label></td></tr>
	<tr><td>&nbsp;</td><td><input type="checkbox" name="plw123htm_opt_ucl" value="1" <?php if&#40;$plw123htm_options&#91;'use_category_link'&#93;&#41; echo 'checked="checked"'; ?> /><label> für Kategorien</label></td></tr>
	<tr><td>&nbsp;</td><td><input type="checkbox" name="plw123htm_opt_utl" value="1" <?php if&#40;$plw123htm_options&#91;'use_tag_link'&#93;&#41; echo 'checked="checked"'; ?> /><label> für Tags &#40;ab Wordpress 2.3&#41;</label></td></tr>
	<tr><td>&nbsp;</td><td><input type="checkbox" name="plw123htm_opt_uyl" value="1" <?php if&#40;$plw123htm_options&#91;'use_year_link'&#93;&#41; echo 'checked="checked"'; ?> /><label> für Jahresarchiv</label></td></tr>
	<tr><td>&nbsp;</td><td><input type="checkbox" name="plw123htm_opt_uml" value="1" <?php if&#40;$plw123htm_options&#91;'use_month_link'&#93;&#41; echo 'checked="checked"'; ?> /><label> für Monatsarchiv</label></td></tr>
	<tr><td>&nbsp;</td><td><input type="checkbox" name="plw123htm_opt_udl" value="1" <?php if&#40;$plw123htm_options&#91;'use_day_link'&#93;&#41; echo 'checked="checked"'; ?> /><label> für Tagesarchiv</label></td></tr>
	<tr><th><label>Optimierung&#58; </label></th><td><input type="checkbox" name="plw123htm_opt_ocl" value="1" <?php if&#40;$plw123htm_options&#91;'opt_category_link'&#93;&#41; echo 'checked="checked"'; ?> /><label> in Kategorielinks '/' durch '-' ersetzen</label></td></tr>
	<tr><td>&nbsp;</td><td><input type="checkbox" name="plw123htm_opt_oal" value="1" <?php if&#40;$plw123htm_options&#91;'opt_archive_link'&#93;&#41; echo 'checked="checked"'; ?> /><label> in Archivlinks '/' durch '-' ersetzen</label></td></tr>
	</table>
	</fieldset>
<div class="submit" style="clear&#58;both;">
  <input type="submit" name="plw123htm_update" value="Einstellungen speichern »" />
</div>
  </form>
 </div><?php
&#125;

function plw123htm_add_admin_panel&#40;&#41; &#123;
	if &#40;function_exists&#40;'add_options_page'&#41;&#41; &#123;
		add_options_page&#40;'123 HTML', '123 HTML', 8, basename&#40;__FILE__&#41;, 'plw123htm_options_subpanel'&#41;;
    &#125;
 &#125;

add_action&#40; 'admin_menu', 'plw123htm_add_admin_panel' &#41;;

?>