Jump to content


Corporate Sponsors


Latest News: (loading..)

* * * * * 12 votes

[CONTRIBUTION] Ultimate SEO URLs v2.1 - by Chemo


6413 replies to this topic

#4961 Jack_mcs

  • Community Member
  • 24,075 posts
  • Real Name:Jack
  • Gender:Male

Posted 19 March 2010, 15:23

View PostAndreas2003, on 19 March 2010, 14:02, said:

Yes, that's right, I'm on v2.7.
But why should I change it, when it is working correctly and giving me multi-language-URLs. I'm satisfied at this point, except for the a.m.
Because no one is supporting it. If you want to continue using it, your'e on your own unless someone decides to help.

Quote

Robert has written this piece of code some time ago.
And I think, for the needed change only a quick look at the a.m. code is needed.
You need to ask him about his code.

#4962 FWR Media

  • Community Member
  • 6,462 posts
  • Real Name:Robert Fisher
  • Gender:Male
  • Location:Stowmarket - Suffolk - UK

Posted 20 March 2010, 08:59

View PostAndreas2003, on 19 March 2010, 14:02, said:

Thanks for your answer, Jack.
Yes, that's right, I'm on v2.7.
But why should I change it, when it is working correctly and giving me multi-language-URLs. I'm satisfied at this point, except for the a.m.

Robert has written this piece of code some time ago.
And I think, for the needed change only a quick look at the a.m. code is needed.

The full code of the file "preventDuplicates.php" is:
<?php
/**
 * Google Duplicate Content Manager
 * 
 * oscommerce version compatability - MS-2.2, RC1, RC2, RC2a
 * PHP4/5, MySQL (No DB changes needed)
 * Adds title/meta to pages in order to cure duplicate title/meta problems
 * @package preventDuplicates.php
 * @link http://www.fwrmedia.co.uk/ FWR Media
 * @copyright Copyright 2008, FWR Media
 * @author Robert Fisher
 * @filesource catalog/includes/classes/preventDuplicates
 * @version 1.0alpha
 * @license See standard oscommerce license
 * filename preventDuplicates.php
 * date: 07 September 2008
 */
 
 /**
 * 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  
?>

I think, that the title and the meta description is separated first and then added together with this mentioned sorting prefix / sorting separator.

Thanks for your help,
regards
Andreas

The support topic for this is here why you are asking this question in the ultimate seo urls thread I don't know.
Ultimate SEO Urls 5 PRO - Multi Language Modern, Powerful SEO Urls

KissMT Dynamic SEO Meta & Canonical Header Tags

KissER Error Handling and Debugging

If you found my post useful please click the green + sign to the right

Please only PM me for paid work.


#4963 Andreas2003

  • Community Member
  • 312 posts
  • Real Name:Andreas

Posted 20 March 2010, 09:18

Hi Robert,

thanks for making this clear. I didn't recognized the other support thread.
Thanks.
Regards
Andreas

#4964 idolcemia

  • Community Member
  • 11 posts
  • Real Name:Alexander Mountjoy

Posted 20 March 2010, 10:13

Does anyone have a recommendation on how to deal with the problem of inserting 301 redirects on an old site to transition to Ultimate SEO?

I have version Ultimate_SEO_URLSv22d_7 installed on a new site and it is working great and now want to install it on an existing site, but my seo guy says I need to redirect all the old product URL's.

I found this post referencing Ultimate SEO which suggests dynamically rewriting page requests that use the old format:

About half way down this page is a discussion by Gtech:
http://forums.digitalpoint.com/showthread.php?t=136032

Seach the page for the "1) Ultimate SEO is what you want. This is a great contribution and I use it myself." to jump right to it.

But I wanted a second opinion from this forum. What's the best solution to the 301 problem for a user of Ultimate SEO on an established osCommerce site?

#4965 Jack_mcs

  • Community Member
  • 24,075 posts
  • Real Name:Jack
  • Gender:Male

Posted 20 March 2010, 11:14

View Postidolcemia, on 20 March 2010, 10:13, said:

Does anyone have a recommendation on how to deal with the problem of inserting 301 redirects on an old site to transition to Ultimate SEO?
Enable the auto redirect option in the settings and it will issue the 301.

#4966 Jack_mcs

  • Community Member
  • 24,075 posts
  • Real Name:Jack
  • Gender:Male

Posted 22 March 2010, 02:20

A new version has been uploaded with these changes:

- Added check for updating configure settings to remove warnings
- Added url verification code - works for categories and products - rest is still to be done
- Added option to add cPath ID to url back in per several requests
- Fixed typo for the articles topic cache code
- Replaced eregi call in admin/categories.php

If you have a recent version of 2.2d, then you just need to upload the contents of the upload directory to upgrade to this version.

#4967 divadniprut

  • Community Member
  • 8 posts
  • Real Name:david turpin

Posted 23 March 2010, 09:57

Hy,

I have troubles with your Ultimate_SEO_URLSv22d_8 !
website url : http://www.zenetnature.fr/index.php
My htaccess in the root directory :
Options +FollowSymLinks
RewriteEngine On
RewriteBase /

RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-m-(.*).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pi-(.*).html$ popup_image.php?pID=$2&%{QUERY_STRING}
RewriteRule ^(.*)-by-(.*).html$ all-products.php?fl=$2&%{QUERY_STRING}
RewriteRule ^(.*)-t-(.*).html$ articles.php?tPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-a-(.*).html$ article_info.php?articles_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-au-(.*).html$ articles.php?authors_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pr-(.*).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pri-(.*).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-f-(.*).html$ faqdesk_info.php?faqdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-fc-(.*).html$ faqdesk_index.php?faqPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-fri-(.*).html$ faqdesk_reviews_info.php?faqdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-fra-(.*).html$ faqdesk_reviews_article.php?faqdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-i-(.*).html$ information.php?info_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-links-(.*).html$ links.php?lPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pm-([0-9]+).html$ info_pages.php?pages_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-n-(.*).html$ newsdesk_info.php?newsdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-nc-(.*).html$ newsdesk_index.php?newsPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-nri-(.*).html$ newsdesk_reviews_info.php?newsdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-nra-(.*).html$ newsdesk_reviews_article.php?newsdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-po-([0-9]+).html$ pollbooth.php?pollid=$2&%{QUERY_STRING}

When you click on a product : nothing happens !
when i want to log to my admin, i've got this error message :
Warning: main(includes/classes/navigation_history.php) [function.main]: failed to open stream: No such file or directory in /XXXXXXX/zenetnat/www/admin/includes/application_top.php on line 136

Fatal error: main() [function.require]: Failed opening required 'includes/classes/navigation_history.php' (include_path='.:/usr/local/lib/php') in /XXXXXXX/zenetnat/www/admin/includes/application_top.php on line 136

May you can help me on this ?

thx

David

#4968 FWR Media

  • Community Member
  • 6,462 posts
  • Real Name:Robert Fisher
  • Gender:Male
  • Location:Stowmarket - Suffolk - UK

Posted 23 March 2010, 10:06

View Postdivadniprut, on 23 March 2010, 09:57, said:

Hy,

I have troubles with your Ultimate_SEO_URLSv22d_8 !
website url : http://www.zenetnature.fr/index.php
My htaccess in the root directory :
Options +FollowSymLinks
RewriteEngine On
RewriteBase /

RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-m-(.*).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pi-(.*).html$ popup_image.php?pID=$2&%{QUERY_STRING}
RewriteRule ^(.*)-by-(.*).html$ all-products.php?fl=$2&%{QUERY_STRING}
RewriteRule ^(.*)-t-(.*).html$ articles.php?tPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-a-(.*).html$ article_info.php?articles_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-au-(.*).html$ articles.php?authors_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pr-(.*).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pri-(.*).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-f-(.*).html$ faqdesk_info.php?faqdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-fc-(.*).html$ faqdesk_index.php?faqPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-fri-(.*).html$ faqdesk_reviews_info.php?faqdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-fra-(.*).html$ faqdesk_reviews_article.php?faqdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-i-(.*).html$ information.php?info_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-links-(.*).html$ links.php?lPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pm-([0-9]+).html$ info_pages.php?pages_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-n-(.*).html$ newsdesk_info.php?newsdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-nc-(.*).html$ newsdesk_index.php?newsPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-nri-(.*).html$ newsdesk_reviews_info.php?newsdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-nra-(.*).html$ newsdesk_reviews_article.php?newsdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-po-([0-9]+).html$ pollbooth.php?pollid=$2&%{QUERY_STRING}

When you click on a product : nothing happens !
when i want to log to my admin, i've got this error message :
Warning: main(includes/classes/navigation_history.php) [function.main]: failed to open stream: No such file or directory in /XXXXXXX/zenetnat/www/admin/includes/application_top.php on line 136

Fatal error: main() [function.require]: Failed opening required 'includes/classes/navigation_history.php' (include_path='.:/usr/local/lib/php') in /XXXXXXX/zenetnat/www/admin/includes/application_top.php on line 136

May you can help me on this ?

thx

David

Can't help with the first problem as I don't support this version.

Re: your second problem:
Failed opening required 'includes/classes/navigation_history.php'

admin/includes/application_top.php does not include the navigation class so looks like you have overwritten the admin file with catalog/includes/application_top.php
Ultimate SEO Urls 5 PRO - Multi Language Modern, Powerful SEO Urls

KissMT Dynamic SEO Meta & Canonical Header Tags

KissER Error Handling and Debugging

If you found my post useful please click the green + sign to the right

Please only PM me for paid work.


#4969 divadniprut

  • Community Member
  • 8 posts
  • Real Name:david turpin

Posted 23 March 2010, 10:09

Still David on http://www.zenetnature.fr/index.php !

If I don't add a double } at the end of your code in includes/the application_top.php, I've got this error :
Parse error: syntax error, unexpected $end in /homez.332/zenetnat/www/includes/application_top.php on line 523

with my application top file :

<?php
/*
$Id: application_top.php 1833 2008-01-30 22:03:30Z hpdl $

osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com

Copyright © 2008 osCommerce

Released under the GNU General Public License
*/

// Start the clock for the page parse time log
define('PAGE_PARSE_START_TIME', microtime());

// Set the level of error reporting
error_reporting(E_ALL & ~E_NOTICE);

// check support for register_globals
if (function_exists('ini_get') && (ini_get('register_globals') == false) && (PHP_VERSION < 4.3) ) {
exit('Server Requirement Error: register_globals is disabled in your PHP configuration. This can be enabled in your php.ini configuration file or in the .htaccess file in your catalog directory. Please use PHP 4.3+ if register_globals cannot be enabled on the server.');
}

// Set the local configuration parameters - mainly for developers
if (file_exists('includes/local/configure.php')) include('includes/local/configure.php');

// Include application configuration parameters
require('includes/configure.php');

// Define the project version
define('PROJECT_VERSION', 'osCommerce Online Merchant v2.2 RC2a');

// some code to solve compatibility issues
require(DIR_WS_FUNCTIONS . 'compatibility.php');

// set php_self in the local scope
$PHP_SELF = (isset($HTTP_SERVER_VARS['PHP_SELF']) ? $HTTP_SERVER_VARS['PHP_SELF'] : $HTTP_SERVER_VARS['SCRIPT_NAME']);

// Used in the "Backup Manager" to compress backups
define('LOCAL_EXE_GZIP', '/usr/bin/gzip');
define('LOCAL_EXE_GUNZIP', '/usr/bin/gunzip');
define('LOCAL_EXE_ZIP', '/usr/local/bin/zip');
define('LOCAL_EXE_UNZIP', '/usr/local/bin/unzip');

// include the list of project filenames
require(DIR_WS_INCLUDES . 'filenames.php');

// include the list of project database tables
require(DIR_WS_INCLUDES . 'database_tables.php');

// customization for the design layout
define('BOX_WIDTH', 125); // how wide the boxes should be in pixels (default: 125)

// Define how do we update currency exchange rates
// Possible values are 'oanda' 'xe' or ''
define('CURRENCY_SERVER_PRIMARY', 'oanda');
define('CURRENCY_SERVER_BACKUP', 'xe');

// include the database functions
require(DIR_WS_FUNCTIONS . 'database.php');

// make a connection to the database... now
tep_db_connect() or die('Unable to connect to database server!');

// set application wide parameters
$configuration_query = tep_db_query('select configuration_key as cfgKey, configuration_value as cfgValue from ' . TABLE_CONFIGURATION);
while ($configuration = tep_db_fetch_array($configuration_query)) {
define($configuration['cfgKey'], $configuration['cfgValue']);
}

// define our general functions used application-wide
require(DIR_WS_FUNCTIONS . 'general.php');
require(DIR_WS_FUNCTIONS . 'html_output.php');

// initialize the logger class
require(DIR_WS_CLASSES . 'logger.php');

// include shopping cart class
require(DIR_WS_CLASSES . 'shopping_cart.php');

// check to see if php implemented session management functions - if not, include php3/php4 compatible session class
if (!function_exists('session_start')) {
define('PHP_SESSION_NAME', 'osCAdminID');
define('PHP_SESSION_PATH', '/');
define('PHP_SESSION_SAVE_PATH', SESSION_WRITE_DIRECTORY);

include(DIR_WS_CLASSES . 'sessions.php');
}

// define how the session functions will be used
require(DIR_WS_FUNCTIONS . 'sessions.php');

// set the session name and save path
tep_session_name('osCAdminID');
tep_session_save_path(SESSION_WRITE_DIRECTORY);

// set the session cookie parameters
if (function_exists('session_set_cookie_params')) {
session_set_cookie_params(0, DIR_WS_ADMIN);
} elseif (function_exists('ini_set')) {
ini_set('session.cookie_lifetime', '0');
ini_set('session.cookie_path', DIR_WS_ADMIN);
}

// lets start our session
tep_session_start();

if ( (PHP_VERSION >= 4.3) && function_exists('ini_get') && (ini_get('register_globals') == false) ) {
extract($_SESSION, EXTR_OVERWRITE+EXTR_REFS);
}

// set the language
if (!tep_session_is_registered('language') || isset($HTTP_GET_VARS['language'])) {
if (!tep_session_is_registered('language')) {
tep_session_register('language');
tep_session_register('languages_id');
}

include(DIR_WS_CLASSES . 'language.php');
$lng = new language();

if (isset($HTTP_GET_VARS['language']) && tep_not_null($HTTP_GET_VARS['language'])) {
$lng->set_language($HTTP_GET_VARS['language']);
} else {
$lng->get_browser_language();
}

$language = $lng->language['directory'];
$languages_id = $lng->language['id'];
}

// redirect to login page if administrator is not yet logged in
if (!tep_session_is_registered('admin')) {
$redirect = false;

$current_page = basename($PHP_SELF);

if ($current_page != FILENAME_LOGIN) {
if (!tep_session_is_registered('redirect_origin')) {
tep_session_register('redirect_origin');

$redirect_origin = array('page' => $current_page,
'get' => $HTTP_GET_VARS);
}

$redirect = true;
}

if ($redirect == true) {
tep_redirect(tep_href_link(FILENAME_LOGIN));
}

unset($redirect);
}

// include the language translations
require(DIR_WS_LANGUAGES . $language . '.php');
$current_page = basename($PHP_SELF);
if (file_exists(DIR_WS_LANGUAGES . $language . '/' . $current_page)) {
include(DIR_WS_LANGUAGES . $language . '/' . $current_page);
}

// define our localization functions
require(DIR_WS_FUNCTIONS . 'localization.php');

// Include validation functions (right now only email address)
require(DIR_WS_FUNCTIONS . 'validations.php');

// setup our boxes
require(DIR_WS_CLASSES . 'table_block.php');
require(DIR_WS_CLASSES . 'box.php');

// initialize the message stack for output messages
require(DIR_WS_CLASSES . 'message_stack.php');
$messageStack = new messageStack;

// split-page-results
require(DIR_WS_CLASSES . 'split_page_results.php');

// entry/item info classes
require(DIR_WS_CLASSES . 'object_info.php');

// email classes
require(DIR_WS_CLASSES . 'mime.php');
require(DIR_WS_CLASSES . 'email.php');

// file uploading class
require(DIR_WS_CLASSES . 'upload.php');

// calculate category path
if (isset($HTTP_GET_VARS['cPath'])) {
$cPath = $HTTP_GET_VARS['cPath'];
} else {
$cPath = '';
}

if (tep_not_null($cPath)) {
$cPath_array = tep_parse_category_path($cPath);
$cPath = implode('_', $cPath_array);
$current_category_id = $cPath_array[(sizeof($cPath_array)-1)];
} else {
$current_category_id = 0;
}

// default open navigation box
if (!tep_session_is_registered('selected_box')) {
tep_session_register('selected_box');
$selected_box = 'configuration';
}

if (isset($HTTP_GET_VARS['selected_box'])) {
$selected_box = $HTTP_GET_VARS['selected_box'];
}

// the following cache blocks are used in the Tools->Cache section
// ('language' in the filename is automatically replaced by available languages)
$cache_blocks = array(array('title' => TEXT_CACHE_CATEGORIES, 'code' => 'categories', 'file' => 'categories_box-language.cache', 'multiple' => true),
array('title' => TEXT_CACHE_MANUFACTURERS, 'code' => 'manufacturers', 'file' => 'manufacturers_box-language.cache', 'multiple' => true),
array('title' => TEXT_CACHE_ALSO_PURCHASED, 'code' => 'also_purchased', 'file' => 'also_purchased-language.cache', 'multiple' => true)
);

// check if a default currency is set
if (!defined('DEFAULT_CURRENCY')) {
$messageStack->add(ERROR_NO_DEFAULT_CURRENCY_DEFINED, 'error');
}

// check if a default language is set
if (!defined('DEFAULT_LANGUAGE')) {
$messageStack->add(ERROR_NO_DEFAULT_LANGUAGE_DEFINED, 'error');
}

if (function_exists('ini_get') && ((bool)ini_get('file_uploads') == false) ) {
$messageStack->add(WARNING_FILE_UPLOADS_DISABLED, 'warning');
}
?>


THX

David

#4970 Jack_mcs

  • Community Member
  • 24,075 posts
  • Real Name:Jack
  • Gender:Male

Posted 23 March 2010, 11:27

View Postdivadniprut, on 23 March 2010, 10:09, said:

Still David on http://www.zenetnature.fr/index.php !

If I don't add a double } at the end of your code in includes/the application_top.php, I've got this error :
Parse error: syntax error, unexpected $end in /homez.332/zenetnat/www/includes/application_top.php on line 523

with my application top file :
You may want to try editing the includes/application_top.php file, per the instructions, instead of admin/includes/application_top.php.

#4971 tadman

  • Community Member
  • 42 posts
  • Real Name:Joseph

Posted 23 March 2010, 12:28

Hi

Recently upgraded from 2.2d_7 to 2.2d_8 but the cPath variable option doesn't come up under the SEO URLs menu.

All I get are options:

Add category parent to product URLs? true
Add category parent to begining of URLs? false

For the upgrade I just copied the reset.seo.cache and seo.class from the upload dir.

Also as an aside when I try to uninstall the SEO URLs it tells me CACHE table does not exist ...

#4972 Jack_mcs

  • Community Member
  • 24,075 posts
  • Real Name:Jack
  • Gender:Male

Posted 23 March 2010, 13:24

View Posttadman, on 23 March 2010, 12:28, said:

Recently upgraded from 2.2d_7 to 2.2d_8 but the cPath variable option doesn't come up under the SEO URLs menu.

All I get are options:

Add category parent to product URLs? true
Add category parent to begining of URLs? false

For the upgrade I just copied the reset.seo.cache and seo.class from the upload dir.

Also as an aside when I try to uninstall the SEO URLs it tells me CACHE table does not exist ...
All that changed in this update was the classes/seo.class.php file. The cache table has never been changed since the contribution was released so you shouldn't be seeing such an error. Try going into admin and using the uninstall option. Then go to your shop and click on the home page, which will re-install it.

#4973 tadman

  • Community Member
  • 42 posts
  • Real Name:Joseph

Posted 23 March 2010, 17:18

View PostJack_mcs, on 23 March 2010, 13:24, said:

All that changed in this update was the classes/seo.class.php file. The cache table has never been changed since the contribution was released so you shouldn't be seeing such an error. Try going into admin and using the uninstall option. Then go to your shop and click on the home page, which will re-install it.

Hi Jack

I have uninstalled SEO URLs ( had to manually delete the records on the configuration table as using the UNINSTALL option would display the "1146 - Table 'xxxxxx_oscommerce.cache' doesn't exist")

So the SEO URL has now reinstalled after refreshing the page.

I have set "Add category parent to product URLs?" to true. This is for category name and ID I assume?

Anyway the cPath ID is still not being passed through with the rewritten URLs ...

Have double checked my edited files and .htaccess to match the original install instructions ...

#4974 Jack_mcs

  • Community Member
  • 24,075 posts
  • Real Name:Jack
  • Gender:Male

Posted 23 March 2010, 18:24

View Posttadman, on 23 March 2010, 17:18, said:

Anyway the cPath ID is still not being passed through with the rewritten URLs ...
Someone that was testing this pointed out that I uploaded the wrong file somehow. The one uploaded did not have all of the changes in, thus your problem. I have uploaded a new version. Please use the seo.class.php file from it and see if that is any better. I do aplogize for the frustration and confusion this caused.

#4975 tadman

  • Community Member
  • 42 posts
  • Real Name:Joseph

Posted 23 March 2010, 19:12

View PostJack_mcs, on 23 March 2010, 18:24, said:

Someone that was testing this pointed out that I uploaded the wrong file somehow. The one uploaded did not have all of the changes in, thus your problem. I have uploaded a new version. Please use the seo.class.php file from it and see if that is any better. I do aplogize for the frustration and confusion this caused.


Thanks ... now it works fine. cPath id is passed through.

There is another problem though :( ... When I disable the contribution i.e. set Enable SEO URLs to false, when I try to view a product (product_info.php) it hangs before displaying "This webpage has a redirected loop". When I enable SEO again it's fine.

My setup info:

Osc 2.2-MS2
PHP 5.2.13
Apache 2.2.15

I am also using the Product Listing Enhancements, Thumbnails & Manufacturers contrib.

#4976 Fure

  • Community Member
  • 36 posts
  • Real Name:Frédéric
  • Gender:Male

Posted 23 March 2010, 19:20

I installed and the url's are changed.
But it seems that changing the settings in admin doesn't do anything.
Whatever I change everything stays the same.

I allready uninstalled and reloaded the home page and still the settings remain unfunctional.
I need to remove the category from the url.

Anny ideas?

#4977 prism

  • Community Member
  • 1 posts
  • Real Name:steve

Posted 23 March 2010, 19:28

This just does not work for me. Followed the instructions about 4-5 times and cannot see where i have gone wrong.

The urls for products show up all nice and seo'd but the page cannot be displayed.

URL: http://74.54.136.150/~whifbitz/

Heres the .htaccess which is in my public html root:

Options +FollowSymLinks
RewriteEngine On
RewriteBase /

RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-m-(.*).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pi-(.*).html$ popup_image.php?pID=$2&%{QUERY_STRING}
RewriteRule ^(.*)-by-(.*).html$ all-products.php?fl=$2&%{QUERY_STRING}
RewriteRule ^(.*)-t-(.*).html$ articles.php?tPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-a-(.*).html$ article_info.php?articles_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-au-(.*).html$ articles.php?authors_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pr-(.*).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pri-(.*).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-f-(.*).html$ faqdesk_info.php?faqdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-fc-(.*).html$ faqdesk_index.php?faqPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-fri-(.*).html$ faqdesk_reviews_info.php?faqdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-fra-(.*).html$ faqdesk_reviews_article.php?faqdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-i-(.*).html$ information.php?info_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-links-(.*).html$ links.php?lPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pm-([0-9]+).html$ info_pages.php?pages_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-n-(.*).html$ newsdesk_info.php?newsdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-nc-(.*).html$ newsdesk_index.php?newsPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-nri-(.*).html$ newsdesk_reviews_info.php?newsdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-nra-(.*).html$ newsdesk_reviews_article.php?newsdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-po-([0-9]+).html$ pollbooth.php?pollid=$2&%{QUERY_STRING}

Thanks for any help!

#4978 Jack_mcs

  • Community Member
  • 24,075 posts
  • Real Name:Jack
  • Gender:Male

Posted 23 March 2010, 23:50

View Posttadman, on 23 March 2010, 19:12, said:

There is another problem though :( ... When I disable the contribution i.e. set Enable SEO URLs to false, when I try to view a product (product_info.php) it hangs before displaying "This webpage has a redirected loop". When I enable SEO again it's fine.
This is a known situation and has been mentioned many times in this thread. You need to set all of the settings to false, not just the first one.

#4979 Jack_mcs

  • Community Member
  • 24,075 posts
  • Real Name:Jack
  • Gender:Male

Posted 23 March 2010, 23:51

View PostFure, on 23 March 2010, 19:20, said:

I installed and the url's are changed.
What version are you using?

#4980 Jack_mcs

  • Community Member
  • 24,075 posts
  • Real Name:Jack
  • Gender:Male

Posted 23 March 2010, 23:53

View Postprism, on 23 March 2010, 19:28, said:

This just does not work for me. Followed the instructions about 4-5 times and cannot see where i have gone wrong.

The urls for products show up all nice and seo'd but the page cannot be displayed.

URL: http://74.54.136.150/~whifbitz/
This has been answered several times recently. The contribution won't work with an IP.