Page 83 of 163 FirstFirst ... 3373818283848593133 ... LastLast
Results 821 to 830 of 1622
  1. #821
    Join Date
    Feb 2012
    Location
    mostly harmless
    Posts
    1,809
    Plugin Contributions
    8

    Default Re: Ultimate SEO 2.215+

    Quote Originally Posted by coucho View Post
    ... My initial install (year ago) is working fine. Are there any real world advantages to upgrading and possibly breaking the site. ...
    I would not recommend upgrading if there was no real world advantages. There are some important notes in the 2.215 release announcement. The short answer to "Why upgrade?" is: bugfixes, enhancements, wider compatibility, and performance improvements.

    The long answer to "Why upgrade?" is download a copy and read the included documentation. The Beta Team and I spent a long time creating and refining new documentation for this release (complete with more friendly instructions, compiled lists of workarounds, a changelog, and the use of images and color). So please do download a copy and take a few moments to enjoy the vast improvements (if I do say so myself)!

    As with any other changes made to a live website: mistakes, other modifications present, and server configurations can potentially complicate the process of upgrading or making changes.¹ As previously noted, before upgrading make sure you do not have an ancient version of this module installed.²


    NOTE 1: One should always keep up to date backups (especially before and after installation / changes) and test all changes in a "staging" (test, development, temporary, etc) copy of your live website. Regular backups so will help avoid extended downtime if something goes wrong. And when the changes are being made on a "copy" of the live website (not the live website itself), if anything goes wrong it does not impact the live website. This gives one time to "test" first and address any issues which occur (as well as take very good notes as to why and what needs to be done when later applying the changes to the live website).

    NOTE 2: One can check what version is currently installed by going to the configuration menu for this plugin in the Zen Cart administrative interface. If the version is not listed, the installed version is ancient (3+ years old) and I would recommend first uninstalling whatever version is installed (files, file changes, and database entries) before installing the latest version. This will help avoid potential complications.
    The glass is not half full. The glass is not half empty. The glass is simply too big!
    Where are the Zen Cart Debug Logs? Where are the HTTP 500 / Server Error Logs?
    Zen Cart related projects maintained by lhûngîl : Plugin / Module Tracker

  2. #822
    Join Date
    Jan 2008
    Location
    Memphis, USA
    Posts
    299
    Plugin Contributions
    0

    Default Re: Ultimate SEO 2.215+

    Quote Originally Posted by lhungil View Post
    I would not recommend upgrading if there was no real world advantages. There are some important notes in the 2.215 release announcement. The short answer to "Why upgrade?" is: bugfixes, enhancements, wider compatibility, and performance improvements.

    The long answer to "Why upgrade?" is download a copy and read the included documentation. The Beta Team and I spent a long time creating and refining new documentation for this release (complete with more friendly instructions, compiled lists of workarounds, a changelog, and the use of images and color). So please do download a copy and take a few moments to enjoy the vast improvements (if I do say so myself)!

    As with any other changes made to a live website: mistakes, other modifications present, and server configurations can potentially complicate the process of upgrading or making changes.¹ As previously noted, before upgrading make sure you do not have an ancient version of this module installed.²


    NOTE 1: One should always keep up to date backups (especially before and after installation / changes) and test all changes in a "staging" (test, development, temporary, etc) copy of your live website. Regular backups so will help avoid extended downtime if something goes wrong. And when the changes are being made on a "copy" of the live website (not the live website itself), if anything goes wrong it does not impact the live website. This gives one time to "test" first and address any issues which occur (as well as take very good notes as to why and what needs to be done when later applying the changes to the live website).

    NOTE 2: One can check what version is currently installed by going to the configuration menu for this plugin in the Zen Cart administrative interface. If the version is not listed, the installed version is ancient (3+ years old) and I would recommend first uninstalling whatever version is installed (files, file changes, and database entries) before installing the latest version. This will help avoid potential complications.
    Thanks for the information.

  3. #823
    Join Date
    Oct 2011
    Posts
    168
    Plugin Contributions
    0

    Default Re: Ultimate SEO 2.215+

    Hi lhungil

    I have a problem to use the EasyPopulate 4.0 after install ultimate_urls-215 at admin-end. When I export the "Complete Products" file, I got an error as "Call to undefined function zen_get_info_page() in ...\includes\classes\usu.php on line 324". There are no issues when other files were exported. When the "Complete Products" file was exported, the product urls from products_description table would be fetched. This is may the point. Could you help to find the problem?

    Zne-Cart: v1.5.4
    EasyPopulate: v4.0.28

  4. #824
    Join Date
    Feb 2012
    Location
    mostly harmless
    Posts
    1,809
    Plugin Contributions
    8

    Default Ultimate URLs 2.215 Bug

    Confirmed Bug in Ultimate URLs 2.215 (Ticket #28)
    Thank You su35 for reporting!

    Symptoms
    When a URL is generated from the Zen Cart administrative interface the following error is encountered: "Call to undefined function zen_get_info_page()".

    How to Fix
    Edit "/admin/includes/functions/extra_functions/usu.php". Add the following at the very end of the file:

    Code:
    
    // This function is available for use on the catalog side of Zen Cart and
    // needed on the admin side for Ultimate URLs to lookup the product_info page.
    if(!function_exists('zen_get_info_page')) {
    	function zen_get_info_page($zf_product_id) {
    		global $db;
    		$sql = "select products_type from " . TABLE_PRODUCTS . " where products_id = '" . (int)$zf_product_id . "'";
    		$zp_type = $db->Execute($sql);
    		if ($zp_type->RecordCount() == 0) {
    			return 'product_info';
    		}
    		else {
    			$zp_product_type = $zp_type->fields['products_type'];
    			$sql = "select type_handler from " . TABLE_PRODUCT_TYPES . " where type_id = '" . (int)$zp_product_type . "'";
    			$zp_handler = $db->Execute($sql);
    			return $zp_handler->fields['type_handler'] . '_info';
    		}
    	}
    }
    The glass is not half full. The glass is not half empty. The glass is simply too big!
    Where are the Zen Cart Debug Logs? Where are the HTTP 500 / Server Error Logs?
    Zen Cart related projects maintained by lhûngîl : Plugin / Module Tracker

  5. #825
    Join Date
    Oct 2011
    Posts
    168
    Plugin Contributions
    0

    Default Re: Ultimate URLs 2.215 Bug

    Hi lhungil

    It work now, thanks

  6. #826
    Join Date
    Jan 2007
    Location
    Los Angeles, California, United States
    Posts
    10,023
    Plugin Contributions
    32

    Default Re: Ultimate URLs 2.215 Bug

    Client wants to make a bunch of changes to products and categories.. He needs to delete a BUNCH of his products, move others to new categories, and many more moves to move linked products from one category to another. I want to mitigate any issues before he does this work..

    I could create a bunch of 301 redirects in his .htaccess file, but I'd rather dynamically redirect visitors who hit one of these old product links to a category link instead.. Did some digging and found this post: http://www.zen-cart.com/showthread.p...577#post859577 and then an article based on that post here: http://pro-webs.net/blog/2010/03/21/...tock-products/.

    In particular the section below is what I am thinking about implementing. It is the last paragraph that is relevant to this module that I am questioning. I've not applied this code yet. I wanted to first do a temperature check to make sure that the situation suggested in the highlighted paragraph does not in fact apply to this module.. As the article was written in 2010, I wanted to find out if the many changes made to this module make that highlighted section a non issue..

    In the forum thread we noted earlier, Zenner 7thVeil suggested using a php redirect to move these pages to the category page for their original location. This is an excellent technique for a dynamic solution. The code change supplied by 7thVeil, was very smart, but incomplete as it was returning a 302 in the header. We definitely do not want to return a 302, as this is a temporary redirect, but a permanent headache for your SEO campaign.

    So I tweaked his alteration for the following which will send disabled and deleted products to their category page with a permanent 301 redirect. If no category exists they are sent to the product not found page.
    In /includes/modules/pages/product_info/main_template_vars.php around line 31 find:

    Code:
    if ( $res->fields['total'] < 1 ) {
    Just below this you will see

    Code:
    $tpl_page_body = '/tpl_product_info_noproduct.php';
    Replace this line with


    Code:
    $requeststring = (isset($_GET['cPath']))?'&cPath='. (int)$_GET['cPath']:'';         header( "HTTP/1.1 301 Moved Permanently" );         header('location:index.php?main_page=index'.$requeststring);
    Remember this is really a very dynamic solution and you are giving up the ultimate control over where this product page url should be sent. There is also the possibility, if you are using a SEO rewrite module, that this tweak will result in a double redirect. This is not a good situation, so if you apply this and the header for the pages is sending a double redirect, or worse, a loop... then this solution is not for you.
    My Site - Zen Cart & WordPress integration specialist
    I don't answer support questions via PM. Post add-on support questions in the support thread. The question & the answer will benefit others with similar issues.

  7. #827
    Join Date
    Feb 2012
    Location
    mostly harmless
    Posts
    1,809
    Plugin Contributions
    8

    Default Re: Ultimate URLs 2.215 Bug

    Quote Originally Posted by DivaVocals View Post
    Client wants to ... move ... (products) to new categories ... and ... move linked products from one category to another. ...
    When categories or products are moved around (or linked), no need to do anything special. When done, just reset the URL cache (if enabled) to see the changes immediately. As long as the product ID and Category ID are not changed, both the old and new locations will be handled automatically without any issues. Additionally, the generated canonical will contain the new URL (unless your theme disables the canonical link handling built into Zen Cart). One can also enable automatic redirects to force a 301 redirect to the new URL (if desired).


    Quote Originally Posted by DivaVocals View Post
    Client ... needs to delete a BUNCH of his products ... I'd ... (like to) dynamically redirect visitors who hit one of these old product links to a category link instead...
    Let me first put on my "SEO Hat" and place it on my head.
    From an SEO perspective, I would strongly recommend against this approach. Redirecting multiple different pages with different content to a single page (also with different content compared to the original pages) can result in a mess (or even a nightmare). Sends chills up and down my spine when I hear thoughts along these lines... But carry on if this is NOT what you are talking about...


    Now let me take of the "SEO Hat" and instead put on my "Customer Hat".
    Let's say six moths ago I ordered a "green widget". I was very happy with the "green widget" and now want to order another matching widget (or share a link to the product I bought with a friend). So I go back to the store, sign into my account, and pull up my order history. My expectation is I will be able to view my past order and click on a link to the "green widget" previously ordered.

    If the product has been deleted from the store... This link (if enabled) brings me to a 404... Or worse, it brings me to the home page of the store (or some other page such as a category)... And in the second case, now I am confused (because I clicked on a link for a "green widget" and was brought somewhere else). Either way I no longer have a way to quickly (and easily) review the product details or specifications for the "green widget" I previously purchased... So now even if I find a new version of a product (or a similiar product) at the store, I do not have the information about the "green widget" I purchased to look at and compare against... Not the best experience...

    Now if the product is still present in the store... The link does bring me to the old products page. And ideally, the store owner has made some minor edits to the product. For example: setting the product so it cannot be added to the shopping cart, added big bold obvious text letting me know the product is no longer available, added a link to the replacement (or comparable product), etc. Not only can I still review the information and details regarding my previously purchased "green widget"... But I also know the product is no longer available (and have a link to view or purchase a comparable / replacement product matching my "green widget"). For me this would be a good customer experience.


    Now let me take of the "Customer Hat" and instead put on my "Consultant Hat".
    The above code to dynamically redirect deleted product pages to their category is flawed. It will affect all "product pages" where a product_id is not present in the database including pages for products which never existed (and should generate a 404). There is no guarantee $_GET['cPath'] will be present (this is true even with stock Zen Cart URLs), so in some cases it will redirect to the store root instead of the expected parent category. The code fails to call zen_href_link (failing to call this may in some cases cause the customer session to be lost). The code directly access $_GET (I would avoid this), the variable $cPath will already be populated by Zen Cart and contain the correct cPath (or '' if not present).

    So additional logic will be needed with the above code changes if one wants to selectively redirect certain products (or only in certain cases)... Kinda defeating the purpose of modifying the PHP code in the first place... And of course once additional PHP code is added (or existing files edited), added complexity is in play... The possibility (and risk) of multiple chained redirects increases... Troubleshooting "redirect" issues (if they occur) becomes more time consuming... Upgrading Zen Cart becomes slightly more time consuming...

    I'd personally avoid using such redirects in the first place... But if the client is adamant about deleting products and using redirects... Make sure to update the code previously presented. At the minimum use zen_href_link() and $cPath... Ideally some additional logic could be added to call the home page (no "&cPath=" when no cPath is available). Time permitting, some code could also be added to make sure the redirect only occurs on a "deleted" product (not on product IDs which do not yet exist / have not yet been used).


    NOTE 1: Disabling / deleting a category is a whole different beast. In most cases, I would avoid the need and simply change the content... But sometimes one may desire to make such a change (especially if inheriting a site with overly nested categories)... I'd think about a 301 redirect (using mod_rewrite) if there is another category with very similiar content... Otherwise I'd let the 404 page handle the situation...

    NOTE 2: Not really on topic, but something I should probably mention... I'd recommend (with or without redirects) one create / supply a good 404 page for customers. Ideally a good 404 page has: easy to use navigation, a search box, content customized to the broken URL (pre-populated search results, a link to the containing category when known, etc), and possibly some form of humor.

    NOTE 3: Remember SEO and Best Practices tend to change over time. Any advice or opinions on this (or any site) should always be taken with a grain of salt. Make sure you do your research (including A/B testing) to determine the most beneficial course of action for your specific store. And always keep a backup handy!

    NOTE 4: The highlighted portion only applies to Ultimate URLs when "automatic redirects" are enabled and the 3rd party code does not call zen_href_link(). This will not apply if the 3rd party code is updated to correctly utilize zen_href_link().
    Last edited by lhungil; 16 Mar 2015 at 04:28 AM.
    The glass is not half full. The glass is not half empty. The glass is simply too big!
    Where are the Zen Cart Debug Logs? Where are the HTTP 500 / Server Error Logs?
    Zen Cart related projects maintained by lhûngîl : Plugin / Module Tracker

  8. #828
    Join Date
    Jan 2007
    Location
    Los Angeles, California, United States
    Posts
    10,023
    Plugin Contributions
    32

    Default Re: Ultimate URLs 2.215 Bug

    Quote Originally Posted by lhungil View Post
    When categories or products are moved around (or linked), no need to do anything special. When done, just reset the URL cache (if enabled) to see the changes immediately. As long as the product ID and Category ID are not changed, both the old and new locations will be handled automatically without any issues. Additionally, the generated canonical will contain the new URL (unless your theme disables the canonical link handling built into Zen Cart). One can also enable automatic redirects to force a 301 redirect to the new URL (if desired).



    Let me first put on my "SEO Hat" and place it on my head.
    From an SEO perspective, I would strongly recommend against this approach. Redirecting multiple different pages with different content to a single page (also with different content compared to the original pages) can result in a mess (or even a nightmare). Sends chills up and down my spine when I hear thoughts along these lines... But carry on if this is NOT what you are talking about...


    Now let me take of the "SEO Hat" and instead put on my "Customer Hat".
    Let's say six moths ago I ordered a "green widget". I was very happy with the "green widget" and now want to order another matching widget (or share a link to the product I bought with a friend). So I go back to the store, sign into my account, and pull up my order history. My expectation is I will be able to view my past order and click on a link to the "green widget" previously ordered.

    If the product has been deleted from the store... This link (if enabled) brings me to a 404... Or worse, it brings me to the home page of the store (or some other page such as a category)... And in the second case, now I am confused (because I clicked on a link for a "green widget" and was brought somewhere else). Either way I no longer have a way to quickly (and easily) review the product details or specifications for the "green widget" I previously purchased... So now even if I find a new version of a product (or a similiar product) at the store, I do not have the information about the "green widget" I purchased to look at and compare against... Not the best experience...

    Now if the product is still present in the store... The link does bring me to the old products page. And ideally, the store owner has made some minor edits to the product. For example: setting the product so it cannot be added to the shopping cart, added big bold obvious text letting me know the product is no longer available, added a link to the replacement (or comparable product), etc. Not only can I still review the information and details regarding my previously purchased "green widget"... But I also know the product is no longer available (and have a link to view or purchase a comparable / replacement product matching my "green widget"). For me this would be a good customer experience.


    Now let me take of the "Customer Hat" and instead put on my "Consultant Hat".
    The above code to dynamically redirect deleted product pages to their category is flawed. It will affect all "product pages" where a product_id is not present in the database including pages for products which never existed (and should generate a 404). There is no guarantee $_GET['cPath'] will be present (this is true even with stock Zen Cart URLs), so in some cases it will redirect to the store root instead of the expected parent category. The code fails to call zen_href_link (failing to call this may in some cases cause the customer session to be lost). The code directly access $_GET (I would avoid this), the variable $cPath will already be populated by Zen Cart and contain the correct cPath (or '' if not present).

    So additional logic will be needed with the above code changes if one wants to selectively redirect certain products (or only in certain cases)... Kinda defeating the purpose of modifying the PHP code in the first place... And of course once additional PHP code is added (or existing files edited), added complexity is in play... The possibility (and risk) of multiple chained redirects increases... Troubleshooting "redirect" issues (if they occur) becomes more time consuming... Upgrading Zen Cart becomes slightly more time consuming...

    I'd personally avoid using such redirects in the first place... But if the client is adamant about deleting products and using redirects... Make sure to update the code previously presented. At the minimum use zen_href_link() and $cPath... Ideally some additional logic could be added to call the home page (no "&cPath=" when no cPath is available). Time permitting, some code could also be added to make sure the redirect only occurs on a "deleted" product (not on product IDs which do not yet exist / have not yet been used).


    NOTE 1: Disabling / deleting a category is a whole different beast. In most cases, I would avoid the need and simply change the content... But sometimes one may desire to make such a change (especially if inheriting a site with overly nested categories)... I'd think about a 301 redirect (using mod_rewrite) if there is another category with very similiar content... Otherwise I'd let the 404 page handle the situation...

    NOTE 2: Not really on topic, but something I should probably mention... I'd recommend (with or without redirects) one create / supply a good 404 page for customers. Ideally a good 404 page has: easy to use navigation, a search box, content customized to the broken URL (pre-populated search results, a link to the containing category when known, etc), and possibly some form of humor.

    NOTE 3: Remember SEO and Best Practices tend to change over time. Any advice or opinions on this (or any site) should always be taken with a grain of salt. Make sure you do your research (including A/B testing) to determine the most beneficial course of action for your specific store. And always keep a backup handy!

    NOTE 4: The highlighted portion only applies to Ultimate URLs when "automatic redirects" are enabled and the 3rd party code does not call zen_href_link(). This will not apply if the 3rd party code is updated to correctly utilize zen_href_link().
    Right.. Except the client is pretty adamant about wanting to remove these products from the store.. He DOES NOT want customers to view any discontinued or otherwise unavailable product, and I simply want to contain the damage by making sure that they are re-directed to a place of our choosing and NOT sent to a 404 page (and for this site a category page will indeed work).. and yes I've explained the reasons not to do this to him. He is WELL aware of the risks, and he still wants to proceed.. I will figure something out.. Thanks for the response..

    Re: Note 2.. Out-the-box, the Zen Cart 404 page has a site map and not much else.. Not doubting that it shouldn't be what you state, but it's not even close to this today, and probably over the heads of most (including myself) to customize to that level..
    Last edited by DivaVocals; 16 Mar 2015 at 06:48 AM.
    My Site - Zen Cart & WordPress integration specialist
    I don't answer support questions via PM. Post add-on support questions in the support thread. The question & the answer will benefit others with similar issues.

  9. #829
    Join Date
    Mar 2013
    Location
    Pembroke Pines, Florida, United States
    Posts
    4
    Plugin Contributions
    0

    Default Re: Ultimate URLs 2.215 Bug

    Seems that I am having a re direct problem I dont know but everytime I click on a product it just goes back to the main page and not the product page after installing the URL mod.

    http://staging.tricountyhobbies.com

  10. #830
    Join Date
    Feb 2012
    Location
    mostly harmless
    Posts
    1,809
    Plugin Contributions
    8

    Default Re: Ultimate URLs 2.215 Bug

    Quote Originally Posted by Sean Kersten View Post
    Seems that I am having a re direct problem I dont know but everytime I click on a product it just goes back to the main page and not the product page after installing the URL mod.

    http://staging.tricountyhobbies.com
    When I attempt to access your development site I am seeing the standard Zen Cart "setup" prompts. Not sure if changes have been made since your initial post, but I would guess some have. Based upon the information presented a number of potential issues / conflicts caused by the server configuration exist:

    • Multiple directories are set to not allow write access (including the cache, logs, and backup folders).
    • There is an extra "/" in the path presented by $_SERVER["SCRIPT_FILENAME"]. This can cause potentially cause some issues with parsing of path information.
    • The webserver is running nginx (without support for .htaccess files).


    As you are running under nginx, you will need to convert the .htaccess files into native nginx configuration instructions. Once you have converted (and verified the nginx instructions), they will need to be added to the nginx configuration (not just the .htaccess file from Ultimate URLs - but also the ones from Zen Cart). The same step is needed for those running under IIS (without support for .htaccess files). Alternately you could just install Apache instead of nginx (Zen Cart works best under an AMP stack). Apache supports .htaccess files natively.

    Next I would tackle the path issue. This could affect far more than just Ultimate URLs. I would guess there is an errant "/" in the php-fpm configuration for nginx. If you switched to Apache, just check to make sure the paths output by phpinfo are correct (and do not include extraneous slashes).

    Afterwards (just to make life easier), I would create a user specifically for accessing the server document root (via FTP, SMB, and for the php-fpm pool). This way only that user will have access to the files (and can be given full control). Alternately you could run PHP under php-cgi and suPHP (doing something similiar). This will result in a setup similiar to how most shared hosting providers will be configured.

    I've found spending the extra time to create such a setup can save ALOT of time during the course of development and reduce potential issues when deploying to a production webserver. The goal is always to match the final environment as closely as possible
    The glass is not half full. The glass is not half empty. The glass is simply too big!
    Where are the Zen Cart Debug Logs? Where are the HTTP 500 / Server Error Logs?
    Zen Cart related projects maintained by lhûngîl : Plugin / Module Tracker

 

 

Similar Threads

  1. Ultimate Fade-In Slidehow Support thread
    By outeredge2 in forum All Other Contributions/Addons
    Replies: 158
    Last Post: 4 Feb 2017, 03:10 AM
  2. Ultimate Cross Sell [Support Thread]
    By ultimate_zc in forum All Other Contributions/Addons
    Replies: 239
    Last Post: 17 May 2015, 03:25 AM
  3. Ultimate Content Glider [Support Thread]
    By ultimate_zc in forum All Other Contributions/Addons
    Replies: 11
    Last Post: 4 Sep 2012, 05:16 AM
  4. Re: Simple SEO URL [support thread]
    By creamcrackers in forum General Questions
    Replies: 2
    Last Post: 16 Aug 2009, 03:02 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
disjunctive-egg
Zen-Cart, Internet Selling Services, Klamath Falls, OR