Support » Plugin: eShop » your shopping cart is empty

  • Resolved JReders


    i have a problem with your plugin aver my website
    1. i tried to deactivate all my plugins :

    [ Moderator Note: Please post code or markup snippets between backticks or use the code button. ]

    Akismet 2.5.7
    All In One SEO Pack 2.0
    Better WP Security 3.4.10
    Broken Link Checker 1.7.1
    Digg Digg 5.3.4
    Easy FancyBox
    eShop for WordPress 6.3.10
    Facebook AWD All in One 1.6
    FD Feedburner Plugin 1.46
    GD Star Rating 1.9.22
    Google XML Sitemaps 3.2.9
    P3 (Plugin Performance Profiler) 1.4.1
    Regenerate Thumbnails 2.2.4
    Social Metrics 2.1
    upPrev 3.3.15
    WP Super Cache 1.3.2
    Yet Another Related Posts Plugin 4.0.6

    2. tried it over Twenty Twelve theme.
    3. contact my host to set up session_save… told me all was ok, and I’m using php 5.3.
    here is the [session] part of my php.ini

    ; Handler used to store/retrieve data.
    session.save_handler = files
    ; Argument passed to save_handler.  In the case of files, this is the path
    ; where data files are stored. Note: Windows users have to change this
    ; variable in order to use PHP's session functions.
    ; The path can be defined as:
    ;     session.save_path = "N;/path"
    ; where N is an integer.  Instead of storing all the session files in
    ; /path, what this will do is use subdirectories N-levels deep, and
    ; store the session data in those directories.  This is useful if you
    ; or your OS have problems with lots of files in one directory, and is
    ; a more efficient layout for servers that handle lots of sessions.
    ; NOTE 1: PHP will not create this directory structure automatically.
    ;         You can use the script in the ext/session dir for that purpose.
    ; NOTE 2: See the section on garbage collection below if you choose to
    ;         use subdirectories for session storage
    ; The file storage module creates files using mode 600 by default.
    ; You can change that by using
    ;     session.save_path = "N;MODE;/path"
    ; where MODE is the octal representation of the mode. Note that this
    ; does not overwrite the process's umask.
    session.save_path = "/var/php_sessions"
    ; Whether to use cookies.
    session.use_cookies = 1
    ;session.cookie_secure =
    ; This option forces PHP to fetch and use a cookie for storing and maintaining
    ; the session id. We encourage this operation as it's very helpful in combating
    ; session hijacking when not specifying and managing your own session id. It is
    ; not the end all be all of session hijacking defense, but it's a good start.
    session.use_only_cookies = 1
    ; Name of the session (used as cookie name).
    ; Initialize session on request startup.
    session.auto_start = 0
    ; Lifetime in seconds of cookie or, if 0, until browser is restarted.
    session.cookie_lifetime = 0
    ; The path for which the cookie is valid.
    session.cookie_path = /
    ; The domain for which the cookie is valid.
    session.cookie_domain =
    ; Whether or not to add the httpOnly flag to the cookie, which makes it inaccessible to browser scripting languages such as JavaScript.
    session.cookie_httponly =
    ; Handler used to serialize data.  php is the standard serializer of PHP.
    session.serialize_handler = php
    ; Defines the probability that the 'garbage collection' process is started
    ; on every session initialization. The probability is calculated by using
    ; gc_probability/gc_divisor. Where session.gc_probability is the numerator
    ; and gc_divisor is the denominator in the equation. Setting this value to 1
    ; when the session.gc_divisor value is 100 will give you approximately a 1% chance
    ; the gc will run on any give request.
    ; Default Value: 1
    ; Development Value: 1
    ; Production Value: 1
    session.gc_probability = 1
    ; Defines the probability that the 'garbage collection' process is started on every
    ; session initialization. The probability is calculated by using the following equation:
    ; gc_probability/gc_divisor. Where session.gc_probability is the numerator and
    ; session.gc_divisor is the denominator in the equation. Setting this value to 1
    ; when the session.gc_divisor value is 100 will give you approximately a 1% chance
    ; the gc will run on any give request. Increasing this value to 1000 will give you
    ; a 0.1% chance the gc will run on any give request. For high volume production servers,
    ; this is a more efficient approach.
    ; Default Value: 100
    ; Development Value: 1000
    ; Production Value: 1000
    session.gc_divisor = 1000
    ; After this number of seconds, stored data will be seen as 'garbage' and
    ; cleaned up by the garbage collection process.
    session.gc_maxlifetime = 1440
    ; NOTE: If you are using the subdirectory option for storing session files
    ;       (see session.save_path above), then garbage collection does *not*
    ;       happen automatically.  You will need to do your own garbage
    ;       collection through a shell script, cron entry, or some other method.
    ;       For example, the following script would is the equivalent of
    ;       setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes):
    ;          find /path/to/sessions -cmin +24 | xargs rm
    ; PHP 4.2 and less have an undocumented feature/bug that allows you to
    ; to initialize a session variable in the global scope, even when register_globals
    ; is disabled.  PHP 4.3 and later will warn you, if this feature is used.
    ; You can disable the feature and the warning separately. At this time,
    ; the warning is only displayed, if bug_compat_42 is enabled. This feature
    ; introduces some serious security problems if not handled correctly. It's
    ; recommended that you do not use this feature on production servers. But you
    ; should enable this on development servers and enable the warning as well. If you
    ; do not enable the feature on development servers, you won't be warned when it's
    ; used and debugging errors caused by this can be difficult to track down.
    ; Default Value: On
    ; Development Value: On
    ; Production Value: Off
    session.bug_compat_42 = Off
    ; This setting controls whether or not you are warned by PHP when initializing a
    ; session value into the global space. session.bug_compat_42 must be enabled before
    ; these warnings can be issued by PHP. See the directive above for more information.
    ; Default Value: On
    ; Development Value: On
    ; Production Value: Off
    session.bug_compat_warn = Off
    ; Check HTTP Referer to invalidate externally stored URLs containing ids.
    ; HTTP_REFERER has to contain this substring for the session to be
    ; considered as valid.
    session.referer_check =
    ; How many bytes to read from the file.
    session.entropy_length = 0
    ; Specified here to create the session id.
    ; On systems that don't have /dev/urandom /dev/arandom can be used
    ; On windows, setting the entropy_length setting will activate the
    ; Windows random source (using the CryptoAPI)
    session.entropy_file = /dev/urandom
    ; Set to {nocache,private,public,} to determine HTTP caching aspects
    ; or leave this empty to avoid sending anti-caching headers.
    session.cache_limiter = nocache
    ; Document expires after n minutes.
    session.cache_expire = 180
    ; trans sid support is disabled by default.
    ; Use of trans sid may risk your users security.
    ; Use this option with caution.
    ; - User may send URL contains active session ID
    ;   to other person via. email/irc/etc.
    ; - URL that contains active session ID may be stored
    ;   in publicly accessible computer.
    ; - User may access your site with the same session ID
    ;   always using URL stored in browser's history or bookmarks.
    session.use_trans_sid = 1
    ; Select a hash function for use in generating session ids.
    ; Possible Values
    ;   0  (MD5 128 bits)
    ;   1  (SHA-1 160 bits)
    ; This option may also be set to the name of any hash function supported by
    ; the hash extension. A list of available hashes is returned by the hash_algos()
    ; function.
    session.hash_function = 0
    ; Define how many bits are stored in each character when converting
    ; the binary hash data to something readable.
    ; Possible values:
    ;   4  (4 bits: 0-9, a-f)
    ;   5  (5 bits: 0-9, a-v)
    ;   6  (6 bits: 0-9, a-z, A-Z, "-", ",")
    ; Default Value: 4
    ; Development Value: 5
    ; Production Value: 5
    session.hash_bits_per_character = 4
    ; The URL rewriter will look for URLs in a defined set of HTML tags.
    ; form/fieldset are special; if you include them here, the rewriter will
    ; add a hidden <input> field with the info which is otherwise appended
    ; to URLs.  If you want XHTML conformity, remove the form entry.
    ; Note that all valid entries require a "=", even if no value follows.
    ; Default Value: "a=href,area=href,frame=src,form=,fieldset="
    ; Development Value: "a=href,area=href,frame=src,input=src,form=fakeentry"
    ; Production Value: "a=href,area=href,frame=src,input=src,form=fakeentry"
    url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=,fieldset="

    So now i have done all what’s suggested over your support page here and i don’t know what to do to find out what is the problem.

    Help please!


Viewing 15 replies - 1 through 15 (of 19 total)
  • Plugin Author elfin


    and one thing you don’t mention is when you are getting this. I assume after you revisit the cart page after adding an item to the cart?

    The only thing that causes that so far as I am aware is the session not being stored correctly. If that is not the cause, then I have no idea what it could be.

    Try setting output_buffering to On in php.ini. It worked for me.

    @andystreet: Thanks for that. We’ll add this to the relevant page in eShop’s wiki.

    oups sorry about it, this is not working in 2 ways :
    1 when you add a product to the cart, “added” is shown but there is nothing in the cart widget unless “o”
    2 if i enable to go to the shopping cart after addend a product, i can see the product but not checking out or continue my shopping an keep my cart.

    @ Andystreet thanks you i ll try it and let you know.

    Site url?

    @andystreet it doesn’t work for me 🙁


    Thanks for help

    lets summarize:
    On my website,, using WP 3.5.1, when adding a product to my cart, the cart page is displayed with the product.
    Then when clicking on “checkout” or trying to change quantities and clic on “update cart”, the message “your shopping cart is empty” is displayed.

    What i did trying to solve this problem :

    – on each points i tried to disable all plugins and change my theme to Twenty Twelve which is a default one.
    – my php.ini is using php 5.3 version

    1. ask my host if session.save_path was setup and he told me yes. here is it

    session.save_path = “/var/php_sessions”

    no change, still not working

    2.i tried setting output_buffering to On in php.ini. (still On in my php.ini)

    output_buffering = On

    no change, still not working

    3.Also disable the session.auto_start

    ; session.auto_start = 0

    no change, still not working

    so my problem remains unsolved 🙁

    Thanks for helping me 🙂

    I’m sorry to hear that. To be clear: my checkout page still says the shopping cart is empty (for some annoying reason) but the setting allowed me to proceed to PayPal. This is a HostGator account.

    I’m sorry but we do not support eShop when used with the eStore theme from Elegant Themes. Can you replicate the problem using the default theme with all other plugins deactivated?

    OK no problem, i switch to the twenty twelve theme an all plugins are deactivated.
    only wp eshop running but it is still not working…
    I plan to make a fresh install of wordpress running eshop plugin only and see if its working..
    If you have any more idea 😉


    PS: I’ll let TT Theme and only eshop until you can check on the website what could be the problem.

    Have you contacted your hosts about this session problem?

    I asked the support to correctly setup the session.save_path.
    My host is dotster.
    I don’t really understand all those php stuff.. o if you have a specific question to ask them i can do it…

    Ok so well….
    can you explain me those 3 lines :

    [ Moderator Note: Please post code or markup snippets between backticks or use the code button. ]

    # memory_limit = 64M
    # [uncomment - delete ";" - and set session.save_path to something like]:
    # session.save_path = "/home/users/web/.../USERNAME/tmp"

    do i need to have my memory limit to 64? mine is set to 32…

    You told me to contact my host but what do you want me to tell him?
    All the website is perfectly functional, all the plugins are running correctly with all my themes coming from elegant theme, theme forest and others free themes.
    There is only eshop which have problem so how do you want me to explain the Doster support that there is a problem with my host because only one plugin is not running correctly.
    They’ll tell me that it’s coming from the plugin don’t you agree me?

Viewing 15 replies - 1 through 15 (of 19 total)
  • The topic ‘your shopping cart is empty’ is closed to new replies.