I am trying to integrate to a joomla project, a list of php pages setup that update their content from db, and give select options to the user, to navigate through this content. Select is also dynamic. All dynamic features work with url parsing.
For example, pageone.php gets some data from db and creates a list of selectable links to page2.php?data=fetcheddata. Page 2 gets url variables and performs queries to db to select the data.
How am I going to integrate this to Joomla? Should I make a module to include the basic php page, and how url parsing will then work? Should I make an i-frame wrapper? Please enlighten me..
You just described the way Joomla works. Depending on the content you want to present, there may already be an extension that does that, or at least does something close that can be modified. Without any more details it is hard to say, but what you are describing could probably be accomplished with a CCK http://extensions.joomla.org/extensions/news-production/content-construction. You could definitely do it with a combination of Chronoforms and Chrono Connectivity -
http://extensions.joomla.org/extensions/contacts-and-feedback/forms/1508
http://extensions.joomla.org/extensions/directory-a-documentation/faq/5661
If not, then you will probably need to code a component - http://docs.joomla.org/Developing_a_Model-View-Controller_Component_-_Part_1
1) iframe solution is the easiest one. But it has its limitations...
2) you can write Joomla component (not a module) that will do the job, but I'm afraid in this case you will either have to switch to Joomla URL format... unless you find some trick how to workaround that.
If your site is not very complex a simple approach is to write your application in plain php, and integrate your Joomla template to your application so your visitors can't tell any difference. Then, you will place links from your Joomla to your application and vice-versa accordingly.
However, the best approach if you are more familiar with Joomla is to develop a component. Here you can understand the difference between Joomla Components, Modules and Plugins. Please read Joomla documentation for further understanding:
http://docs.joomla.org/Extension
http://docs.joomla.org/Component
Related
I want to create do the following things:
1. Create a new E-Commerce website
2. Update a already made website(superbrainacademy.com)
So the second thing, I have to include a log in provision so that some people which I authorize can get to see certain extra pages than others.
In e-commerce website I want everything like they can sign up themselves, I do not want to add each person manually, they log in with their email id and password and do shopping like something like flipkart.com. Well, payment gateway is out of scope for this question. What I need to know is how to start? In what language to make all this? Any guide on this?
What I know and i have created: I know programming in html and a little bit css. I make websites from downloading some good templates or just putting nice images at back and all. See my websites to have an idea(superbrainacademy.com or octindia.com)
I thought that maybe I could achieve this through joomla/drupal/wordpress. So I downloaded xampp and installed wordpress, drupal and joomla on it. The websites that open up look basic blogs to me (sorry but i am new to it) So I have no idea whether or not what I want can be accomplished by use of any of them. I also downloaded many many wordpress templates but they looked disgusting.
So what I need: A way to create a website with login id and password (signing in and signing up) but one has to be authorized by me as the users < 20 or so and the other needs to be done automatic as users > 100 or idk maybe greater. So how should i start.
Note: I do not prefer using automatic website making like weebly and all...
I would recommend using a CMS. If your willing to put some time into it you can learn to build your own template. I haven't used wordpress but I have built templates for Joomla, it takes some time to learn probably just as much time it would take to do what you want to do from scratch. Check out their guide to building a basic Joomla template.
http://docs.joomla.org/Creating_a_basic_Joomla!_template
So it seems that, you just need an e-commerce cms, and its likes of .
My suggestion for you is to deploy a Magento installation with a prebuilt template and demo just so you know where to start, and it gets easier for you to do stuff yourself, once you get a hang of it.
There are various of Magento/osCommerce template service providers out there some of them free maybe, some of them premium. Though I strongly bias my recommendation towards Magento than osCommerce, after myself having worked on both.
Note:- I am taking about opensource here, and mostly all of these cms installations tend to be quite similar.
Update:-
About integrating a login system inside your current website, you can use a script from HERE as per your requirement and complexity.
Joomla has inbuilt ACL:
http://docs.joomla.org/J3.2:Access_Control_List_Tutorial
so that would enable you to set specific access for specific user groups eg branches
It would allow you to either:
a) let people register individually
b) you approve each registration
c) you set up each user individually
You could also combine Joomla with an eCommerce component.
I find mixing Joomla with Mijoshop (OpenCart for Joomla) a good solution.
You can install Joomla with VirtualMart. If you don't need all functionalities of joomla just disable those from back-end. If you need a pure e-commerce site you can use OpenCart (lightweight solution) or Magento which is a much more complex e-commerce solution.
Update:
The second thing couldn't be accomplished by using HTML only. wardha-Web's answer below (php login) seems to be a good choice since it's quite simple. Another sophisticated way would be to modify your existing site and put it behind to a php framework where you can define access role based authentication, but for this you need to have some php and object oriented programming skills
I have a large complex web site currently implemented using PHP and MySQL.
Some of the pages (about, contact us, etc) are largely static, but need to be updated from time to time. I'd like these updates to be able to be done by non technical admins, so I'm migrating the site to Joomla CMS. I've created a Joomla template to reproduce the banners, styling etc of my existing web site and have successfully reproduced the static pages by cutting and pasting into Joomla articles.
I'm now trying to embed my existing dyanamic php pages into the Joomla framework. I assume that I need to convert them into one or more Joomla components? I realize that I'll need to strip out the php code that currently generates banners, menus, etc, but I don't want to make major changes to these php pages, i.e. I don't want to re-implement them to follow an MVC pattern. I'm looking for a simple Joomla 3.2 hello world component tutorial. The tutorials that I've found are either too complex (i.e. MVC) or they're "too simple". By too simple I mean the component is not listed when I select Menu Item Type within the Menu Manager. Can anyone point me to any documentation that explains the minimal config that I need to include in a custom Joomla 3.2 component in order for the component to be listed when selecting Menu Item Type?
Also, should I create one big custom component to wrap my existing PHP application containing multiple pages("views"?)? Conceptually there the system could be considered as about 3 sub-systems, but there is some overlap between the MySQL tables used in these different sub-systems.
I don't need the implementation to be portable, i.e. I'm not trying to create a reusable component that others could use, I just need it to work on my site, using the least amount of work possible.
Thanks, Wayne.
I hope to clarify a bit and give you way out.
In response to your comment on #user3057084, the power of Joomla and its flexibility comes from it being MVC! If you want to wrap your existing code with little modifications, Wordpress will let you do all kind of nasty things! Nasty in the sense of mixing logic with data, i.e. copying and pasting your code and getting it to work quickly.
Joomla coding standards require that you separate models from views. And that you understand how the Joomla MVC implementation works. It will take longer, but you'll learn a useful skill that can and should be applied if you want to write portable maintainable code following Design Patterns.
Now about the way out.
Nothing keeps you from putting your raw php code in a Joomla view, including the database access. It's really ugly and I feel bad even suggesting this, but if it can be a small step towards using a great framework, then the end justifies the means.
The absolute easiest way for you in Joomla would be to create a template override (which you'll do from the admin with a few clicks in the template manager), then throw your code in, and it will run. Then, a little bit at a time, you might learn to separate the parsing of the input in the controller, store / retrieve the data in a model, and leave just the markup in the view.
But are you absolutely sure you need to code for this? There are thousands of (free) extensions out there that might do the job for you with no coding and little configuration, leaving you just a data migration to handle.
Have you had a look at Wordpress yet? In my experience, non-technical people find it easier to administer a wordpress website in comparison to a Joomla website.
When it comes to the menu structures,themes and contact forms and blogs - Wordpress takes the cake.
It would be worth your while to check it out? It might save you hours of frustration?
I'm developing my personal website and want a "blog section" in the main page. I want to use a CMS only to manage the content, but not displaying it in the page with a pre-built template.
What I asking here is if there is a CSM that provides the interface for managing the content, adding, updating, deleting and the main part, an easy way to retrieve these informations with database.
I already did this one time with Wordpress, but maybe there is something more appropriate.
I don't know if I'm clear, so, I want to manage the content with CMS, but display in my own ways.
I've not used it, but ages ago I came across Symphony CMS (not to be confused with Symfony, the PHP framework). Symphony uses XML throughout, so once you've edited your content, it can be consumed+cached by pretty much anything.
Have you ever heard of Mut8. The application manages your content and you build your template by using their special css classes for editing. It's pretty good.
http://mut8.me
You could use Joomla and build your own template.
Installing Joomla would take less than 5 minutes. Give it a try !
Joomla Template Tutorial: Joomla Template Tutorial from NetTuts
In case you want to use another programming language, you could try Python and the Django CMS.
It lets you build a "customized" back-end in a few minutes.
I'm creating a website which has a public-facing side, which I want selected users to be able to edit like in a CMS, but I also want to create a private intranet side which is made up of pages written in PHP by me to perform certain functions, but are not part of the CMS as such.
So basically I want:
- Some CMS-ified pages which are user-editable
- Some custom pages which use the CMS templating engine, authentication etc..
Which would be the best CMS for this?
Drupal is really good when you need this kind of flexibility. You can easily configure it to link to other pages via the menu system and TBH, it's so flexible, you'll find that anything you would want to hand code for the intranet can be done by installing and configuring existing third party modules, with the option of writing a custom module if you really have to.
We do developments like this and bring all of the intranet stuff into Drupal by putting code into a custom module and having the functions called by simple forms made in Drupal. To see data from internal DBs, tell Drupal the DB details in the config, then use the views module to make lists etc.
Not sure if it's the best, but Drupal is a very good candidate based on your description.
Your custom pages can be implemented in a module (PHP code). Specific URLs can be declared as being handled by your module and the rest of the CMS will not get in the way if you don't want to. From the point of view of your code, Drupal can be seen as a kind of framework.
I might use drupal. From what I've done with it, it seems very customizable. It's more flexible and seems more clean and secure than something like joomla. There are plenty of addon's. I haven't done enough with it to get to the point where I was interfacing my own PHP pages with it, but if I had to try anyone that's what I would go with.
I, however, personally just make my own CMS. It might be more work, but then everything is the way that I want it to be. It depends on how much you want them to be able to edit. For example, I was making a website for a shop, and so I created a place where they could add and remove items, which wasn't that difficult, especially since it was database based. To be able to do things like change menus and appearance and such might be harder...probably look towards something like a CMS.
I'm building a website with codeigniter (PHP) and I'm looking for a forum easy to integrate with my current database so users don't have to register twice. Moreover, I need to use the same html head and styles that in my website, placing the forum inside a div of <body>
Could anyone recommend me any simple forum application for my situation? Thanks.
I'm not aware of CI-specific solutions, but I've used a couple times MyBB and I can say it's really easy to integrate anywhere, as (at least in the 1.6 release, I haven't use it for some time) it's structure is easily moddable. I integrated it in a Joomla! website and in a custom one, and in both ways it's just a matter of reading the mybb_users table for access; it's quite a detailed table, so you can find almost anything you need for a registration table, like salt,password,timestamp of registration,email, and so on, so you just need to query that table and you're set.
As for the integration with CI I think the best way would be to place the whole forum folder and access it there; for the header, footer and other website parts you just change the relative forum template (layout are divided into subsets of templates, so you can change it easily and in details) and the user would not notice they are different applications.
You can also try and build a CI library for communicatin with the forum; they don't have an official API, but in functions.php and a couple other files I don't remember now (yes, 1.6 was mostly procedural, hope they have changed it now) you'll find all the relevant MyBB core, so building an API is straightforward; I once built own for Joomla! and was really easy. Moreover, there's This guy who wrote an integration for MyBB which is, in fact, a nice API; I don't know how updated it is, just check, but It's not difficult to port those files to a Codeigniter custom library, in case.
For database integration you're not going to find a forum that uses the same DB architecture as CodeIgnitor. What you can do, however, is alter your PHP registration scripts (for both CodeIgnitor and your forum) to add an entry in both member records.
Depending on your database you can also use Database Triggers to automatically update the other table when one is updated.
As for your layout, anything can be modified. Open source options will be the simplest, so I'd recommend phpBB for simplicity sake.
For more information on Database Triggers in MySQL, see here: http://dev.mysql.com/doc/refman/5.0/en/triggers.html
I would suggest using PHPBB forum or Wordpress with the BuddyPress plug-in.
I'm not quite sure how the integration with your codeigniter would be, but seeing as PHP is open-source, it shouldn't be too hard to crack open and find out.