Search This Blog

Friday, August 30, 2013

Magento admin Manage Product Grid show message when filter is reset or set

In magento admin ->Manage Product->Grid
I want to show message when filter is reset, any one has any ideas?

Flop ideas,
1. getting it in session cos bock loads first then controller so msg wont be displayed....
2. Over Riding Grid Widet (just for a clear filter msg i wont over ride the module from core...)



Probable solution

public function gridAction()
{
$value=base64_decode(Mage::app()->getRequest()->getParam(’product_filter’));
if (strstr($value, ‘sku’))
{
$this->_getSession()->addSuccess($this->__(’SKU Filter SET’));
}
$this->loadLayout();
$this->renderLayout();
}

in the extended function of Mage_Adminhtml_Catalog_ProductController

http://shivakumariyer.blogspot.in/

https://www.facebook.com/groups/278585072228917/

http://www.magentocommerce.com/boards/viewthread/532353/

http://www.magentocommerce.com/boards/viewthread/532352/

Saturday, July 13, 2013

Magento code for url rewrite and flat table indexing product id wise and store wise

  • Magento code for url rewrite and flat table indexing product id wise and store wise
  • How to index individual /particular product in magento, store wise, for single product or single id,
  • Code in magento indexing with sku, product id, flat table indexing with single product
  • Magento indexing with sku, product id, flat table indexing with single product

For particular store

$productId=array(166,162);
$storeId=1;
Mage::getModel('catalog/product_flat_indexer')->updateProduct(array($productId),$storeId);

For all stores 
$productId=array(166,162);
$storeId=null;
Mage::getModel('catalog/product_flat_indexer')->updateProduct(array($productId),$storeId);



For URL indexing check or core url rewrite

taken from app/code/core/Mage/Catalog/Model/Url.php
Mage::getModel('catalog/url')->refreshProductRewrite($productId,$storeId);
Run url rewrite first and then for flat

Tuesday, May 29, 2012

Magento Project Scope Definition


Missing some details during complex Magento projects analyzes and estimation may cost developers too much money and headache. While a client is trying to provide all details about his future eCommerce website, there are a lot of hidden issues that may be missed and underestimated. Client just don’t think about these details at the beginning, but still will expect that this stuff will be provided by default because it’s “obvious”, but developer forgot to include these features to the scope during analyses. Usually, it leads to the situation when the project is out of time and budget and nobody is happy.
Here is a list of such hidden issues that worth to be taken into account in advance to avoid problems during project acceptance.
Product catalog creation. Obviously, a client already has a product catalog that are going to be sold. Is he willing to set up it himself in Magento or does he expect development company to do it? If the second, what way the data will be provided? You should consider time that you’ll need for implementation of import procedure. Sometimes it may be not so easy and requires preliminary efforts for making right data format for import.
Stores/Languages/Currencies. If a store is going to be branded for a few national markets, you probably should take care to make it available in several languages and configure various currencies. While it’s not to difficult to set up localization settings in Magento, working with translations will cost you additional time and efforts. Perfect markup made for English store will most probably require additional customization, when you will work on another language. It will take different space to place the text for the the same phrase in English, Russian and Chinese or Arabic. There are similar issues with currencies’ signs as well.
Payment and Shipping methods. First of all, you should check extensions for shipping and payment methods, that client would like to have, are available on Magento connect. It’s absolutely different tasks: to create extension yourself and to use something that has already done and available. If you are lucky and extensions are available on Magento Connect, check their cost and include to the budget if they are commercial. You should also care about their reviews: if they are bad and lots of people experienced problems — most probably you’ll have troubles as well. If there are no extensions on Magento connect you should check that the payment gateway or shipping company really provide API required for the implementation of your task.
Performance requirements. It’s reasonable to ask your client about his expectation regarding performance of eCommerce before the start of the project. You should check, if the hosting plan that client has chosen really may afford it. It’s great to get from the client at least estimated numbers for the following values:
— How many unique visitors per day does he expect?
— How many items should his catalog have?
— How many simultaneous users does he expect?
You should have solid idea how you are going to reach these numbers and to allocate reasonable time for server’s set up and performance optimization stuff.
SEO related stuff. We are talking about basic technical optimization here, but not about content optimization and keywords. Magento is one of the most search engine friendly eCommerce platforms out of the box, but there are known issues. Client who knows at least basics of SEO may be shocked by some default Magento URLs (for example, try to switch from one language to another) and most probably they will not be happy with it and will consider it as a developers’ issue. To avoid this situation discuss with client his expectation regarding technical aspects of SEO in advance and think how much time will it take you to make it work this way.
Integration with 3rd party services and systems. Client will want to integrate his new Magento store with some software that he has: ERP, CRM, Accounting, etc. It’s better to take care about this in advance and ask him before project is started. You should be sure that it’s at least possible, and client’s software has an API that may be called from Magento store in order to get some data. The integration is always not a simple project, and you should inform client about it to form right expectations.
Blog. Yes it’s simple, but it also takes time to be done. So, ask your client if he is willing to get blog and what features does he need. There is a great free extension on Magento Connect: Blog Community Edition. It’s really simple to be installed and customized. Although if client needs to have more features — you should propose hims something like WordPress and reserve more time for it’s integration with Magento store.
Orders management. It’s very valuable for every store. Magento has clear and simple orders management flow although often store has it’s own flow that may be different. Client cares about his business but not about how it’s done in Magento… So, it’s reasonable to talk with client before the project has started and to show him how the orders are been processed in Magento. If it doesn’t meet his flow you will be able to estimate how much time/efforts customization will take.
Version for mobile devices. I don’t think it’s something that may be really missed but anyway it’s better to ask client not only about browsers that should new store should be compliant with, but also about the mobile devices in which the store should work and look good. While it’s not hard to make a theme for iPhone or iPad, to make website be accessible from mobile phones is not a simple task, although doable. Visit for example http://www.sannas.jp made by us from your mobile phone to see an example.
“Small” stuff. Do not forget about “tiny” things otherwise it may cost you strong headache. Take care about messages look and behaviour (validation, success messages, error messages, etc.). Pay attention to design of email templates and pdf documents templates (invoices, etc.) — clients are often not happy with its default look.
That’s it what I have so far. This post is targeted mostly to project managers who creates specification and requirements for Magento project. There are useful articles for developers with the same idea as well. The most useful on my oppinion is 37 Point Magento Pre-Launch Checklist.
Hope this article will help you to get rid of some mistakes in projects estimates. If you have more items to add to this list — please let me know and I’ll update this article. Thanks.

Thanks to http://oggettoweb.com/blog/magento-project-scope-definition/


37 POINT MAGENTO PRE-LAUNCH CHECKLIST , points before making the site live

37 POINT MAGENTO PRE-LAUNCH CHECKLIST , points before making the site live

Download Magento-Pre-Launch-Checklist 

Taking any website live can be a very stressful time as a developer. Your client is pushing to go live as soon as possible and the pressure can make it easy to forget steps. I’ve compiled some tips and tricks that I have picked up on Meanbee’s projects for moving your Magento store from development to production.

Base URLs
Favicon
HTML Head
Placeholder Images
Contact Information
Transactional Emails
Plain-text Passwords in Emails are Evil
Change Admin Url
Invoice and Packing Slip Design
Tax Settings
Shipping Origin
404 Page
Clear Test Data
Product Inventory
Flush JavaScript to 1 file
Minify the CSS
Flush CSS to 1 file
Maintenance.flag
Error Page Design
Index Management
Caching
System Compilation
Google Analytics
Google Base
Google Sitemap
Newsletter Subscriptions
Shipping Methods
Payment Gateways
SSL Certificate
Module Licenses
PHP Configuration
Turn on the Crons
Log Cleaning
Disable Unnecessary Modules
Database Backup and Restoration Strategy
“The Web should be fast”
Be prepared

Download Magento-Pre-Launch-Checklist 

Thursday, May 24, 2012

Magento Coomunity edition SOLR Integration download free


Magento Coomunity edition SOLR Integration download free

Use Apache Solr Search Engine with Magento CE

http://code.google.com/p/magento-community-edition-solr/

http://code.google.com/p/magento-community-edition-solr/

http://code.google.com/p/magento-community-edition-solr/downloads/list



Magento SOLR integration tutorial help link


http://www.summasolutions.net/blogposts/magento-apache-solr-integration Part I (intro)

http://www.summasolutions.net/blogposts/magento-apache-solr-set Part II (setup)

http://www.summasolutions.net/blogposts/magento-apache-solr-integration-part-iii-indexing-custom-data
Part III (indexing custom data)

http://www.summasolutions.net/blogposts/magento-apache-solr-integration-part-iv-ajax-search-form

Part IV (Ajax Search Form)


Deleting Test Orders magento


■ Note Before you continue with the following script it is important that your Magento database is fully
backed up.


Currently, there is no direct method for deleting orders from within the Magento administration
interface. To delete any test orders, you will need to go to your MySQL client and run the query that is
copied below.
While there are a few Magento extensions that claim to add additional functionality to your store
and allow you to delete orders, in my experience I have found these extensions are unable to do what
they claim or can cause serious damage to your Magento database.
If this procedure is too advanced I would recommend, simply changing the status of any test orders
from pending to canceled. Alternatively, you can do a fresh install of Magento without sample data and
you will not have to remove products customers or orders.


■ Note Do not run this query if you do not want to delete all orders that are in your store.
SET FOREIGN_KEY_CHECKS=0;
TRUNCATE `sales_order`;
TRUNCATE `sales_order_datetime`;
TRUNCATE `sales_order_decimal`;
TRUNCATE `sales_order_entity`;
TRUNCATE `sales_order_entity_datetime`;
TRUNCATE `sales_order_entity_decimal`;
TRUNCATE `sales_order_entity_int`;
TRUNCATE `sales_order_entity_text`;
TRUNCATE `sales_order_entity_varchar`;
TRUNCATE `sales_order_int`;
TRUNCATE `sales_order_text`;
TRUNCATE `sales_order_varchar`;
TRUNCATE `sales_flat_quote`;
TRUNCATE `sales_flat_quote_address`;
TRUNCATE `sales_flat_quote_address_item`;
TRUNCATE `sales_flat_quote_item`;
TRUNCATE `sales_flat_quote_item_option`;
TRUNCATE `sales_flat_order_item`;
TRUNCATE `sendfriend_log`;
TRUNCATE `tag`;
TRUNCATE `tag_relation`;
TRUNCATE `tag_summary`;
TRUNCATE `wishlist`;
TRUNCATE `log_quote`;
TRUNCATE `report_event`;
ALTER TABLE `sales_order` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_datetime` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_decimal` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_entity` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_entity_datetime` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_entity_decimal` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_entity_int` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_entity_text` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_entity_varchar` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_int` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_text` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_varchar` AUTO_INCREMENT=1;
ALTER TABLE `sales_flat_quote` AUTO_INCREMENT=1;
ALTER TABLE `sales_flat_quote_address` AUTO_INCREMENT=1;
ALTER TABLE `sales_flat_quote_address_item` AUTO_INCREMENT=1;
ALTER TABLE `sales_flat_quote_item` AUTO_INCREMENT=1;
ALTER TABLE `sales_flat_quote_item_option` AUTO_INCREMENT=1;
ALTER TABLE `sales_flat_order_item` AUTO_INCREMENT=1;


ALTER TABLE `sendfriend_log` AUTO_INCREMENT=1;
ALTER TABLE `tag` AUTO_INCREMENT=1;
ALTER TABLE `tag_relation` AUTO_INCREMENT=1;
ALTER TABLE `tag_summary` AUTO_INCREMENT=1;
ALTER TABLE `wishlist` AUTO_INCREMENT=1;
ALTER TABLE `log_quote` AUTO_INCREMENT=1;
ALTER TABLE `report_event` AUTO_INCREMENT=1;
-- reset customers
TRUNCATE `customer_address_entity`;
TRUNCATE `customer_address_entity_datetime`;
TRUNCATE `customer_address_entity_decimal`;
TRUNCATE `customer_address_entity_int`;
TRUNCATE `customer_address_entity_text`;
TRUNCATE `customer_address_entity_varchar`;
TRUNCATE `customer_entity`;
TRUNCATE `customer_entity_datetime`;
TRUNCATE `customer_entity_decimal`;
TRUNCATE `customer_entity_int`;
TRUNCATE `customer_entity_text`;
TRUNCATE `customer_entity_varchar`;
TRUNCATE `log_customer`;
TRUNCATE `log_visitor`;
TRUNCATE `log_visitor_info`;
ALTER TABLE `customer_address_entity` AUTO_INCREMENT=1;
ALTER TABLE `customer_address_entity_datetime` AUTO_INCREMENT=1;
ALTER TABLE `customer_address_entity_decimal` AUTO_INCREMENT=1;
ALTER TABLE `customer_address_entity_int` AUTO_INCREMENT=1;
ALTER TABLE `customer_address_entity_text` AUTO_INCREMENT=1;
ALTER TABLE `customer_address_entity_varchar` AUTO_INCREMENT=1;
ALTER TABLE `customer_entity` AUTO_INCREMENT=1;
ALTER TABLE `customer_entity_datetime` AUTO_INCREMENT=1;
ALTER TABLE `customer_entity_decimal` AUTO_INCREMENT=1;
ALTER TABLE `customer_entity_int` AUTO_INCREMENT=1;
ALTER TABLE `customer_entity_text` AUTO_INCREMENT=1;
ALTER TABLE `customer_entity_varchar` AUTO_INCREMENT=1;
ALTER TABLE `log_customer` AUTO_INCREMENT=1;
ALTER TABLE `log_visitor` AUTO_INCREMENT=1;
ALTER TABLE `log_visitor_info` AUTO_INCREMENT=1;


-- Reset all ID counters
TRUNCATE `eav_entity_store`;
ALTER TABLE `eav_entity_store` AUTO_INCREMENT=1;
SET FOREIGN_KEY_CHECKS=1;