Magento Training Examples [closed]
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
开发者_JS百科 Improve this questionIf you have trained a new Magento developer what were some if any dummy tasks you have given them. Besides reading all of the articles out there and doing the examples, I am looking for some ideas to give developers to work on after reading as much about Magento as they could without actually working on a task.
If anyone has any good ideas please let me know, You can even post some good code snippets of possible answers and what not. This might be a good thread to keep if we get a lot of good answers, for us tech leads out here responsible for training.
They could be frontend design template or building modules, it doesn't really matter. If someone posts a really good example, I will mark that one as the answer.
Not sure this is appropriate for Stackoverflow, but not sure where else to put it where it would be answered with quality responses.
The tasks I've given before really depend on what the developer needs to do as part of their normal job. I tend to give tasks that force the "rabbit hole" situations early on in the process, and make sure that the developer has enough support to come and ask when they get stuck.
For frontend developers, the best thing to do is develop an actual theme, or whatever tasks need to be accomplished in some current project. As examples, ask them to:
- Create a new theme directory w/ skin directories, etc
- Change a template (the product/list.phtml and product/view.phtml are both common here) to accomodate some desired new functionality.
- Add a JS lib to the product page for zoom or some other functionality, to be loaded cleanly using Magento's facilities.
- Create a new page, including complete controllers and layouts as appropriate, with functionality to be fleshed out by a backend developer.
- Change the CSS to the One Page checkout to fit the new site theme, without breaking CSS for the rest of the site.
For backend developers, again the best thing is the real thing. Developing backend modules takes some significant familiarity, but hitting the highlights isn't too bad. Examples:
- Start a new Magento module.
- Override a core Magento class with one from the local module
- Create some administrator functionality to deal with the new module.
- Add an ACL so that this functionality can be enabled / disabled for particular admin users.
- Integrate with frontend code (see the frontend developer above) to provide the functionality to the end user.
- Append to the system configuration to use the new functionality as part of the normal system.
These are just general ideas, but they will quickly force a developer to gain some understanding of the way Magento is laid out and how it operates. Of course, it can take weeks or months of supportive mentoring to get the developer to the point where they are a self-sufficient developer on Magento, but that's largely a matter of filling out the details after items like this.
Hope that helps!
Thanks, Joe
This is what we send applicants to see if they even know what magento does/how it works ... not sure if this is what you meant ...
Please perform the following:
Override a controller action: Override the Mage_Customer_AccountController keeping all the original functionality except that the logoutAction redirects to the home page immediately not the logoutSuccess page.
Override a model function: Override the Mage_Customer_Model_Customer model keeping all the original functionality except that the getName() function always returns "Magento Rocks".
Modify a Block: Change one of the blocks used on the customer/account/index page to display a message of your choice.
Add an Observer: Add an observer so that after the order has been created on the frontend the last name gets changed to "Is Awesome"
Its not really practical ... at all ... but it lets us see if people can code in Magento in a decent way instead of just modifying core files and such. As with almost anything in Magento there are different ways to accomplish the various tasks, perhaps have them figure out the different ways or have them determine which way would be most appropriate.
Note: Just to emphasize so that no one points it out, these "tasks" were not designed for practical use and in fact you probably will NEVER do any of these, they were intended to see if someone could actually do things (override a model method etc) the Magento way.
精彩评论