Why does WordPress rely on an fully qualified site_url with a 15-step plan for moving a site?

This question has been discussed several times on the WordPress Hackers email list, I’d recommend Googling something like wp-hackers absolute relative to get an overview of the various lively debates that have taken place over the years. Personally I use the searchreplacedb2 script whenever I migrate a database between URLs, e.g. from live to local/test/dev.

redirect 301 old url to new url

Well, you would have to add some re-write rules in your .htaccess file (unless there’s a plugin that can allow more complex 301 redirect rules). But, in your situation, if I understand correctly, it’s simply not possible to do it in one generic rewrite rule, due to the logic of your new URLs… If all … Read more

URL rewriting for WordPress Network (Multisite) subsite

This is straightforward if I understand the question properly. Use the “WordPress MU Domain Mapping” plugin: http://wordpress.org/extend/plugins/wordpress-mu-domain-mapping/ Update I think something like the following should work in your .htaccess: RewriteCond %{HTTP_HOST} www.exampleurl.com RewriteCond %{REQUEST_URI} !^/testsite RewriteRule ^(.*)$ testsite/$1 [L] This will return the contents of the folder “testsite” for “www.exampleurl.com”. And if you have: www.exampleurl.com/myoldsite/ … Read more

Woocommerce different URL for every table placed in the restaurant

I don’t have a WooCommerce currently to test this out on, so it’s very rough and ready, and may not even work… But, I think the logic is fairly sound. Give this a go: // Store session value for table number add_action(‘init’, ‘store_table_number’); function store_table_number() { if( $_GET[‘dining’] ) { global $tableNo; $tableNo = array( … Read more

What does $scheme in site_url function do?

<?php site_url( $path, $scheme ); ?> Parameters $path: (optional) Path to be appended to the site url. $scheme: (optional) Context for the protocol for the url returned. Setting $scheme will override the default context. Allowed values are ‘http’, ‘https’, ‘login’, ‘login_post’, ‘admin’, or ‘relative’. It simply overrides the default parameters in URL. For example if … Read more

How to get rid of index.php?

This is a classical case. All you need to do is to use Rewrite Rules. With Apache, you can do it in .htaccess: # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ – [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress More on this in codex.