Sia*_*ain 4 php wordpress multilingual woocommerce wpml
在我的 WooCommerce 网上商店中,我想将“返回商店” URL 更改为自定义 URL。我尝试在活动主题的文件中使用下面的代码function.php,但它不起作用。
在我的网站上,我有五种由WPML商业插件管理的活动语言。它还运行一个脚本,确保来自这些国家/地区的访问者被重定向到他们自己的语言。
/**
* Changes Return to Shop button URL on Cart page.
*
*/
function wc_empty_cart_redirect_url() {
return 'http://pacsymposium.com/';
}
add_filter( 'woocommerce_return_to_shop_redirect', 'wc_empty_cart_redirect_url' );
Run Code Online (Sandbox Code Playgroud)
我怎样才能让它工作以获得当前的语言商店链接?
谢谢。
Update2:在您的代码中,您需要使用:
\n\nwc_get_page_id()函数获取 WooCommerce 商店页面 ID。wpml_object_id过滤器挂钩,用于获取商店当前语言翻译的页面 ID。wc_get_page_permalink()过滤器挂钩本身使用的WooCommerce (请参阅此处)通过该材料,您可以获得商店当前翻译的链接(或任何其他链接)。
\n\n所以你的代码将是:
\n\nadd_filter( \'woocommerce_return_to_shop_redirect\', \'wc_empty_cart_redirect_url\' );\nfunction wc_empty_cart_redirect_url() {\n\n // Getting the shop ID\n $shop_id = wc_get_page_id( \'shop\' );\n\n // Getting the current language ID for the shop page\n $current_lang_id = apply_filters( \'wpml_object_id\', $shop_id, \'page\', TRUE );\n\n // Getting the post object for the ID\n $post = get_post($current_lang_id);\n\n // Getting the slug from this post object\n $slug = $post->post_name;\n\n // We re-use wc_get_page_permalink() function just like in this hook\n $link = wc_get_page_permalink( $slug );\n\n return $link;\n}\nRun Code Online (Sandbox Code Playgroud)\n\n代码位于活动子主题(或主题)的 function.php 文件中或任何插件文件中。
\n\n最后我测试了一下,它可以工作\xe2\x80\xa6
\n| 归档时间: |
|
| 查看次数: |
1283 次 |
| 最近记录: |