magento geolocation redirect - magento

Do you know any plugin that redirects only users to certain store based on the IP (geolocation)?
I have found theese two:
http://www.magentocommerce.com/magento-connect/store-and-currency-auto-switcher.html
http://www.magentocommerce.com/magento-connect/j2t-geoloc-va-automatic-store-and-currency-switch.html
but the problem is that they change also the currency and not only the store.
As an alternative does anyone know a simple coding method to do that? (I should mention that I do not have any knowledge of geolocation so I did not try any coding at all yet)
Thank you,
Mugur

Take a look at your index.php and see how it loads a website/store.
It is relatively simple to install a geoip module on both Apache and Nginx, this module will then enable you to have a $_SERVER value for country code. You can then place a simple php switch/case block in your index.php that sets the website/store values used to call Mage.php and have whatever logic in there to suit your setup.
I don't believe the module route (even if one exists) is what you need given how straightforward it is to write the switch/case for your country->store mappings. You will also need to put in there some extra option for testing purposes, e.g. if the IP address requesting the page is your PC then show whatever store it is you need to test.

Anyway, you can always chose one of Magento's free extensions.
Geo Lock or Geo IP Locations are free and restricted versions of the first extension you linked.

Related

Redirect sub domain requests to look like it's from main domain

How do I go about doing the following:
I have a main domain at say http://www.domainname.com
and a another site at http://www.domainname.com/billing/
When loading knowledgebase articles it loads with http://www.domainname.com/billing/knowledgebase.php
I want it to load the content but make it look like it's coming from
http://www.domainname.com/knowledgebase.php
In otherwords anything when I load
http://www.domainname.com/knowledgebase.php*
it should load the content that exists at /billing/knowledgebase.php*
Possible?
It can be achieved with the .htaccess file and the use of mod_rewrite, however I know what you're trying to achieve, and from personal experience I'd say to stop while you're ahead, if you want a root based WHMCS install, then delete it all and start again, by installing WHMCS in the root, rather than a sub-directory. Although WHMCS says to install itself in a sub-directory, a lot of people treat it like a CMS, and as such really want it to be the homepage and content manager of the whole site.

Magento : CMS upload image fail silently

I am trying to figure out why the tinyMCE WYSIWYG editor in the CMS module of Magento will not upload images. I can create/delete folders but any file will simply not get uploaded, and there seems to be no message as to why the file is not successfully written on the server.
Anyone may have an idea why?
** Update **
I'm using Magento 1.6.2. I have tried to track down the problem and it seems that the controller never gets executed. I have added a line to log the arguments in the uploadAction() action (in Mage_Adminhtml_Cms_Wysiwyg_ImagesController) and nothing gets logged.
This is project inherited from someone else, and was modified to some extend, but nothing seems to point out that this part of Magento would have been touched in anyway by the modifications.
** EDIT**
The project associated with this question has been dropped and I no longer can provide an answer to this question. If anyone can confirm a working answer (as this problem was apparantly common with Magento), I will gladly mark that answer as "accepted".
Otherwise, I will flag this question for removal for the aformentioned reasons.
Thank you.
Other than solutions provided here, it may occur when you use a CDN (or a different domain) for your javascript and media files in admin panel. If you use CDN, use it for your website(s) scope and use your own domain for default scope. It will make your website(s) media and javascript files to be loaded from CDN, and backend's media and javascript files to be loaded from your own domain. This will solve your problem.
There are some known issues with flash image uploader on Magento. Unfortunately when it falls, it falls silently. Here are some cases when smth can break it:
if you try to use it with secured connection using open ssl certificate
if you're using it on server with apache authentication
on some Magento versions with prototype 1.7
I think the latter is your best bet. Maybe you should try to apply the patch from here: http://www.magentocommerce.com/boards/viewthread/4348/P45/#t327010
In my case it was a cross domain problem, and one quite hard to find if you ask me...
What was puzzling me was that the uploader for product images was working like a charm but the one in the CMS section was failing completely silently. We are serving the skin folder from an Amazon S3 bucket, and the flash uploader lives under that folder.
Interestingly enough, our version of Magento (1.7.0.2) is using two different methods to calculate the path to the SWF file, depending whether you are under CMS or Product update.
The CMS file (app/design/adminhtml/default/default/template/cms/browser/content/uploader.phtml) is using the following method to embed the Flash Uploader:
<?php echo $this->getSkinUrl('media/uploader.swf') ?>
While the Product image uploader is using:
<?php echo $this->getUploaderUrl('media/uploader.swf') ?>
In our case, the first one resolves to the AWS S3 url, obviously in a separate domain, while the second one will still reference the local domain's url.
So yeah, the quick, dirty fix would be to replace getSkinUrl for getUploaderUrl in app/design/adminhtml/default/default/template/cms/browser/content/uploader.phtml. Alternatively you can extend the core to load a different template in which you would have replaced that method.
I hope this helps somebody... I wish I had found something like this five days ago when I first stumbled upon the issue :-)
Are you using flash uploader with https? If so, is your secure address in differente domain (usually used in shareds ssl)?
I got some trouble with this. I solved by installing a flash uploader disabler plugin.
You can download the plugin with this downloader key:
http://connect20.magentocommerce.com/community/Dull_Uploader
I hope it helps.

Have Magento respond to several domains with the same store

I would like to have my magento install respond to two different domains, e.g.
a.mydomain.com and
b.anotherdomain.com
I need magento to respond with the same store, showing the same customers, the same catalog, same prices, etc.
The difference, of course, is that when the store is accessed through a.mydomain.com all the links and urls should use this domain as baseurl, and when it is accessed through b.anotherdomain.com all links and urls should use b.anotherdomain.com as baseurl.
Is there any way to do so? All the documentation I've found so far deal with having different stores on the same magento instance, while what I need here is to have the same store respond to two different URLs.
Thank you!
Everything I know of Magento says it was designed to prevent exactly this from happening so as not to be penalised by search engines for duplicate content.
You can, however, have multiple stores that share customers and catalog and products and prices and so on, but represent a separate domain each. In System > Manage Stores add several Stores for a single website and use the same root category for them all. Then in System > Configuration > Web assign the various domains.
easy enough, just set them both to use the same store code (or just default)
have a look in index.php
you can set the $mageRunCode to be whatever you want, you don't have to use the server environment variables method they have there, look at earlier versions of Magento to see the index.php file there.
see this old article of ours
http://www.edmondscommerce.co.uk/magento/magento-multistore-setup-in-a-nutshell/

Troubles after installing Two stores with same php docroot

I am trying to setup multiple stores within same hosting account and I studied many interesting guides out there on the matter.
Seems to me I figured out simplest solution for me - map both my dot com sites onto the same directory on host, and modify .htaccess to launch different website depending on URL, like so:
SetEnvIf Host .*anatscraftonia.* MAGE_RUN_CODE="anatscraftonia";
SetEnvIf Host .*anatscraftonia.* MAGE_RUN_TYPE="website";
My first store works fine, but when I go to anatscraftonia.com , all I get always is a Magento 404 page.
I checked all settings, multiple stores are defined and code above is copy/paste from Admin console under Website I added. I have Home page enabled for All Stores and Base URL redefined for both Secure/Unsecure. I also tried changing website to store, with no improvements.
What else am I missing? How do I even know what page is it trying to go to, or whether it even gets “no-route” or just totally whacked…
I threw together some quick and dirty code a few years ago to log the controller dispatch process in Magento Community 1.3x.
http://alanstorm.com/magento_controller_dispatch_logging
I don't think you'll be able to drop those files into a current installation, but it should give you an idea where to stick some logging functions to see why Magento is routing to a 404.
I am not 100% sure what you are trying to achieve but why not use a single instance of magento to handle both stores and magentos own multi store capability..
full details here http://dx3webs.com/front/2010/08/magento-multistore-setup-under-plesk/ post contains links to cpanel instructions as well.
the instructions are for multiple domains but will work with sub folders

CodeIgniter Production and Developpement server on the same domain. (no subdomain)

I googled this many times but now I have to ask it here.
I want to make a workflow for a website for Developpement/Production.
My constraint is that I use Facebook Connect (Facebook Graph now) so I need to have the dev and prod on the same domain and server. (to be able to log in and test the features)
I thought I will edit the CodeIgniter Index.php to redirect if I have a specific user agent (I can edit the one of my firefox)
You think it's a good Idea or you have a better one ?
And now comes the eternal question : how can I deploy this the easy way ?
should I use Capistrano or Phing ?
or simply a script with SVN ?
Please help me, I'm totally new to this Deployment thing. I used to work directly in production for my little websites or on other domains. but now it's not possible anymore.
For me, I'll have something like two application folders. One called "production", one called "development". Then in your index.php file, where you set your application folder, you can use php to determine which one to use for whatever reason. Just set your $application_folder variable to whichever one you need. (You could do this based on anything. A cookie, IP address or something.)

Resources