Jump to content

acidvertigo

Members
  • Content count

    275
  • Joined

  • Last visited

  • Days Won

    4

Posts posted by acidvertigo


  1. I'm not sure the best way to do this as some people might want the banner in the header, some in the footer, some in a page. Any thoughts on it ?

    Yeah understand that can be a little tricky. Maybe give the possibility to move header, boxes and footer content modules to Top, Bottom, column left or right position?

     

    p.s. this remembers me phpnuke era....  :D


  2. If this is an old contrib i think that inside the addon file  you should remove these lines on top

    <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html <?php echo HTML_PARAMS; ?>>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
    <title><?php echo TITLE; ?></title>
    <link rel="stylesheet" type="text/css" href="includes/stylesheet.css">
    <script language="javascript" src="includes/general.js"></script>
    <script language="JavaScript" src="includes/javascript/spiffyCal/spiffyCal_v2_1.js"></script>
    <link rel="stylesheet" type="text/css" href="includes/javascript/spiffyCal/spiffyCal_v2_1.css">
    </head>
    <body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" bgcolor="#FFFFFF">
    <!-- header //-->
    <?php require(DIR_WS_INCLUDES . 'header.php'); ?>
    <!-- header_eof //-->
    

    and remove these lines

    <!-- left_navigation //-->
    <?php require(DIR_WS_INCLUDES . 'column_left.php'); ?>
    <!-- left_navigation_eof //-->
    

    and remove also

    <!-- footer //-->
    <?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
    <!-- footer_eof //-->
    
    

    then add after: require('includes/application_top.php');

    require(DIR_WS_INCLUDES . 'template_top.php');

    and add to the end before: require(DIR_WS_INCLUDES . 'application_bottom.php');

    
      require(DIR_WS_INCLUDES . 'template_bottom.php');
    
    

  3. Hello,

     

    I can finally use the multilanguage support for index.php and product_info pages.

     

    So /catalog/en/index.php for language works.

     

    However for contact_us.php, privacy.php and conditions.php apache says "no input file specified" when the language directory is appendded to page like /catalog/contact_us.php/en or /catalog/conditions.php/en

     

    Anoyne can help me on this?

     

    I realized that i cannot use the multilanguage function 'cause my host don't allow followsymlinks on .htaccess.

     

    So i turned the multilanguage support off.

     

    However on my shop i have two languages: Italian (default) language and english (secondary).

     

    I'm using Usu5 URI rewrite method and does it works well.

     

    The only thing that make me mad and cannot understand why, is that if i spider with google every page in the secondary language, it gets a 301 redirect to my primary language. If a go on the same page in secondary language with a browser i get 200 OK status instead. I have the "prevent spider session" , "recreate session" and "force cookie usage" on ON.

     

    My question is what changes between a googlebot request and a browser request on USU5? Why spiders gets 301 redirect and browser get 200 ok status? Anyone can reproduce it?

     

    p.s. I'm sorry that is a duplicate post. but after 150 pages of posts on this forum seems that i'm the only that have this issue.


  4. Hello,

     

    I can finally use the multilanguage support for index.php and product_info pages.

     

    So /catalog/en/index.php for language works.

     

    However for contact_us.php, privacy.php and conditions.php apache says "no input file specified" when the language directory is appendded to page like /catalog/contact_us.php/en or /catalog/conditions.php/en

     

    Anoyne can help me on this?


  5. I installed the version osc 2.3.x

     

    In the first Column on the left I see this in the headline:

    TEXT_LINE_280_12371

     

     

    The database is being read as:

     

    after that everything seems fine in the left column of the report.

    I think it has something to do with the line, that is not displaying correctly on my site, but I'm not sure:

    $msg .= TEXT_LINE_280_1. $count_db_list. '</br>' .TEXT_LINE_280_2. '<i>' . $sql . '</i></br>' . ($descip_check ? TEXT_LINE_280_3 : '');

     

    Anyone also experiencing this problem and maybe has a solution for it?

     

    Have you installed the language files?


  6. Hello,

     

    i upgraded the sqlite cache system to sqlite3. From my tests it works also on php 5.4.

     

    Here the changes:

     

    On ultimate_seo_urls/cache_system/sqlite.php

     

    find:

     

    
    protected static function createDatabase() {
      if ( !is_readable( self::$sqlite_db_file ) ) {
    	self::$db = new SQLiteDatabase( self::$sqlite_db_file, 0666, $error )
    	or trigger_error( 'Failed: ' . $error, E_USER_WARNING );
    	self::createTables();
      } else {
    	self::$db = new SQLiteDatabase( self::$sqlite_db_file, 0666, $error )
    	or trigger_error( 'Failed: ' . $error, E_USER_WARNING );
      }
    }
    

     

    change to:

     

    protected static function createDatabase() {
      if ( !is_readable( self::$sqlite_db_file ) ) {
    	self::$db = new SQLite3( self::$sqlite_db_file, 0666, $error )
    	or trigger_error( 'Failed: ' . $error, E_USER_WARNING );
    	self::createTables();
      } else {
    	self::$db = new SQLite3( self::$sqlite_db_file, 0666, $error )
    	or trigger_error( 'Failed: ' . $error, E_USER_WARNING );
      }
    }
    

     

    and around line 128 find:

     

    
    $replacements = array( sqlite_escape_string( self::$cache_name ), sqlite_escape_string( $rawdata ), date( "Y-m-d H:i:s" ) );
    	  $query = str_replace( $targets, $replacements, $this->insert_query );
    	  self::$db->query( $query );
    	}
    

     

    change to:

     

    $replacements = array( self::$db->escapeString( self::$cache_name ), self::$db->escapeString( $rawdata ), date( "Y-m-d H:i:s" ) );
    	  $query = str_replace( $targets, $replacements, $this->insert_query );
    	  self::$db->exec( $query );
    	}
    

     

    around line 168 find:

     

    self::$db->query( 'DELETE FROM usu_cache' );
    self::$db->query( 'VACUUM usu_cache' );
    

     

    change to:

     

    self::$db->exec( 'DELETE FROM usu_cache' );
    	self::$db->exec( 'VACUUM usu_cache' );
    

     

    at the end find:

     

    self::$db->query( $create_query );
    }
     } // end class
    

     

    change to:

     

    
    self::$db->exec( $create_query );
       }
     } // end class
    

     

     

    and on ultimate_seo_urls/main/usu5.php

     

    find on line 308:

     

    $row = $result->fetch();
    

     

    Change to:

     

    $row = $result->fetchArray();
    

     

    Hope it can help


  7. osCommerce apparently allows categories id's to be added to no end in the url. I have around 1,000 categories 3 levels deep and around 20,000 products. I've had page load times in excess of 5 minutes, which seem to be caused by the caching system (speeds increased after cache has been deleted). After more insight from problems every 3 months at the start, and more frequent as time went on I've came to notice an interesting trend. For some reason the web crawlers just start adding categories such as: 22_34_78_79_99 and so on! I now have around 90k pages indexed at Google, LOL. I'm going to have a lot of pages not found for quite awhile to come. As long as the last two are valid osCommerce category id's the site accepts the entry and displays the last category id.

     

    Many of the cached entries had category depths as high as 5 levels deep or more?

     

    This becomes a serious issue in USU5 because of the size of the cache (seek times in sqlite are enormous, file seek times are impossible, I never tried mysql caching), with google indexing around 90k pages and crawling an amazing amount of pages and continually adding random add-on categories. I was desperate and made a change to the tep_parse_category_path function in general.php, this fixed the caching problem from osCommerce's cache, but did nothing for the problem with caching in USU5. In order to stop USU5 from caching these invalid url's, I tried to modify the index.php in the page modules directory and couldn't figure out how. So instead I was able to modify the hrefLink function in usu5.php file in the main directory like this:

    public function hrefLink( $page, $parameters, $connection, $add_session_id, $search_engine_safe ) {
     // Badly coded shops often pass in odd characters
    
     if (sizeof($parameters)>2){
      $parameters = array_slice ($parameters, -3);	
      return osc_href_link( $page, $parameters, $connection, $add_session_id, $search_engine_safe );
     }
    

     

    I'm not sure if this is the most elegant way to fix this problem or if there is a better way!

     

    -Bill

     

    I have the same issue, google apparently adds or also remove the category number. For example category with 28_378_451 becomes 378_451 in my case generating a lot of duplicate content (server header returns 200 status).


  8. To explain better:

     

    www.example.com/catalog/nome-prodotto-p-20.html (default language)

     

    returns:

     

    TTP/1.1 200 OK =>

    Date => Mon, 08 Aug 2011 09:02:06 GMT

    Server => Apache/2.2

    X-Powered-By => PHP/5.3.6

    Expires => Thu, 19 Nov 1981 08:52:00 GMT

    Cache-Control => no-store, no-cache, must-revalidate, post-check=0, pre-check=0

    Pragma => no-cache

    Vary => Accept-Encoding

    Connection => close

    Content-Type => text/html; charset=iso-8859-1

     

    www.example.com/catalog/product-name-p-20.html (english)

     

    returns:

     

    HTTP/1.1 301 Moved Permanently =>

    Date => Mon, 08 Aug 2011 08:59:13 GMT

    Server => Apache/2.2

    X-Powered-By => PHP/5.3.6

    Expires => Thu, 19 Nov 1981 08:52:00 GMT

    Cache-Control => no-store, no-cache, must-revalidate, post-check=0, pre-check=0

    Pragma => no-cache

    Set-Cookie => osCsid=qjn1mpd1jpn41ugsr9e6b5tkg6; path=/catalog/; domain=www.nagrit.com

    Location => www.example.com/catalog/nome-prodotto-p-20.html?osCsid=qjn1mpd1jpn41ugsr9e6b5

    Vary => Accept-Encoding

    Connection => close

    Content-Type => text/html

     

    The browser is not redirected it shows the right page www.example.com/catalog/product-name-p-20.html, in firebug it shows status code 200, but googlebot and the other boot will be redirected to the page in the default language.

     

    It's possible to change this behaviour?


  9. Just to share a little trick to send the canonical link also from the server headers

     

    in catalog/includes/modules/kiss_meta_tags/classes/kiss_meta_tags_class.php

     

    find:

     

     private function canonical() {
         if ( ( KISSMT_CANONICAL_ON == 'true' ) && ( false !== $this->canonical ) ) {
           if ( $this->canonical == 'noindex' ) {
             echo '<meta name="robots" content="noindex, follow"' . $this->html_end . PHP_EOL;;
           } else {
    
                   echo '<link rel="canonical" href="' . $this->canonical . '"' . $this->html_end . PHP_EOL;;
    
    
           }
         }
    
    

     

    change to:

     

     private function canonical() {
         if ( ( KISSMT_CANONICAL_ON == 'true' ) && ( false !== $this->canonical ) ) {
           if ( $this->canonical == 'noindex' ) {
             echo '<meta name="robots" content="noindex, follow"' . $this->html_end . PHP_EOL;;
           } else {
    
               header("Link: <$this->canonical>; rel=\"canonical\"");
             echo '<link rel="canonical" href="' . $this->canonical . '"' . $this->html_end . PHP_EOL;;
    
    
           }
         }
    

     

    The server will send the canonical linnk in the HTTP header: Link: <http://www.example.com/downloads/white-paper.pdf>; rel="canonical"


  10. Hello i'm using USUS5 pro but cannot use it in multilanguage mode because i cannot change some configuration on my server (external hosting)

     

    I've noticed that i get a 301 redirect (in non multilanguage mode) on pages in other languages, for example:

     

     

    http://www.example.com/catalog/product-name-p-10.html (english) redirects 301 to http://www.example.com/catalog/nome-prodotto-p-10.html (italian default language).

     

    The reason is this code in /catalog/includes/modules/ultimate_seo_urls5/main/validator.php

     

    //  If the incoming uri and the newly created uri do not match then we need to 301 redirect to the new.
         if ( Usu_Main::i()->getVar( 'request_compare_in' ) != Usu_Main::i()->getVar( 'request_compare_new' ) ) {
           $this->redirect( $new_url );
         }
       } // end method
    
    

     

    if i disable it, I get 200 status code for all the pages in english, but if someone type a invalid url as for example http://www.example.com/catalog/no-p-10.html the scripts does not redirect and return 200 status code and duplicate content.

     

    Can someone help me to chenge the code above to return 200 status code on pages in other languages without lost the useful 301 redirect on duplicate content?

×