Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Phocea

Pioneers
  • Posts

    154
  • Joined

  • Last visited

Everything posted by Phocea

  1. Hello, Has anyone got a test site where I could have a look at the filtering and comparaison functionality please? If I understand correctly, the only negative point of the filter is that you can add some but cannot remove them? Thanks, Greg
  2. Hello, Regarding the canonical url, i made some changes to the code I submitted to you a while back. It is basically enough to add: $canonical_url = tep_href_link(basename($_SERVER['PHP_SELF']), tep_get_all_get_params()); just before if (tep_not_null($canonical_url)) echo ' <link rel="canonical" href="'. $canonical_url.'">'. "\n"; All other initialisation of the variblae are unnecessary. Also you may want to remove the closing / on each of the META links, since this is not W3C compliant.
  3. Can you explain what is the difference of functionality between what you are proposing and the standard get_browser_language() method used in the Oscommerce language class ?? By default, Oscommerce already automatically detect browser language and set the catalogue navigation language accordingly (or revert to the default one).
  4. I dont exactly agree since we can end up with 3 kinds of URL for the same page and have a bad case of duplicate content www.domain.com/category_name_in_english/product_name_in_english.html www.domain.com/category_name_in_english/product_name_in_english.html?language=uk www.domain.com/category_name_in_english/product_name_in_english.html?language=fr (by clicking on the flag) If we take a concrete example on your dev site we can have: http://www.fwrdev.co.uk/cmonitor/index.php/drama-c-3_15 http://www.fwrdev.co.uk/cmonitor/index.php...=en&sort=2a http://www.fwrdev.co.uk/cmonitor/index.php...=de&sort=2a It seems that at product level you do a redirection to correct the product name when choosing another URL, however the url is still wrong on the actual flag link
  5. Just a short message with questions and ideas for features in this new module. I had a quick look at the code and the architecture has nothing to do with the old series 2. Must have been some work to refactor all of this, Well done !! * The demo version seems to be in the non rewrite mode you described since we can still see the php name of the page you are on. Is this for debugging purposes. Is there a way to change it on the demo site ourselves or should I installl it on one of my own? * In the version 2, there was an option to display the parent category in the path. Furthermore, i changed the code to show the main parent categorie/the current category/the product name (http://domain.com/category1/category1_3/product_name). Is it possible to have this as an option straight out? In the function I changed I also gave the option to choose the delimiter between each category, so one can use - or / to display like a directory structure (at the time it was still discussed which one was actually better, I opted for / :blush: ) * Will this version finally handle the language parameter correctly. Commercial products like magi SEO are doing a great job of it. This would avoid "duplicate content" on pages existing with or without the language parameter. I guess that default languages should show in the normal domain name, and other in a virtual sub directory. Something like the code below shoudl take care of the rewriting RewriteCond %{QUERY_STRING} ^language=fr$ RewriteRule ^(.*)$ http://www.eboutik.net/fr/$1? [L,R=301] RewriteCond %{QUERY_STRING} ^language=en$ RewriteRule ^(.*)$ http://www.eboutik.net/en/$1? [L,R=301] or simply RewriteRule ^([a-z]{2})/(.*)$ $2?language=$1&%{QUERY_STRING} Not sure where this should then be handled in the abstract SEO class ( substr($_SESSION['language'], 0, 2).'/'; ??) * The above logic could also apply to currencies maybe ? RewriteRule ^(ch)/(.*)$ $2?language=fr&currency=CHF&%{QUERY_STRING} RewriteRule ^(fr)/(.*)$ $2?language=fr&currency=EUR&%{QUERY_STRING} RewriteRule ^(uk)/(.*)$ $2?language=en&currency=GBP&%{QUERY_STRING} RewriteRule ^(us)/(.*)$ $2?language=en&currency=USD&%{QUERY_STRING} RewriteRule ^(ca)/(.*)$ $2?language=en&currency=CAD&%{QUERY_STRING} RewriteRule ^(ca-fr)/(.*)$ $2?language=fr&currency=CAD&%{QUERY_STRING} * Another hack I made on my shop is for the split per page in the product listing. I however done this directly into the split_page_results.php class. I seem to remember spotting a SEO 2 soltuion on those forums * Similar to the above, what about the filters on the product listing? I think there is enough to discuss for now :) Dont ger me wrong, this is not a list of features I am asking you to do .. just want to have an opinion on the feasibility in the new code structure, and if some are already planned.
  6. No problem ..watch out for the attached oe which doenst seems to display properly on this forum... Also I guess that currency signs could be converted as standard in each languages file
  7. Great job on taking into your hand to update chemo great contribution. I am yet to try it our but will do this as soon as I can. I have throught the few years of use of the 2 series, made a few changes to include rewriting of some other pages, I will get back to you with those to see if they can be included here as standard. By the way, are languages handled in series 5 (I mean to we have a rewrite like www.domain.com/uk, /fr, /de/ etc...). i know I have seen talk about this in a few places, so i was wondering :) To finish just a small contribution for the french character conversion here is the one I would use: // French $char_convert = array('à' => 'a', 'â' => 'a', 'æ' => 'ae', 'ç' => 'c', 'é' => 'e', 'è' => 'e', 'ê' => 'e', 'ë' => 'e', 'î' => 'i', 'ï' => 'i', 'œ' => 'oe', 'ô' => 'o', 'ù' => 'u', 'û' => 'u', 'À' => 'A', 'Â' => 'A', 'Æ' => 'AE', Ç' => 'C', 'È' => 'E', 'É' => 'E', 'Ê' => 'E', 'Ë' => 'E', 'Î' => 'I', 'Ï' => 'I', 'Œ' => 'OE', 'Ô' => 'O', 'Ù' => 'U', 'Û' => 'U', '€' => 'Euros');
  8. Hello, I would like to propose the following changes to introduce canonical url link into header_tags, to help reduce the duplicate_content problems. Changes need to take place in includes/header_tags.php as follow: After case (strstr($_SERVER['PHP_SELF'],FILENAME_DEFAULT) or strstr($PHP_SELF,FILENAME_DEFAULT)): Add // Canonical URL add-on $canonical_url = tep_href_link(FILENAME_DEFAULT, 'cPath='.$current_category_id); After default: $filename = FILENAME_PRODUCT_INFO; } Add // Canonical URL add-on if ($_GET['products_id'] != '') { $canonical_url = tep_href_link($filename, 'products_id='.$_GET['products_id']); } After case (strstr($_SERVER['PHP_SELF'],FILENAME_SPECIALS) or strstr($PHP_SELF,FILENAME_SPECIALS)): Add // Canonical URL add-on $canonical_url = tep_href_link(FILENAME_SPECIALS); After $header_tags_array['keywords'] = tep_db_prepare_input($defaultTags['default_keywords']); Add $canonical_url = tep_href_link($PHP_SELF); Before echo '<!-- EOF: Header Tags SEO Generated Meta Tags -->' . "\n"; Add if ($canonical_url !='') echo ' <link rel="canonical" href="'.$canonical_url.'" />'. "\n"; Obviously similar changes will need to be done for any special pages you may have using parameters. Since i do not know if Jack_mcs has another version in the work I prefer to post this add-on here for the time being, for open discussion.
  9. Tried this. Add missing pages was still not doing anything with no files in the root. I then added product_info.php then account.php and got a similar error: Fatal error: Maximum execution time of 10 seconds exceeded in /home/www/25cfe5b63d9a42bb468f3a2c805e00f0/web/demoshop/admin/header_tags_seo.php on line 274 :(
  10. Hello, I have now added your contribution to a couple of shops and I am hitting a recurring problem in the administration side. Basically, when choosing the Add New Page functionality, nothing happens. Also if I then try to choose Select a File again in the drop down, I get the following error: Fatal error: Maximum execution time of 10 seconds exceeded in /home/www/25cfe5b63d9a42bb468f3a2c805e00f0/web/development/w3c/admin/header_tags_seo.php on line 276 I have tried this on 3 different servers, each with their own settings but always get the problem. A friend of mine also get this problem on is local server (it was him who pointed me out the issue to start with). Any ideas?
  11. The onChange "bug " is a well known problem between browsers. The official workaround is to use onpropertychange which is cross browsers compatible.
  12. Good idea lildog. I am actually putting the link into the notes area at the moment ;)
  13. lildog ..this is what I did : No rush for the other fix, its only cosmetic after all
  14. Ah well, and since I was into it, I fixed the display in the admin so it is compatible with Ms2 rc1. With the original from the last version, clikcing on a row would not move the focus to it. so look for the lines if ($HTTP_GET_VARS['search'] == '') { if ( (is_object($sInfo)) && ($admin_quer['contr_id'] == $sInfo->contr_id)) { ..... and replace with if ($HTTP_GET_VARS['search'] == '') { if ( (is_object($sInfo)) && ($admin_quer['contr_id'] == $sInfo->contr_id)) { echo ' <tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_CONTRIB_TRACKER, 'sID=' . $HTTP_GET_VARS['sID'] . '&action=edit') . '\'">' . "\n"; } else { echo ' <tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_CONTRIB_TRACKER, 'sID=' . $admin_quer['contr_id']) . '\'">' . "\n"; } } else { $searchresult_query_query_raw = "select contr_id from " . TABLE_CONTRIB_TRACKER . " order by " . $order_it_by . " "; $searchresult_query_query = tep_db_query($searchresult_query_query_raw); $searchresult_page= round($searchresult_query_query_numrows / MAX_DISPLAY_SEARCH_RESULTS)-1; // INSERT CONTRIB NAMES INTO PAGE if ( (is_object($sInfo)) && ($admin_quer['contr_id'] == $sInfo->contr_id)) { echo ' <tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_CONTRIB_TRACKER, 'sID=' . $HTTP_GET_VARS['sID'] . '&action=edit') . '\'">' . "\n"; } else { echo ' <tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_CONTRIB_TRACKER, 'sID=' . $admin_quer['contr_id']) . '\'">' . "\n"; } You will also need to edit your admin/includes/stylesheet.css .dataTableRowOver { background-color: #FFFFFF; cursor: pointer; cursor: auto; } to .dataTableRowOver { background-color: #FFFFFF; cursor: pointer; cursor: hand; }
  15. Ok, looked more into it and sorted the problem. I noticed that you already implemented the curl method :) I just had the FS_CATALOG problem already talked about in this thread. Another thing though, the version of the contrib tracker is set to 1.4 on install...
  16. Hello Alex, Well i got to say..great coding and easy to use contribution. Simply add to request my API certificate from my old sandboy accoubnt and it worked like a charm. I do however have a couple of comments/requests. I so far used the original PayPal IPN mod with the flow we all know and a specific checkout_success page. This used to be a pain and not compatible with some other mods, but welll, to worked and customer payed :) However, one bit of functionality also came with the original contribution, which I think is required on the express checkout one: The notification was also storing the paypal fee on the database! A quiet neat layout box with the paypal logo would also show on the order (if paid by paypal), and this was containing the gross paid , fee, status and also a link to more details. Would it be easy to include this features? Knowing the paypal fee is of great importance when doing the monthly account. Are you planning on doing this? And if not, could you provide me with pointer as to where to look to make this changes? I will also look into making this compatible with the GV mod (I think u already work on this), and the PWA mod .. .should be fun :) Thanks
  17. Thanks for the reply, but it was not that. I checked the feed at the time and it was working ok. I definitly get the error in the fopen and I think its because allow_url_fopen is turned off on my server. I will look into it tomorrow to use curl to read the feed when a url is passed to the parse function
  18. Hello all, Great job on the latest versions of this great contrib. Installation is very easy, configuration takes a while but this is not up to you :) Just wanted to point out a couple of changes I had to made in order to make it pass the w3c html validation: Here are the 2 changes I had to do: In includes/header_tags.php replace the whole echo meta tags at the end of the file with this (remove / closing slash on meta tags and changed order) echo ' <meta name="Description" content="' . $header_tags_array['desc'] . '" >' . "\n"; echo ' <meta name="Keywords" content="' . $header_tags_array['keywords'] . '" >' . "\n"; if ($defaultTags['meta_google']) echo ' <meta name="googlebot" content="all">' . "\n"; if ($defaultTags['meta_language']) echo ' <meta http-equiv="Content-Language" content="en-US">'."\n"; if ($defaultTags['meta_noodp']) echo ' <meta name="robots" content="noodp">' . "\n"; if ($defaultTags['meta_noydir']) echo ' <meta name="slurp" content="noydir">' . "\n"; if ($defaultTags['meta_revisit']) echo ' <meta name="revisit-after" content="1 days">' . "\n"; if ($defaultTags['meta_robots']) echo ' <meta name="robots" content="index, follow">' . "\n"; if ($defaultTags['meta_unspam']) echo ' <meta name="no-email-collection" value="' . HTTP_SERVER . '">' . "\n"; if ($defaultTags['meta_replyto']) echo ' <meta name="Reply-to" content="' . STORE_OWNER_EMAIL_ADDRESS . '">' . "\n"; echo ' <meta http-equiv="Content-Type" content="text/html; charset=' . CHARSET . '" >'."\n"; echo ' <title>' . $header_tags_array['title'] . '</title>' . "\n"; echo '<!-- EOF: Header Tags SEO Generated Meta Tags -->' . "\n"; Replace includes/modules/header_tags_social_bookmarks.php with the following (replace all & to &) <?php $NAME = htmlspecialchars($product_info['products_name'], ENT_QUOTES); $TITLE = urlencode($product_info['products_name']); $URL = urlencode("http://" . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]); ?> <tr> <td align="right"><table border="0" width="20%"> <tr> <td><a rel="nofollow" target="_blank" href="http://del.icio.us/post?url=<?php echo $URL . '&title=' . $TITLE; ?>"> <img src="images/socialbookmark/delicious.png" alt="<?php echo 'Add' . $NAME . ' to del.icio'; ?> " title="<?php echo 'Add' . $NAME. ' to del.icio'; ?> " border="0"></a></td> <td><a rel="nofollow" target="_blank" href="http://digg.com/submit?phase=2&url=<?php echo $URL . '&title=' . $TITLE; ?>"> <img src="images/socialbookmark/digg.png" alt="<?php echo 'Add' . $NAME . ' to Digg'; ?> " title="<?php echo 'Add' . $NAME . ' to Digg'; ?> " border="0"></a></td> <td><a rel="nofollow" target="_blank" href="http://technorati.com/cosmos/search.html?url=<?php echo $URL . '&title=' . $TITLE; ?>"> <img src="images/socialbookmark/technorati.png" alt="<?php echo 'Add' . $NAME . ' to Technorati'; ?> " title="<?php echo 'Add' . $NAME . ' to Technorati'; ?> " border="0"></a></td> <td><a rel="nofollow" target="_blank" href="http://furl.net/storeIt.jsp?t=<?php echo $URL . '&title=' . $TITLE; ?>"> <img src="images/socialbookmark/furl.gif" alt="<?php echo 'Add' . $NAME . ' to Furl'; ?> " title="<?php echo 'Add' . $NAME . ' to Furl'; ?> " border="0"></a></td> <td><a rel="nofollow" target="_blank" href="http://reddit.com/submit?url=<?php echo $URL . '&title=' . $TITLE; ?>"> <img src="images/socialbookmark/reddit.gif" alt="<?php echo 'Add' . $NAME . ' to Reddit'; ?> " title="<?php echo 'Add' . $NAME . ' to Reddit'; ?> " border="0"></a></td> <td><a rel="nofollow" target="_blank" href="http://ekstreme.com/socializer/?url=<?php echo $URL . '&title=' . $TITLE; ?>"> <img src="images/socialbookmark/Socializer16.png" alt="<?php echo 'Add' . $NAME . ' to Reddit'; ?> " title="<?php echo 'Add' . $NAME . ' to Reddit'; ?> " border="0"></a></td> </tr> </table></td> </tr> Thats it!
  19. Just installed the version1.6.6b of thos contribution, followed all the steps carefully and double checked and it doesnt work I just keep getting this error: could not open XML input both on the catalog and admin side when I run contrib_tracker.php The problem seems to happen at this stage : if (!($fp = @fopen($this->FileName, "r"))) { $theerror=sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($this->xml_parser)), xml_get_current_line_number($this->xml_parser)); tep_mail(STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS, 'Contribution Tracker Error', 'Contribution Tracker could not open XML input. ', STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS); die("could not open XML input!!"); } probably because the fopen fails to open the URL http://feedproxy.feedburner.com/osCommerce_Contributions since there is no cache existing yet Any ideas ?
  20. Or we could simply like in many other contribution, keep a Add-On folder within the same contribution. Those changes usually, once teste fully, do not impact on the core functionality of a contribution since they use some of its funtions without modifying them. I think this would help keep things cleaner on the contributions side. I am really not a big fan of making forks of forks of forks. CCGV (trad) should even have been entered as CCVG V xxx explaining this was the new full package, since after all the only difference there is between this contribution and the other one is that it is a snapshot of the code at one "working" moment, cleaned up from all of the mess sometime added later. Personnaly I dont even use CCGV (trad), but the original version, cleaned up, and the code and bugs are very similar, since its the same contribution after all :) This is also the reason why I think that Vger is overeacting about it all, since after all she is not the one who coded this contribution in the first place, isnt she ?
  21. Hmm problem is that even if you run things by her, if she thinks that the feature or fix does not affect her directly or that she doesnt like it, she plainly refuse to add it to the code. I have got nothing with her wanting to keep it clean and avoid too many branches, but when clean fix or plugins are sent to her and you do not get any kind of feedback months after other than "it doesnt look important to me so I will look at it when i have a chance (like ...never)" it is a bit frustrating dont you think. A request was made to associate couponm with free gifts ... I actually did this on my shop so sent her the code to integrate..to no avail. There is a difference between keeping things in line and being despotic. Read a few message in this thread (if they still exists), a good example is the bug where customer cannot choose to change their mind and not use a coupon after they have decided to do so (http://www.oscommerce.com/forums/index.php?act=findpost&hl=&pid=916194). Vger decided this was not a bug..and that was it.. So yes, she done a great work cleaning it, but her beahviour thereafter ws well out of line if you want my opinion.
  22. A quick bug Fix which I do not have time to package. With each product link, the oscId was added to the RSS feed..not very safe nor pretty: To fix this change: with
  23. Hello, Thanks for the good job you are doing on this contribution. However I was wondering why in the last version you change the edit_orders.php script to use tep_db_prepare_input function instead of tep_db_input ? Using the tep_db_prepare_input means that fiels which include quotes fail to be inserted in the database (this happened to me when I tried to edit an order to change its payment method value).
  24. laur0406, unfortunately I do not have the problem on my installation. So I guess this is somenting specific to your setup. check the installation again and maybe other javascript you may have on the same page. I can add prefix and prices without any problems
×
×
  • Create New...