0

私のサイトの 1 つで、wordpress 用の wp_on​​line_store プラグインを使用しています。これは wordpress 用の oscommerce です。

フレンドリーな URL を使用する場合、次のようなリンク内にあります。

www.mysite.com/store/product_info/products_id/1234

ここで store は wordpress の 1 ページの書き換え (pagename=store) または (page_id=1) product_info は oscommerce の product_info.php に関連しています。

主な問題は、この種のリンクが存在せず、wordpress が認識せず、次の宛先に送信されることです。

www.mysite.com

したがって、oscommerce は URL を書き換えますが認識しません。正しい URL は次のとおりです。

http://www.mysite.com/store?slug=product_info.php&products_id=1234
http://www.mysite.com/index.php?pagename=store&slug=product_info.php&products_id=1234
http://www.mysite.com/index.php?page_id=1&slug=product_info.php&products_id=1309

wordpress がこれらのいずれかに最初の URL を送信する必要がありますが、応答し続けて最初の種類の URL を使用し続けるため、これは内部で行う必要があります。

いくつかの方向性はいいでしょう、

ありがとう。

4

1 に答える 1

0
function add_mypage_var($public_query_vars) {
$public_query_vars[] = 'slug';
$public_query_vars[] = 'cPath';
$public_query_vars[] = 'products_id';
$public_query_vars[] = 'manufacters_id';
$public_query_vars[] = 'sort';
$public_query_vars[] = 'action';
$public_query_vars[] = 'page';
$public_query_vars[] = 'guest';
$public_query_vars[] = 'keywords';


return $public_query_vars;
}

//add a rewrite rules to "Page that links to Store in my case (loja)"
function do_rewrite_mypage() {
add_rewrite_rule('loja/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)?$', 'index.php/loja/?slug=$1.php&$2=$3&$4=$5&$6=$7&$8=$9','top');
add_rewrite_rule('loja/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)?$', 'index.php/loja/?slug=$1.php&$2=$3&$4=$5&$6=$7','top');
add_rewrite_rule('loja/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)?$', 'index.php/loja/?slug=$1.php&$2=$3&$4=$5','top');
add_rewrite_rule('loja/([^/]+)/([^/]+)/([^/]+)?$', 'index.php/loja/?slug=$1.php&$2=$3','top');
add_rewrite_rule('loja/([^/]+)/?$', 'index.php/loja/?slug=$1.php','top');
}

add_filter('query_vars', 'add_mypage_var');
add_action('init', 'do_rewrite_mypage');
于 2012-05-22T22:11:34.480 に答える