Bienvenue invité ( Connexion | Inscription )
![]() ![]() |
6 Oct 2008, 12:19
Message
#26
|
|
|
Ceinture orange OSC Groupe : Membres Messages : 174 Inscrit : 11-August 04 Lieu : 95 Membre no 3036 |
Concernant la suppression de la modif des mots clefs, soit le premier point évoqué ci-dessus, il suffit de supprimer ou commenter en fin de fichier les deux lignes comme ci-dessous :
Code $pattern[] = '@<title>\s*@i'; $pattern[] = '@<meta\s*name\s*=\s*"\s*description\s*"\s*content\s*=\s*"\s*@i'; // $pattern[] = '@<meta\s*name\s*=\s*"\s*keywords\s*"\s*content\s*=\s*"\s*@i'; $replace[] = '<title>' . str_replace('-', ' | ', $this->addedMeta); $replace[] = '<meta name="description" content="' . str_replace('-', ' ', $this->addedMeta); // $replace[] = '<meta name="keywords" content="' . str_replace('-', ', ', $this->addedMeta); Concernant l'inversion de l'ajout et des tags d'origine (avoir : "mes tags d'origine sort_4d | page_1" plutôt que "sort_4d | page_1 mes tags d'origine" , j'ai essayé, mais je ne vois pas trop comment ça marche. Du coup je ne parviens pas non plus à remplacer "page" et "sort" par des mots qui m'intéressent plus dans le titre et dans la description. Je mets provisoirement le code ci-dessous, cela permettra peut être à quelqu'un d'indiquer la solution. Code * class preventDuplicates * * @param $getValues - array of $_GET variables which will action the added meta * @param $meta - contains the title/meta info prior to being altered by this class * @param $caught - Numerical array containing $_GET keys that were present in $getValues * @param $addedMeta - $_GET as a string containing key value pairs * @param $finalMeta - The modified (or not) meta that will be printed to screen * @param $IhaveDuplicateContent - Set to true or false dependent on whether Google webmaster tolls is showing duplicate content * @param $noIndex - meta shown when $IhaveDuplicateContent is set to false */ class preventDuplicates { var $getValues = array('sort', 'page', 'language', 'currency'); var $IhaveDuplicateContent = true; var $turnServiceOn = true; // true turns on false will turn this service off var $meta; var $caught; var $addedMeta; var $finalMeta; var $noIndex = '<meta name="ROBOTS" content="NOINDEX, FOLLOW" />'; function preventDuplicates(){ } /** * Sets $this->finalMeta (Final meta to be output based on the methods and properties below * * @param mixed $meta - $meta - contains the buffered title/meta info prior to being altered by this class * @method - $this->targetsExist() - Returns true or false based on whether $getValues was found in $_GET * @method - $this->parseMeta() - Ultimately sets $this->finalMeta; */ function checkTarget($meta) { $this->meta = $meta; if( $this->targetsExist() && (false !== $this->turnServiceOn) ){ if( false !== $this->IhaveDuplicateContent ){ $this->parseMeta(); } else { $this->finalMeta = $this->meta . "\n" . $this->noIndex; } } else { $this->finalMeta = $this->meta; } } /** * Checks whether any $this->getValues exist in the $_GET array * * @param - $this->caught - set as an array of keys found in $_GET * @return - Returns true or false, if true $this->caught is also set as an array */ function targetsExist(){ $caught = array(); foreach( $this->getValues as $value ){ if( isset($_GET[$value]) ){ $caught[] = tep_output_string_protected($value); } } if( !empty($caught)) { $this->caught = $caught; return true; } else{ return false; } } /** * Sets $this->addedMeta which is a string made up of matched $_GET key value pairs * Key value pairs are seperated with _ (underscore) seperate $_GET are se[erated with - (hyphen) * * @param $this->addedMeta - A string made up of matched $_GET key value pairs * @method $this->performPCRE() - performs PCRE replace operations on the buffered $meta * */ function parseMeta(){ $addedMeta = ''; $count = count($this->caught); for( $i=0; $i<$count; $i++ ){ $addedMeta .= $this->caught[$i] . '_' . tep_sanitize_string(tep_output_string_protected($_GET[$this->caught[$i]])) . '-'; } $this->addedMeta = $addedMeta; $this->performPCRE(); } /** * PCRE replace operations to inject added meta info based on matched $_GET variables * * @param $this->finalMeta - Sets $this->finalMeta which contains the modified meat data */ function performPCRE() { $pattern[] = '@<title>\s*@i'; $pattern[] = '@<meta\s*name\s*=\s*"\s*description\s*"\s*content\s*=\s*"\s*@i'; // $pattern[] = '@<meta\s*name\s*=\s*"\s*keywords\s*"\s*content\s*=\s*"\s*@i'; $replace[] = '<title>' . str_replace('-', ' | ', $this->addedMeta); $replace[] = '<meta name="description" content="' . str_replace('-', ' ', $this->addedMeta); // $replace[] = '<meta name="keywords" content="' . str_replace('-', ', ', $this->addedMeta); $this->finalMeta = preg_replace($pattern, $replace, $this->meta); } } //End preventDuplicates class Merci d'avance si vous avez des idées, sachant que cette contrib pourrait être utile à beaucoup de monde. -------------------- Ms2fr . Contributions : Lev_discount_v2.2 - More_pics_6 v1.0 - TotalB2B_1.2b - Must Agree to terms 2.2MS2v1.5.2 - Polbooth_v1.0 - send_order_html_email_v54 - Menubar - fckeditor-oscommerce_V2 - featured_products - GoogleXMLSiteMap - Header_Tags_Controller-2.5.4 - Stats_customers_v1.2b.2 - quick_stock_update_v2.5 - VAT Price incl and excl - xsell_v2.2 - step_by_step_orders_v1.7 - sid_killer - New_products_icon_1.3 - Previous_Next w_ details_v3.3 - Drop_Shadow_v1.1 - Keyword Search Report - Inventaire_MS2 - Sales_Report_2.2.0 - More_Category_Boxes - Star-product - MS3 Tax Class - Previous_next W_details_V3.3 - queries_debug-v1.7 - Stats_customers V1.2b.2 - unsoldCartsReport_V2.1 - SEO - Google Duplicate Content Manager
|
|
|
29 Aug 2010, 11:30
Message
#27
|
|
![]() Ceinture noire OSC Groupe : TechDev Messages : 2201 Inscrit : 9-September 08 Lieu : Douai Membre no 22915 |
Bonjour !
C'est ancien, mais j'ai regardé si la suppression des doubles(ou plus) pages dues à page=, sort=, language= etc... était possible par le robots.txt Bingo, la recherche gg me renvoie au final sur gg où je lis là (extrait ci-dessous): Code User-agent: * Allow: /*?$ Disallow: /*? L'instruction Disallow: / *? bloque toute URL contenant un point d'interrogation. (En d'autres termes, elle bloque toute URL qui commence par votre nom de domaine, suivi d'une chaîne, d'un point d'interrogation, puis d'une chaîne). L'instruction Allow: /*?$ autorise l'accès à toute URL se terminant par un point d'interrogation. (En d'autres termes, elle autorise l'accès à toute URL qui commence par votre nom de domaine, suivi d'une chaîne et qui se termine par un point d'interrogation : aucun caractère ne doit être ajouté après le point d'interrogation). Pour qui en veut ! Chti poupon PS aux modérateurs: j'ai remonté ma recherche depuis la fin. Si un post plus récent donne déjà cette solution, éliminer sans pitié cette intervention. Ce message a été modifié par chti_poupon - 29 Aug 2010, 11:31. |
|
|
![]() ![]() |
|
Version bas débit | Nous sommes le : 18th June 2013 - 06:53 |
| Ce site est déclaré auprès de la commision Nationale de l'Informatique et des Libertés (déclaration n°: 1043896) |