One client wants an e-learning website. It will contain 3rd party functionality via API. He is WP fan. By my side I have build a lot of WP plugins but I do not think that WP be a good platform for all. I would prefer do it with codeigniter.
But I am not entirely sure about it.
So the question is: knowing that WP is a CMS with a lot of ready to use functionality and CI is a real multi-purpose framework, which is best option to build an e-learning website: WordPress or Codeigniter?
I consider this a technical question that’s why I did not asked in https://webmasters.stackexchange.com/
If you’re wanting to build some sort of API, CodeIgniter would definitely be the way to go. WordPress isn’t typically used for RESTful applications as it has interaction limitations that become a huge problem to work with later on down the road.
Depending on how out of the box you will have to make the e-learning site I would go with codeigniter as well. A CMS is nice for filling that niche but I would assume you will need RBAC or ACL, grading, some type of course tracking, etc. Also there is PyroCMS built on top of CI that you can work with if you want a layer of abstraction pre built for people to admin the site.
The downside with codeigniter is you will be relying on writing the code yourself or using third party helpers and libraries to finish your job. I have developed about four different sites in CI for personal use and have yet to regret choosing that framework. My work uses CakePHP and there have been quite a few times where their conventions have made it an arduous task of coding around.