I have a fresh ExpressionEngine 2.8.1 installation and a fresh CartThrob 2.5 installation. Without making any alterations, I've already received a developer log message:

Deprecated function set_cookie() called in system/expressionengine/third_party/cartthrob/libraries/Cartthrob_session.php on line 195. Deprecated since 2.8. Use EE_Input::set_cookie() instead.

I've read that CartThrob 2.5 doesn't work completely with EE 2.8 yet, but I need to get this installation moving. Can anyone provide guidance on how to get these two to play together? Is it as simple as doing a find-and-replace "set_cookie()" to "EE_Input::set_cookie()" in that Carthrob_session.php file?

  • 2
    I have an install running EE 2.8.1 and CT 2.5 together, and they are working fine for my purposes. Deprecated does not necessarily mean broken, rather just that the function should be avoided because of several possible reasons. Unless you have a specific reason for doing so, it's probably best not to hack the core code and just wait for CT to update it officially to be fully compliant with E 2.8.1 In the meantime, most functionality with 2.8.1 seems all there, so you might want to ignore the warning and try it out.
    – positlux
    Jun 23, 2014 at 0:18
  • 1
    What @positlux said. Deprecated isn't an error, it's a warning that that function will be removed in a future version. I also agree that you do not want to hack CT to make it work with 2.8.1. Test everything out and if you can get it working, then great. If not, then you're probably best building on 2.7.3 instead, which you can get from EllisLab if needed. Jun 23, 2014 at 0:42
  • Agreed. Not an error.
    – Anna_MediaGirl
    Dec 7, 2014 at 5:33

1 Answer 1


CT 2.5 isn't compatible with EE 2.8, go and grab CT 2.6 which is EE 2.8 compatible.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.