Codeigniter expressionEngine - codeigniter

I just started working with codeigniter and i found it easy to work with. I recently came across expressionEngine and seems like a great add-on for codeigniter. My questions is, after i install expressionEngine, will that change the way i work with codeigniter where code goes in controller and view in the view folder.

Apples and Oranges,
Codeigniter is a framework that allows you to create a Web Application like an admin system. The customer does not add any content or touch anything. You can add CMS functionality to your codeigniter Web Application however in this sense you are actually building your own CMS on top of your Web Application.
ExpressionEngine, built with codeigniter, is a CMS that allows clients to add content without actually giving them access to your HTML - That is not to say that you can't give them access but this would defeat the purpose of a CMS.
Because expressionEngine is built on top of codeigniter it is possible to access it's functionality (I've seen posts on this but haven't tried it yet myself).
I think you would use the two together if you had a Web Application with a Website around it. In this way the client would be able to add content to the website and even some of the Application information areas but you would use Codeigniter to build the Web Application's functionality.
I don't think it would be a waste of a week to get into expressionEngine. LevelUpTuts has some great video tutes on expressionEngine 2 and try Nettuts+ CodeIgniter from Scratch for, suprisingly, codeigniter.
(For those who are new to CMS) The general process of development is:
- Translate your website design to HTML/CMS/jQuery
- Translate your HTML to expresionEngine Templates
- Define your Channels which your clients will add content to
- Embed those Channels into your templates to display that content dynamically
- In administration, assign permissions to who can add content to which channels for your clients
It will start to make sense once you try it.

You can't layer ExpressionEngine on top of CodeIgniter since CodeIgniter is extracted from ExpressionEngine. It's EE all the way, or use CodeIgniter to build your own thing.

ExpressionEngine supports PHP code inside it's templates if that's what your asking.
EE(2.0) is a CMS built on the CI2.0 framework.
If you are familiar with CI you will be able to hack, modify and extend EE with ease, as well as develop your own plugins etc.
You can of course, have an EE installation and a CI installation on the same server, but the two do not interact directly - CI is a framework, EE is a CMS.

Not sure I would call EE an "add-on"...
EE is it's own standalone Content Management System. Generally EE and CI are not meant to be mixed. While EE is built on CI, it is not meant to be extended/changed etc... They (Ellislab) will tell you, If EE doesn't fulfill your requirements, then you need to use CI exclusively.
Plus, a 300$ license is pretty expensive for something that you view as an "add-on".
I would reccomend looking into PyroCMS, which is also a free (beer and speech) CMS built on CI that directly allows for "Module" development which is straight codeigniter development with a few added meta/installation files that would allow you to build the extra functionality you need within the Codeigniter structure.

There are four files for expression engine.
For Example i have module named "Products"
1)mcp.products for admin end or admin control panel just admin controller in pyrocms
2)mod.products front end code is placed here 3)tab.products tabs are here 4)upd.products installation code. There are views in "views" folder and model is in "model" folder in our case "products_model". Just copy your controllers methods and paste them in mcp.products.php on admin side. and copy your controllers methods and paste them in mod.products.php on front end side. in udp file place the table structure.and it will treat as you are in Pyrocms.

Related

Can you use a laravel app to serve theContent() of a Wordpress page?

I wish to have a Wordpress site, but have certain paths served with an application written in Laravel.
For example:
www.mySite.com << just serves the normal Wordpress homepage
www.mySite.com/blah << also handles as part of the Wordpress site
www.mySite.com/blah2 << theContent() is pulled from Laravel, but it's wrapped in the normal Wordpress templating engine.
So, the /blah2 page will look and feel just like the rest of the site, because it's using the templates/headers/footers of templates in Wordpress. However, I'm just injecting theContent() from what I pull from the Laravel code.
I suppose I could just replicate the Wordpress templates in a totally separate Laravel site, but I thought it might be simpler to use the same templates. Also, if they were two different sites, then I'd need www.mySite.com, and www.mySite2.com, which I do not want. I want the two to look seemless.
Is this possible to do?
You would probably need to write a plugin in WordPress to be able to pull the data from the database that is being populated by Laravel.
An easier method, depending on where your Laravel database is sitting, would be to handle it in WordPress using raw PHP.
There could be multiple ways to address this based on your exact setup.

Can I have a Joomla! section on my site

I have built my website using HTML, CSS and JQuery. All pages are .php and everything works the way I want it to. My business is expanding now and I need to add a log in section for my clients where I can manage all of the work I produce (photography).
Because a custom CMS is out of my knowledge of web design I have decided to learn / use Joomla! My question is will I be able to keep my existing website and have a section that is Joomla!? So the main site remains untouched but when a client goes to the login page that page and the CMS area are joomla!
I am on an Apache server and am basically not sure if I can have just part of my site Joomla! Or does it have to be 100% Joomla!?
If I cannot have just part of my the site built in Joomla! Then there is no point in me learning it. I will have to outsource the design of the CMS. Just don't want to waste my time learning Joomla for no reason.
Joomla will happily coexist with your existing website but will likely need to be installed into a folder to avoid same file name conflicts (e.g. index.php).

Add static javascript to every page of joomla

Im completely new to Joomla development. I need to develop Joomla plugin that adds static javascript to the footer of all the pages of a Joomla site. Also, the plugin would need to save 2 fields in database, and access these fields on per page basis. Also, Admin panel is needed.
Now, my questoion is, where do i start? Joomla plugin development is a big task, so if I can get some pointers as to where to start, it would be very supporting.
Im not asking for direct code, but just the right direction to start.
Thanx in advance....
Joomla has three types of extensions (what you refered to as plugin): components, modules and plugins, where each has a different purpose.
If you need to add javascript to all pages, the best place is your template. If you don't have access to template, just building an extension, then you have to create a content plugin.
If you need to create extension with admin panel which also works with database, you need to create a component. The best place to get started is tutorial Developing a MVC component for Joomla 2.5

can i use pyroCMS for multilanguage, and multiuser project?

I need 1 suggestion, This is best platform for my question so i post here.
I think i will use PyroCMS for my new project.
Project has following features:
Multilagnguage in front end
User management
super Admin, country admin, advertisement admin
In frontend users export_type and import_type.
Can i use PyroCMS for this project? I need to make fast develop this. or can i do with core?? what you suggest.
I am bigner in PyroCMS, but i am good in Codeigniter.
Thanks in Advance :)
Looking at your project features:
Multilingual in front end - PyroCMS has built in multilingual support.
User management - Yup, you can extend Users Module as per your need
And use Groups Module to create respective (super Admin, country admin, advertisement admin) authentication hierarchy.
In frontend users export_type and import_type - can you clarify it further ? if it's about user type (Groups Module as I mentioned in 3) - it's doable.
Can i use PyroCMS for this project?
Definitely. PyroCMS would be perfect base for your project and will help you build your project at speed. The more I look into PyroCMS the more I feel like it's Codeigniter made easier. Also, Pyro community is very supportive.
Check these links:
To understand PyroCMS basics, module structure and module development: http://bhu1st.blogspot.com/2010/09/hello-world-pyrocms-module.html
Pyro - Theming, Module & Widget Creation guide and sample code: http://echo.semicolondev.com/
Also the multilingual solution for pyro is that you make multiple subdomains for each language and make multiple sites. Which is problem if you want to share the user database. One domain multilanguage site is a little more dificult but also possible. You can read more about it in this post: https://www.pyrocms.com/forums/topics/view/16237
Despite this i also suggest Pyro for the project and for others also :)
In the pyro modules you can have roles which set the permissions, using this along with a users helper you can then have in your module
if(user_has_role('super_user')){
// do stuff
}
Sample module : https://github.com/pyrocms/sample
http://docs.pyrocms.com/2.1/manual/developers/addons/modules/basic-structure

CMS for existing CI 2 site

I have a site build with CI 2 and I wonder if there is a CI2 based CMS out there which I can use for content management. I've written a very basic CMS myself but I have no time to develop it further.
Thanks in advance.
we have some options here .
PyroCMS
Lightweight, themeable and dynamic. PyroCMS is perfect for CodeIgniter
developers to kickstart your projects.
FuelCMS
An easy, flexible, empowering Content Management System for rapid
development that transforms your CodeIgniter projects into client
manageable brilliance.

Resources