ཞིབ་བརྗོད།
Given that I am not using WordPress these days and I haven’t really been using WooPoly for a while. I am looking for maintainers to take over this project.
If you’re interested, please reply to this issue or get in touch with me via email: hyyanaf [at] gmail [dot] com
This plugin makes it possible to run multilingual e-commerce sites using
WooCommerce and Polylang.It makes products and store pages translatable, lets
visitors switch languages and order products in their language. and all that from
the same interface you love.
Please do not ask for support on wordpress forum anymore , it is becoming hard for me to follow issues in different places. please if you want help just open a new Github issue.
Features
- [√] Auto Download Woocommerce Translation Files
- [√] Page Translation
- [√] Endpoints Translation
- [√] Product Translation
- [√] Categories
- [√] Tags
- [√] Attributes
- [√] Shipping Classes
- [√] Meta Synchronization
- [√] Variation Product
- [√] Product Gallery
- [√] Order Translation
- [√] Stock Synchronization
- [√] Cart Synchronization
- [√] Coupon Synchronization
- [√] Emails
- [√] Reports
- [√] Filter by language
- [√] Combine reports for all languages
What you need to know about this plugin
- The plugin needs
PHP7.0 or above
ie same software versions as WooCommerce - This plugin is developed in sync with Polylang
and WooCommerce latest version - The plugin support variable products , but using them will
disallow you to
, because of the way the plugin implements this
change the default language
support. So you have to make sure to choose the default language before you start
adding new variable products. - Polylang URL modifications method
The language is set from content
is not
supported
Setup your environment
- You need to translate woocommerce pages by yourself
- The plugin will handle the rest for you
Translations
- Arabic by Hyyan Abo Fakher
- Spanish by nunhes
Contributing
Everyone is welcome to help contribute and improve this plugin. There are several
ways you can contribute:
- Reporting issues (please read issue guidelines)
- Suggesting new features
- Writing or refactoring code
- Improving documentation
- Fixing issues
1.5.0
- correction to fix #527
- fixes #536 avoid over-setting product type on edit
- re- fixes #534 new variation not visible until save
- re- fixes #527 variation form default values
- fixes #535 variation stock issues
1.4.5
- re-fixes #430, #524 variation duplications
- fixes #526 product type selector issues – variable product appears as simple
- fixes #522, #529 and other JQuery deprecation issues props @mrleemon
- fixes #475 variation stock issues
- fixes #527 default form value for variation lost when creating new translation
- fixes #534 new variable translation, variations not visible until save
1.4.4
- implements #476 adding Additional Content to translated email fields
- Addresses multiple email issues causing some fields and default values not to be picked up or translated correctly.
- fixes #502 Cart issues by removing addToCartHandlerVariable()
- fixes #503 Deprecated: get_woocommerce_term_meta
- fixes #466 undefined index in Cart.php on line 188 props nicmare sep 2019
- addresses #449 by adding info to woo status report props jon007 sep 2019
- fixes #446 by allow strings translation for customiser checkout text props jon007 jul 2019
- implements #441 allow taxonomy slugs to be the same in different languages props jon007 jul 2019
- fixes #442 incorrect defaults used where no saved settings exist props jon007 jul 2019
1.4.3
- fixes #434 page checks duplicating pages and other language switching issues
- fixes #435 fix get_current_screen errors when this plugin called in unanticipated circumstances props danieleftodi YITH Gift Cards
- fixes #436 Illegal string offset and Invalid argument in FlashMessages
1.4.2
- fixes #432 default variation attributes were not synchronised correctly when using more than one attribute
- fixes #431 multiple email translation issues in different circumstances
- fixes #430 bugfix and enhancement to allow variations to be disabled
- stock synchronisation – avoid errors being logged where product is not translated
1.4.1
1.4.0 preview
Thanks to :
@jon007
@mweimerskirch **
**@Annih
@mrleemon
- fixes #408 WooCommerce 3.6.x: by ensuring product lookup data is recalculated for translations and stale product data cache is cleared
- fixes #408 WooCommerce 3.6.x: cart fragment script updates for 3.6
- fixes #411, #299, #391, #361 stock synchronisation issues
- added WooCommerce pages checker: missing WooCommerce pages and translations are added, warning added for pages in incorrect status, addresses common support and setup usability issues such as #379
- fixes #390, #346 Cart: retain price when switching languages props mweimerskirch
- fixes #364 initial setup: apply initial settings automatically
- fixes #234 product admin: click on featured star in products list is now synchronised to translations
- fixes #400 shop page url translation: fixes where shop slug is contained in url
- fixes #416 emails: some missing custom string translations added
- fixes #414 emails: v1.3.0 bug for translating email strings which are customized in admin
- fixes #409 shortcodes: allow product shortcode to translate in same way as products shortcode
- fixes #419 variations: allow default variation based on custom product specific attribute
1.3.0
- fixes #352 by allowing translation of ‘invisible’ variations
- fixes #353 by checking language of duplicate skis
- improves #353 fix
- fixes #348 by assigning language to variations
- fixes #343 by reducing frequency of coupon load
- fixes #354 by including updates from woocommerce
- fixes #356
- Fall back to $polylang->pref_lang for AJAX endpoint URL when $polylang->curlang is not available.
- fixed empty attribute for variations
- Add files via upload
- fixed #370
- fixes #384
- Extend the email hooks
- fixes #401 email subject and title translations
- fixes #399
1.2.0
Thanks for : @jon007 For his amazing work which made releasing this new version possible
1.1.0
Thanks for :
@jon007
@nunhes
@masato-igarashi
@marian-kadanka
@ahmedofali
For all the amazing work which made releasing this new version possible
- add wc version to comment headers
- fixes #283 by handling shortcode with no ids set
- Add Spanish Translate
- fix issue #320
- Fix #325 Coupon optimization
- fix issue #320 (re-commit)
- Merge pull request #322 from nunhes/master
- Update readme
- Merge pull request #326 from masato-igarashi/master
- Fix #317
- Fix Ajax endpoint URL again, fixes #319
- Identify woocommerce and polylang if installed as mu-plugins
- Change the way of checking polylang and woocommerce versions
- Remove Unneeded code since we use class name to check if plugin is activated or not
- Merge pull request #329 from marian-kadanka/fix-319-ajax-endpoint-url-again
- Merge pull request #335 from ahmedofali/master
1.0.4
- Fix #257 , Fix #247
- Fix #248 , Fix #266 upgrader_process_complete is not ideal
- Merge pull request #253 from marian-kadanka/fix-is-front-page-conditional-tag
- Update tested wp version
- Fix #260 – add the “Requires PHP” tag in the readme.txt
- fixes #268 setup coupon translations only when needed
- Merge pull request #263 from szepeviktor/patch-1
- Fix is_front_page() not working on WC shop page set as site’s static front page
- Fix Ajax endpoint URL
- Fix #247 – Woocommerce [products] shortcode and Polylang
1.0.3
- Fix PHP Fatal error: Class ‘NumberFormatter’ not found
1.0.2
- Fixes #200 Polylang version check fails to detect Polylang PRO
- Cart.js Updated in line with WooCommerce 3.1 cart-fragments.js
- Fixes #215 add string translations for Coupons (includes WooCommerce Extended Coupon Features if installed)
- addresses #168 with a utility function get_translated_variation to help get translated products or variations
- Fixes #217 BACS bank_details() update for woocommerce3
- Fixes #213 copy children for Grouped Product
- partially implements #208 WooCommerce 3.1 CSV Import/Export by adding support for synchronising Product Meta and Product Attributes to translated products
- Fixes #207 suppresses login customization to allow “Pay for Order” links to work when customer is not logged in
(after login continue to payment page instead of my account home) - Fixes #212 update deleteRelatedVariation for woocommerce3 warnings
- Fixes #209 cart filling up error logs with variations message
- Fixes #195 Locale number formatting for prices and built-in attributes
- Fixes #190 Products Quick Edit now synchronizes translations
- Fixes #187 WordPress 4.8 breaks translation for new Variation Products
- Fixes #184 Stock update incorrect if customer switches language while checking out
- Fixes #186 Shipping Method translation regression from 1.0.1
- Fixes #188 When translating Variations, code tries to create copies of untranslated terms
- Fixes #182 email translation extension hooks thanks to @vendidero/WooCommerce Germanized
- Fixes #181 additional filters in Meta synchronization thanks to @vendidero/WooCommerce Germanized
1.0.1
- Fixes #170 when WooCommerce 3.0.8+ active, product variation titles corrected in cart and orders
- Added Documentation links to new wiki Documentation pages
- Added minified javascript (enable SCRIPT_DEBUG to use unminified versions)
- Fixes #174 Error in autofill of missing translations of parent category
- Fixes #175 WooCommerce doesn’t pass loop name for some shortcodes
- Fixes #10 Initial setup issues if Polylang is not yet configured
1.0.0
Thanks for @jon007 and @decarvalhoaa for the amazing work in order to release this new version
This release fixes a number of issues around handling of attributes and translations.
In particular:
-
New translations can now use auto-copy of source language, to help save time translating.
In future a machine translation will be added.
Copy option covers Product Title, Short Description and Long Description.
Also when creating a new product, any missing Product Categories, Tags and Attributes are copied,
to avoid unexpected problems which occur if a translation is saved with missing term translations. -
it is now possible to set up the system to allow different types of product attributes
to be synchronised, translated, or independent in each language. The default options will be:- Translation and Synchronization Enabled for Product Attributes
- Synchronization off for Custom Product Attributes
In this case choose how to set up your product attributes as follows:
– Translated Attribute? Add in Products\Attributes and turn on Translation in Polylang at:
Languages\Settings\Custom Taxonomies
– Synchronised Attribute? [eg same value in all languages, eg product code, numeric properties]
Add in Products\Attributes and leave Translation turned off in Polyang.
– Different value in each language? add directly to Product as a Custom Product Attribute
- Enh: synchronisation for Custom Product Attributes and Global Product Attributes can now be
turned on and off independently in
Settings\WooPoly, Metas List, Attributes Metas, Custom Product Attributes.
The fields locker is unlocked for the attribute types which are not synchronized. - Fix: Global Product Attributes can now be individually configured in Polylang:
When Settings\WooPoly Translation attributes is checked then attributes appear in Polylang:
Languages\Settings\Custom Taxonomies lists the individual taxonomies
Previously all attributes translation were forced on: now they can be selectively turned
on and off. This means that there is no longer any need to create dummy translations for
untranslateable values such as reference codes and numeric fields. Fixes #127.
CHANGE: new Product Attributes are no longer automatically enabled for translation,
After creating new Attribute, enable Translation in Polylang if needed by checking:
Languages\Settings\Custom Taxonomies -
Enh: Missing Term Translations are now added by default. Fixes #72
Applies to Products\Categories, Products\Tags, Products\Attributes
Previously missing term translations caused -
Fixes #123 Fields Locker performance optimisation
- Fixes #155, fixes #81, fixes #99 Gateways fix gateway load issues by moving initialization to wp_loaded
- Fixes #149 Enable duplication of variable products
- Fixes #165 upsets/crosssells handling in wooCommerce3
- Fixes #159 Attribute Terms synchronization issues
- Fixes: #148 WooCommerce3 product_visibility is now a taxonomy not a meta item
- Fixes: #153 Fields locker doesn’t correctly lock Product Attributes of type Select
- Fixes: #147 When adding new variations, tool should also add the new variation to other languages
- Fix #137 #131 #130 #110 #117, #97, #94, #84, #83, #82 adaptations for wooCommerce 3.0
- Fix #136 Variable product stock sync issue where stock managed at parent level
- Enh #132 Add settings Page link to plugins page
- Fix #128 Allow variation description to be editable in translations
- Fix #129 #138 Account page only shows orders in current language
- Fix #112 Shipping Class are not sync for Product Variations
- Fix #140, #142, #143, #89, #70 Email Translation issues
- Fix #145 correct link from Polylang to Attributes Strings translations
- Fix #95 WooCommmerce product shortcodes not filtering by language
- Fix #104 Tax by allowing translation of Price Display Suffix
0.29.1
- Improve Multisite compatibility
- Fix variation description couldnt be translated
- Fix PHP Notices when translating variable products with variations
- Fix wc translation download
0.29
- Fix PHP notice in Reports when products dont have translations
- Fixed PHP notice due to Polylang deprecated functions
- Fixed WordPress database error in reports page
- Fixed missing argument warning in order detailspage and emails
- Fixed strpos() empty needle warning for empty endpoints
- Fixed removing email instructions from 3rd party payment gateways
- Fixed not detecting whether polylang pro is active
- Fixed unable to unselect a complete settings section Issue #51
- Fixed Fields Locker is not working in variation tab Issue #76
- Tested and confirmed working on WordPress 4.6.1, Polylang 2.0.7 and WooCommerce 2.6.7
0.28
- Fixed order emails translation
- Fixed shipment methods translation and added support for WooCommerce 2.6.
- Fixed payment gateways translation
- Added WC2.6 cart page ajax support
- Fixed backend html orders screen
- Fixed product type dropdown selection
- Fixed translation of products variations created before plugin activation
- Fixed variable products default attributes sync
- Fixed variable products (non-taxonomies) attributes sync
- Fixed product shipping class for websites running WooCommerce 2.6 or higher
- Fixed cart translation
- Fixed coupons with multiple products
- Fixed coupon with multiple products
- Tested and confirmed working on WordPress 4.6.1 and Polylang 2.0.4
0.27
- Updated TranslationsDownloader to fetch languages files from woocommerce translation project
- Fixed Issue #12 : Wrong Return URL after Payment
- Fixed Issue #46 : PLugin is not activated when wordpress multisite is enabled
- Fixed Issue #26 : variation product and stock sync with language
- Fixed Issue #35 : Error Message: The plugin can not function correctly
- Fixed Issue #16 : Catchable fatal error: Order List on Dashboard getProductTranslationByObject() is being given a Boolean instead of an WC_Product Object
- Fixed Issue #42 : pll_get_post not defined error
- Fixed Issue #43 : Call to undefined function Hyyan\WPI\pll_default_language()
- Fixed Issue #44 : PLL()->model->get_translations is deprecated
- Fixed Issue #45 : Fatal error: Call to undefined function Hyyan\WPI\pll_get_post_language()
0.25
- Add the ability to handle the locale code of Paypal checkout
- Fixed locale for emails that are triggered by a Paypal IPN message
- Fixed fields locker is not working in Firefox browser
0.24
- Added support for Layered Nav Widget
- Added support for endpoints translation
- Fixed products are duplicated when shop page is set as front page
- Fixed Unable to open order details after 0.20 upgrade
- Fixed translations links are not hidden in the order page
- Fixed email is not translated when complete button is used in orders table
- General code improvements
0.23
- Added support for Woocommerce search widget @see Duplicated search result
- Fixed translation downloader tries to download woo translations for en_US locale
- Fixed wrong product duplicate behavior
0.22
- Added Translation Downloader to auto download woocommerce translation files when a new polylang language is add
- Added Arabic translation
- Fixed translation links are hidden in posts page
- General code improvements
0.21
- Added admin interface to allow user to control plugin features
- Added link for every attribute to search for its translation in the polylang strings table
- Added generic fields locker
- Added POT file for translation
- Fixed product_type is not synced in 0.20 version
- General code improvements
0.20
- Added the ability to sync total_sales when stock value is changed
- Added the ability to combine product report with its translation
- Added the ability to combine category report with its translation
- Fixed database error in sales_be_category reports
- Fixed Orders Interface to use the current user language instead of the order language
0.19
- Added the ability to set the write permalinks that can work with polylang if the default woocomerce permalinks are used
0.18
- Added basic support for reports (filter by language)
- General fixes
0.17.2
- Fixed issue#2 (https://github.com/hyyan/woo-poly-integration/issues/2)
0.17.1
- Removed wrong php used statement
0.17
- Fixed (Polylang language switcher is disabled even if there is no variable products)
- Added the ability to sync product category custom fields
0.16
- Added support for product gallery translation
0.15
- Extended meta list to include _visibility
0.14
- Released in the wordpress repository
གཏུབ་རེིས།
སྒྲིག་འཇུག
Standard install
In your site Admin, go to Plugins, Add New and search for Hyyan WooCommerce Polylang Integration and install it.
Classical way
- Download the plugin as zip archive and then upload it to your wordpress plugins folder and
extract it there.
Composer way
- run composer command :
composer require hyyan/woo-poly-integration
In all cases please do ensure you have Polylang and WooCommerce activated and setup
before you Activate this plugin from your admin panel
Please note the getting started notes:
https://github.com/hyyan/woo-poly-integration/wiki/Getting-Started
FAQ
-
Does this work with other e-commerce plugins ?
-
No. This plugin is for polylang and woocommerce
-
Does this work with WPML plugin?
-
No. This plugin is for polylang and woocommerce
-
What do I need to do in my theme
-
Well , Nothing
-
Just make sure to setup your permalinks , and every thing will be fine , I promise
གདེང་འཇོག
བྱས་རྗེས་འཇོག་མཁན། & གསར་འབྱེད་པ།
“Hyyan WooCommerce Polylang Integration” is open source software. The following people have contributed to this plugin.
བྱས་རྗེས་འཇོག་མཁན།“Hyyan WooCommerce Polylang Integration” has been translated into 2 locales. Thank you to the translators for their contributions.
ཁྱེད་ཀྱི་སྐད་ཡིག་ནང་ལ་ “Hyyan WooCommerce Polylang Integration” ཡིག་སྒྱུར་བྱོས།
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.