Magento 1.3: PHP Developer's Guide


Magento 1.3: PHP Developer's Guide
eBook: $23.99
Formats: PDF, PacktLib, ePub and Mobi formats
$20.39
save 15%!
Print + free eBook + free PacktLib access to the book: $63.98    Print cover: $39.99
$39.99
save 37%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Overview
Table of Contents
Author
Reviews
Support
Sample Chapters
  • Extend and customize the Magento e-commerce system using PHP code
  • Set up your own data profile to import or export data in Magento
  • Build applications that interface with the customer, product, and order data using Magento's Core API
  • Packed with examples for effective Magento Development

Book Details

Language : English
Paperback : 260 pages [ 235mm x 191mm ]
Release Date : January 2010
ISBN : 1847197426
ISBN 13 : 9781847197429
Author(s) : Jamie Huskisson
Topics and Technologies : All Books, CMS and eCommerce, e-Commerce, Open Source, PHP, Web Development


Table of Contents

Preface
Chapter 1: Magento 1.3: PHP Developer's Guide
Chapter 2: Installing/Upgrading Magento and Preparing for Development
Chapter 3: Magento's Architecture
Chapter 4: Shipping Modules in Magento
Chapter 5: Building a Payment Module for Magento
Chapter 6: Building a Basic Featured Products Module
Chapter 7: Fully-Featured Module for Magento with Admin Panel
Chapter 8: Integration of Third-Party CMS
Chapter 9: Magento's Core API
Chapter 10: Importing and Exporting Data
Index
  • Chapter 1: Magento 1.3: PHP Developer's Guide
    • Extending Magento
    • Core development functionality coverage
      • Core principles of development
      • System maintenance
      • Payment and shipping module development
      • Module development
      • Data portability and interaction
    • Chapter overview
      • Installing, upgrading, and preparing for development
      • System architecture
      • Shipping modules
      • Payment modules
      • Basic module creation and implementation
      • Fully-featured module development with administration panels
      • Integration of third-party CMS
      • Magento's core API
      • Importing and exporting data
    • Summary
  • Chapter 3: Magento's Architecture
    • Magento's base structure
      • Base directory
        • The function of each of the files in the base directory
        • The function of each of the folders in the base directory
    • The template system architecture
    • Structural blocks and content blocks
      • XML layout files
      • Hierarchical file processing
    • Modules and how they work within the system
      • Distribution of the modules between directories
      • Modules included with Magento
      • Setting up the folder structure of a module
    • Zend Framework and its role within Magento
      • What is Zend Framework
      • How Zend Framework works
      • It's role and effect in Magento
    • Backing up Magento's data
      • Backing up the files
        • Manually
        • Using SSH
      • Backing up the database
        • Using the system itself
        • Using phpMyAdmin
    • Summary
  • Chapter 4: Shipping Modules in Magento
    • What shipping modules do
    • How to begin with a shipping module
      • The configuration files
      • The adaptor model
      • The administration setup
      • Declaring further fields and learning how they're structured
      • Appearing in the administration
        • Free shipping
        • Handling
        • Restricting a shipping method to certain countries
    • Using our template to create a shipping method
      • The configuration files
      • Our adaptor
      • The administration configuration
      • Testing our newly built module
      • Code to allow our shipping module to meet our needs
    • Summary
  • Chapter 5: Building a Payment Module for Magento
    • How payment methods work in Magento
      • Payment methods that are bundled with Magento
      • Downloadable payment methods on Magento Connect
    • Building the base of a payment method
      • Module declaration
      • Module configuration
      • The adaptor model
        • Payment information storage
        • Four core components
      • Declaring configuration options for the admin panel
        • Setting up the core fields
        • Some other field types you can use
        • Obscuring fields
        • Custom fields from our models
      • Tying in automatic shipping tracking/updating
      • Automatic shippingtracking and code-generation tie-in
    • Summary
  • Chapter 6: Building a Basic Featured Products Module
    • How it works
      • Creating the attributes in the system
      • Setting the field values
        • Attribute Properties
        • Frontend Properties
        • Manage Label/Options
      • Creating the core module with functionality
      • Adding the XML block declaration for display of the module on the frontend
      • Creating templates for display
      • Defining the module in the local .xml module configuration file
    • Summary
  • Chapter 7: Fully-Featured Module for Magento with Admin Panel
    • Creating our first Hello World message
      • Setting up the display template
      • Placing the display template in a layout .xml file
    • Creating our first /helloworld/ URL structure
      • The directory structure
      • Giving the module a backend
      • Configuring the module
      • Our controller
      • The Helper model
      • The module's default model
      • Template blocks and display
        • Display block class
        • The layout .xml file
        • The design template file
      • Viewing /helloworld/
      • Taking a look at what we've put together
    • Using the Module Creator script to get Hello World
      • Installing the Module Creator
      • Creating our first module with the Module Creator
      • The contents of our new module
    • Hello World
    • Expanding our module further into a database-driven, administrated brands module
      • Recreating the base
        • The directory structure
        • Enabling the module in the backend
        • Our controller
        • Configuring the module
        • The Helper model
        • The module's default model
        • The module’s frontend display base
      • Extending the base towards introducing a database
        • The configuration .xml file
        • The mySQL4 data models
        • Database setup and installation of the file
      • Extending the module to include an administration
        • Adminhtml directories
        • Administrative display blocks
        • Defining the core administrative backend to the system
        • Defining the add/edit screens to the system
        • The module's grid display declaration
        • Preparing the form
        • Defining the add/edit form tabs
        • Configuring and preparing the form for display
        • Setting up our brand status array
        • Creating a controller to process access URLs
        • Changing the module's config.xml to reflect the administrative backend
        • Giving our administrative backend a layout .xml file
        • A look at the administrative backend
      • The index controller
      • Displaying the brands data
    • Summary
  • Chapter 8: Integration of Third-Party CMS
    • Notable things about CMS Integration
    • The WYSIWYG editor implementation
    • Integrating Wordpress
      • Installation
      • Configuration
        • WordPress Blog Settings
        • WordPress Blog Menu
      • Changing the display of integration
        • Page/post layout
        • Sidebar
    • Other content management systems
      • Typo3
      • Drupal
      • ExpressionEngine
      • Joomla!
    • Summary
  • Chapter 9: Magento's Core API
    • What is the Core API?
      • Which Core APIs are included?
      • What do the Core APIs do?
      • Prerequisites to using the Core API
      • Examples of what can be done with the Core API
      • Giving scripts access to the Core API
    • Choice of protocols
      • SOAP
        • Checking for SOAP installation on the server
        • Putting SOAP to use
        • Zend Framework SOAP Client
      • XML RPC
        • Getting XML RPC on our server
        • Setting up the Zend Framework XML RPC class
        • Putting XML RPC to use
    • Basic API methods
      • Describing the methods
      • Understanding the methods individually
        • startSession()
        • endSession(sessionId)
        • login(apiUser, apiKey)
        • call(sessionId, resourcePath, array arguments)
        • multiCall(sessionId, array calls, array options)
        • resources(sessionId)
        • globalFaults(sessionId)
        • resourceFaults(sessionId, resourceName)
      • Global API Faults
    • Basic API scripting: Customer API
      • Getting started
      • Creating a customer
      • Retrieving an individual customer's details
      • Updating the customer's details
      • Listing all customers from the database
      • Deleting a customer from the database
    • Complete list of available resources and methods
      • Customer methods
      • Directory methods
      • Catalog methods
      • Sales methods
      • Inventory methods
    • Summary
  • Chapter 10: Importing and Exporting Data
    • What kind of data can I export or import?
    • An introduction to the interface
      • Profile Wizard
        • Profile Information
        • File information
        • Data Format
        • Field Mapping
        • Export Filters
      • Upload Files
      • Run Profile
      • Profile Action XML
      • Profile History
    • Sample implementation: Import/Export of metadata
      • Exporting our metadata
        • Setting up the Profile Information
        • Adding the File Information
        • Selecting the Data Format
        • Mapping our fields
        • Choosing the Export Filters
      • Importing our metadata
        • Setting up the Profile Information
        • Adding the File Information
        • Selecting the Data Format
        • Mapping our fields
    • Common issues with importing/exporting
      • Bad CSV file formatting
      • Short descriptions
      • Import/export paths
      • Images location
      • Importing multiple images
    • Summary
 

Jamie Huskisson

A passionate 23-year old freelance developer from Nottingham, Jamie Huskisson has been working with Magento for the past two years since the very early Beta versions. His development client list features names such as the NHS, Volkswagen, and Nike building everything from web applications to e-commerce stores and small business sites. He also trains groups of developers and provides consulting on adopting open source technologies over closed systems for clients when required.

Code Downloads

Download the code and support files for this book.


Submit Errata

Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.


Errata

- 10 submitted: last submission 07 Apr 2014

Errata type: Technical | Page number: 133

The text tells you to create the helloworld.phtml file in the 'Helloworld' directory - it should be the 'helloworld' directory - note the lowercase 'h'

 

Errata type: Typo | Page number: 5

http://www.packtpub.com/files/code/7249_Code.zip should be http://www.packtpub.com/files/code/7429_Code.zip

 

Errata type: Code | Page number: 65

Missing end quote. $method->setCarrierTitle($this->getConfigData('title)); should be $method->setCarrierTitle($this->getConfigData('title'));

 

Errata type: Code | Page number: 65

'$Method = Mage::getModel('shipping/rate_result_method');' should be '$Method = Mage::getModel('shipping/rate_result_method');'

 

Errata type: Code | Page number: 68

</show in sto should be </show in store>

 

Errata type: Others | Page number: 110

Missing Text. You can now click 'Save Attribute Set' in the upper right-hand corner in order to complete the saving of this attribute into the attribute group.

 

Errata type: Technical | Page number: 114

Extra space. (<?php if($_product ->isSaleable()): ?>) should have been (<?php if($_product->isSaleable()): ?>)

 

Errata type: Techical | Page number: 114

Extra space. (alt="<?php echo $this ->htmlEscape($_product->getName())?>") should be (alt="<?php echo $this->htmlEscape($_product->getName())?>")

 

Errata type: Typo | Page number: 1

"Chapter 1, Magento 3.1: PHP Developer's..." should be "Chapter 1, Magento 1.3: PHP Developer's..."

 

Errata type: Typo

Please ignore the mention of appendix in the book. The book doesn't have any appendix.


 

Sample chapters

You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

Frequently bought together

Magento 1.3: PHP Developer's Guide +    WordPress 3 For Business Bloggers =
50% Off
the second eBook
Price for both: $34.95

Buy both these recommended eBooks together and get 50% off the cheapest eBook.

What you will learn from this book

  • Install and upgrade Magento to get ready for development
  • Get familiar with the architecture and internal structure of Magento
  • Learn about the best modules available and what they can do for you out of the box
  • Build a Shipping module for your Magento store to give users options for receiving their items once they have paid for them
  • Create a payment method for Magento and the various aspects that go together to complete the payment process
  • Speed up your module creation process using the Module Creator script
  • Build a basic brand-management module for Magento to manage brands and display their details
  • Integrate your favorite CMS into Magento including a walkthrough of integrating Wordpress into Magento
  • Create, update, delete, and retrieve customer data from within Magento by implementing the customer API
  • Integrate Magento data into an existing external web application or script using the Magento Core API
  • Import/export files to retrieve and store information from and to external sources using Excel Spreadsheet or CSV data

Chapter 1: Magento: Developer's Guide
Chapter 2: Installing/Upgrading Magento and Preparing for Development
Chapter 3: Magento's Architecture
Chapter 4: Building a Shipping Module for Magento
Chapter 5: Building a Payment Method for Magento
Chapter 6: Basic Modules to Extend Magento's Functionality
Chapter 7: Fully Featured Module with Administration Panel
Chapter 8: Integration of a Third-Party CMS
Chapter 9: Magento's Core API
Chapter 10: Importing and Exporting Data
Chapter 11: Appendix A - Resources for Further Learning

In Detail

Magento is the most powerful e-commerce solution around and has gained popularity in a short period of time. You can create and manage online stores using the extensive suite of powerful tools it offers. However, because of its powerful features, developing with Magento can be easier said than done.

This book will show you how to develop better and do more with the Magento. You will be able to extend and customize modules for the Magento system without editing the core system code. It will show you how to create both basic and advanced functionality modules for your store and help you turn your ideas for extending Magento into reality by building modules from scratch.

This book starts by walking you through the server requirements for installing Magento making sure Magneto's installation and upgrade process can fit into your workflow and suit your hosting environment setup. Then it runs through the architecture behind Magento's system, covering the core file structure and how the template system works. You'll also learn how to build a basic shipping module, payment module, and a brand management module for Magento. As you delve deeper into the book you will learn how to integrate your favorite CMS into Magento for data portability.

By the end of the book you will be able to take your basic knowledge of Magento and turn it into something advanced that will help you develop turn your ideas for extending Magento into reality.

Learn how to develop with the next generation of e-commerce system, Magento.

Approach

This book is a practical tutorial, filled with examples, aimed at people with no experience of programming web sites using the Magento system.

Who this book is for

If you are a PHP developer who wants to understand the architecture of Magento, learn how to extend the system with PHP code, add new features, and integrate Magento with a third-party CMS, this book is for you.

You are expected to be a confident PHP 5 developer. No experience of Magento development is expected, although you should be familiar with the operation of Magento. No experience of the Zend framework is expected.

Code Download and Errata
Packt Anytime, Anywhere
Register Books
Print Upgrades
eBook Downloads
Video Support
Contact Us
Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Resources
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software