How to implement a template in Magento - php

I am stuck in a very difficult condition. I have made some small projects in PHP/MySQL like a blog in which a user can log in make some posts, and categories with the option of deleting and editing posts. While a visitor can browse the blog by posts and categories, can also post comments. Similarly I have also made a news admin panel for a news application where news can submit news and categories with pictures and can edit or delete any news.
All this work was done by using simple PHP without OOP, though I know how OOP works have all the basic concepts. Some days back I got a job of PHP trainee and the first thing which I was told to do is to implement the template of Magento.
Well I have only heard the name of magento before and while exploring it I found it is a very big ecommerce application developed under Zend Framework. I explored it well and figured out how themes works in websites, stores and store views but I don't think I am still in the position to customize Magento
Any Advice or Suggestion except I should leave the job

It is NOT a difficult situation. It's actually, a great opportunity come your way. So, relax.
You have good English, plus PHP skills to start off with, that's a great beginning. And Magento, like any of the customizable Open Source technologies, is designed to be easy to customize.
Guess your approach would be:
User Guide -- Read all that you need to know, its not much, and its fun.
Take a good example Magento site and peek into its internals -- See how it's done.
We all learn in our own individual quirky ways, but the above should be helpful to anyone.
And, no, you need NOT leave the job. All the Best!

Related

Converting PHP site to Joomla

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?

Should I use a simpler framework or CMS to meet deadline?

TL;DR:
Boss needs site up and running yesterday. BackEndGuy1 uses zend framework 2 and is going way too slow. BackEndGuy2 (this is me) was hired to help BackEndGuy1 meet deadline. FrontEndGuy and BackEndGuy2 decide that using Zend will take forever, so they want to switch to an easier framework or a CMS. What should they choose? Expression Engine? Codeigniter? Concrete5? Something else?
A friend of mine and I have a major decision problem. We’re working on a site that has to be up and running as soon as possible. My friend works on the front end along with an artist, and I work on the back end along with another guy. Actually, I was only recently hired because the boss and the rest of the team decided that the other back end guy needed a speed boost. That other guy thought that using zend framework 2 for this job was a good idea. As a result, I’ve spent the last couple of weeks trying to learn zf2 (which is very hard to do, believe me) and doing php and javascript patchwork on existing code. Plus, I have the boss frequently hovering over my head and asking “What do you think? Are we going to be up before Christmas?”, to which I try to respond in a diplomatic way like “Anything is possible with hard work and determination!”, but my honest opinion is “Sorry, this is impossible. At this rate it’ll probably take a month or two…”.
Bearing in mind that (a) the other back end guy practically stopped working on the site after I was hired (we only talk on the phone when I need him to explain parts of his code) and (b) there is still a considerable amount of work to be done on the back end, my friend and I decided that a switch to a different tool will probably give us the boost we need. I’ll try to give a brief but comprehensive description of what we are trying to build, and I’d like you to help us find the best option we have.
Ok, so the site we’re building will be a place where people will publish *candies* for sale and other people will browse published *candies*, and if they find one they like, they will be able to contact the publisher. It is important to note that no transactions will take place over the site. We will only provide a means for publishers to show off their product and customers to contact the publishers. Roughly, the pages / functionality we need are:
home page
*candy* search based on *candy* properties (with pagination, filtering, sorting… etc)
individual *candy* page (as viewed by publisher (editable) and customer)
publisher page with contact info and product list (as viewed by publisher (editable) and customer)
login and registration functionality for publishers
maybe some static helper pages I forgot to mention
Now, many of them are already working (e.g. the search page, with all the desired features, is ready), but there are many things left that have to be done using zf2 and I have no idea how to do them…
What we need now is something that (1) is easy to pick up, (2) is fast to create stuff with and (3) has as much out-of-the-box functionality as possible. My friend (the front end guy) is leaning towards Expression Engine (money is not a problem), because being it a CMS he will be more comfortable with it too, and also because he noticed that we will be needing a lot of its built-in features.
His only concern is that it may not be as customizable as a framework. The framework solution we are considering is Codeigniter, as it fulfills criteria (1) and (2). Another option I am considering is Concrete5. I just watched a couple of introductory videos and I was amazed by the in-place page editing functionality and the block system they use to dynamically add content to pages.
What is your advice? What would you do in our position?
There is quite a big difference between a CMS and a framework. I think you should make that main decision first, before going to details like which one is better.
Also, using a different tool might get you up to speed, but the fact that you need to ask, suggests that you are not very experienced in those other tools as well. Other tools also have a learning curve, even the easy ones, and besides, you will have to start over completely, not being able to take along the work that is already finished.
So I would recommend to stick with zf for now. If you are going to make a switch, maybe Drupal or even a CMS like WordPress would be better and easier. Also, I think it is important to tell the boss what the status is and what problems you have. You can then decide on the best strategy, and let the boss define the most important features, so there will be at least something if not everything before Christmas. Better to have some functionalities working and being usable than having nothing at all.
If you're going to be doing all the work, then switch to a framework or CMS that you already know.
If you don't know any, either stay with Zend & take whatever time it takes (making it clear to the boss what's happening), or get out now.

What CMS framework besides WordPress can I use to help me create child pages or categories that have multiple parents?

I'm attempting to build a small gallery site with WordPress, where there are several child galleries involved. Some of the galleries need to belong to more than one "parent". For example, if I have a gallery with the name "Davis", and multiple parents "Mom" and "Dad", I want to set it up so that both the URLs "mywebsite.com/mom/davis" and "mywebsite.com/dad/davis" go to the same gallery page. The trick is, I can't seem to be able to do this is WordPress without creating "Davis" twice, either as a post or page, which is not at all what I want to do. I'm trying to keep the site as lightweight as possible and I want to avoid duplicating content and other bad practices.
I'm a beginner to PHP but I was wondering if you fine folks knew of another small CMS or PHP framework out there that might support this type of structure. I've looked into Drupal but it seems too bulky for my needs. Would there be a lightweight framework that's simple enough to pick up rather quickly? I'm a pretty fast learner, but don't have a lot of experience with these types of customizations, although I do understand the concepts involved.
A little more info about the site, it has four main "parent" galleries and about 20 "child" galleries. I'm hoping to use an FTP solution for image uploading, so the CMS only needs to handle the permalink structure, a few page templates and styling. It should also be relatively SEO-friendly.
Also, if somebody does know how to achieve what I'm trying to accomplish in WordPress, that would be great too. I'm not opposed to using WordPress in general as I've used it several times before, it's just that I've done my research and nobody seems to have a solution to the problem I'm facing.
Take a look at a microframework called Silex.
What requirement you have posted , can be done in WordPress.
Create to category there - Mom and Dad.
Then create a page for gallery Davis and select both categories for Davis.

Dynamic Sites with Wordpress (PHP)

Hey I'm slightly newb when it comes to building comment boxes and avatar/profile pic systems linking with acccounts
My question is: Is there a way I can just use parts of Wordpress CMS such as the content system (because it is* separate via comments.php) into my dynamic php/sql driven website?
Are there any examples of this? I've been having a hard time finding any examples/tutorials/github stuff on this
Thanks :)
Wordpress wouldn't really be something you could pick apart like that, most of the components are tied together and I don't think it would be easy to use just the cms part and not others. The admin interface would definitely be hard to change, and since wordpress updates frequently, you would have trouble merging the updates back to your site I would think.
That said, you can find or create a custom theme and disable comments and remove all the comment functionality from your site. If not, can you describe your needs more and/or what you already have done? Maybe another CMS or system would be more suitable for you.
Or look at one of the PHP frameworks such as Zend Framework, symfony, or Codeigniter. These frameworks can ease development but have some learning curve.

Multiple Blogs in PyroCMS (or other OpenSource CMS)

I have been looking round for an open-source CMS framework that I can use as the basis for a few web projects. I used to use Joomla, but I found it to be clunky and out-dated, certainly too complicated for the average user that would be faced with it.
My current project requires a content-managed website, with all the usual stuff, and on the whole PyroCMS seems well suited to the task. However a core requirement of the project is that it contains four blogs. A general one for news relating to news in the client's field and then one each for the three members of the company.
I can't see how to do this as it stands, but I'm sure it must be possible somehow. I'm happy to write a module myself to do it if needs be, but I'm trying to keep the project fairly simple, and I can't be the first person to want to do this!
I'd considered a Wordpress network, but a key requirement is that everything is centralised in one administrator panel.
In summary - is there any way to maintain several blogs using just PyroCMS and addons?
Thanks,
Ian
There are a few outstanding features that have never really been added into PyroCMS as they have never really been needed by anyone with enough interest or ability to add them.
The blog module is VERY basic, but it has always been used by incredibly simple sites. "Mom and Pap" websites, simple "News" sections on corporate sites, developer blogs, etc.
Out of the box it CAN be done, by making a pages for "blog" and a category for each, then use the {pyro:blog:posts number="10"}{title} {summary} {/pyro:blog:posts} tags.
It's not the cleanest solution, but remember that most development on PyroCMS is done by developers finding gaps that need to be filled for client projects. I have a client project coming up soon that requires multiple categories (surprised it took so long!), which would solve this problem perfectly, but until they pay me to work on it I just don't have the time. If you want the feature added in for your job I can help you with it if needs be through giving advice on here, in the forums, on IRC etc, then we can merge it in easily enough.

Categories