Version Description
- 2021-06-28 =
- Dev: Add
facebook_for_woocommerce_allow_full_batch_api_sync
filter to allow opt-out full batch API sync, to avoid possible performance issues on large sites
- Dev: Add
Download this release
Release Info
Developer | automattic |
Plugin | Facebook for WooCommerce |
Version | 2.6.1 |
Comparing to | |
See all releases |
Code changes from version 2.6.0 to 2.6.1
- changelog.txt +4 -1
- facebook-commerce.php +28 -14
- facebook-for-woocommerce.php +2 -2
- i18n/languages/facebook-for-woocommerce.pot +59 -53
- includes/AJAX.php +5 -0
- includes/Admin/Settings_Screens/Product_Sync.php +0 -2
- includes/Handlers/Connection.php +8 -1
- readme.txt +5 -2
- vendor/autoload.php +1 -1
- vendor/composer/autoload_real.php +4 -4
- vendor/composer/autoload_static.php +3 -3
changelog.txt
CHANGED
@@ -1,6 +1,9 @@
|
|
1 |
*** Facebook for WooCommerce Changelog ***
|
2 |
|
3 |
-
2021-06-
|
|
|
|
|
|
|
4 |
* Fix – Add cron heartbeat and use to offload feed generation from init / admin_init (performance) #1953
|
5 |
* Fix – Clean up background sync options (performance) #1962
|
6 |
* Dev – Add tracker props to understand usage of feed-based sync and other FB business config options #1972
|
1 |
*** Facebook for WooCommerce Changelog ***
|
2 |
|
3 |
+
2021-06-28 - version 2.6.1
|
4 |
+
* Dev: Add `facebook_for_woocommerce_allow_full_batch_api_sync` filter to allow opt-out full batch API sync, to avoid possible performance issues on large sites
|
5 |
+
|
6 |
+
2021-06-10 - version 2.6.0
|
7 |
* Fix – Add cron heartbeat and use to offload feed generation from init / admin_init (performance) #1953
|
8 |
* Fix – Clean up background sync options (performance) #1962
|
9 |
* Dev – Add tracker props to understand usage of feed-based sync and other FB business config options #1972
|
facebook-commerce.php
CHANGED
@@ -112,7 +112,6 @@ class WC_Facebookcommerce_Integration extends WC_Integration {
|
|
112 |
/** @var string custom taxonomy FB product set ID */
|
113 |
const FB_PRODUCT_SET_ID = 'fb_product_set_id';
|
114 |
|
115 |
-
|
116 |
/** @var string|null the configured product catalog ID */
|
117 |
public $product_catalog_id;
|
118 |
|
@@ -785,26 +784,41 @@ class WC_Facebookcommerce_Integration extends WC_Integration {
|
|
785 |
return $product_item_ids;
|
786 |
}
|
787 |
|
788 |
-
|
789 |
/**
|
790 |
-
* Gets the total of published products.
|
791 |
*
|
792 |
* @return int
|
793 |
*/
|
794 |
public function get_product_count() {
|
|
|
|
|
|
|
795 |
|
796 |
-
|
797 |
-
|
798 |
-
|
799 |
-
|
800 |
-
|
801 |
-
|
802 |
-
|
803 |
-
|
804 |
-
|
805 |
-
|
806 |
|
807 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
808 |
}
|
809 |
|
810 |
|
112 |
/** @var string custom taxonomy FB product set ID */
|
113 |
const FB_PRODUCT_SET_ID = 'fb_product_set_id';
|
114 |
|
|
|
115 |
/** @var string|null the configured product catalog ID */
|
116 |
public $product_catalog_id;
|
117 |
|
784 |
return $product_item_ids;
|
785 |
}
|
786 |
|
|
|
787 |
/**
|
788 |
+
* Gets the total number of published products.
|
789 |
*
|
790 |
* @return int
|
791 |
*/
|
792 |
public function get_product_count() {
|
793 |
+
$product_counts = wp_count_posts( 'product' );
|
794 |
+
return $product_counts->publish;
|
795 |
+
}
|
796 |
|
797 |
+
/**
|
798 |
+
* Should full batch-API sync be allowed?
|
799 |
+
*
|
800 |
+
* May be used to disable various full sync UI/APIs to avoid performance impact.
|
801 |
+
*
|
802 |
+
* @return boolean True if full batch sync is safe.
|
803 |
+
* @since 2.6.1
|
804 |
+
*/
|
805 |
+
public function allow_full_batch_api_sync() {
|
806 |
+
$default_allow_sync = true;
|
807 |
|
808 |
+
/**
|
809 |
+
* Allow full batch api sync to be enabled or disabled.
|
810 |
+
*
|
811 |
+
* @param bool $allow Default value - is full batch sync allowed?
|
812 |
+
* @param int $product_count Number of products in store.
|
813 |
+
*
|
814 |
+
* @return boolean True if full batch sync is safe.
|
815 |
+
* @since 2.6.1
|
816 |
+
*/
|
817 |
+
return apply_filters(
|
818 |
+
'facebook_for_woocommerce_allow_full_batch_api_sync',
|
819 |
+
$default_allow_sync,
|
820 |
+
$this->get_product_count()
|
821 |
+
);
|
822 |
}
|
823 |
|
824 |
|
facebook-for-woocommerce.php
CHANGED
@@ -10,7 +10,7 @@
|
|
10 |
* Description: Grow your business on Facebook! Use this official plugin to help sell more of your products using Facebook. After completing the setup, you'll be ready to create ads that promote your products and you can also create a shop section on your Page where customers can browse your products on Facebook.
|
11 |
* Author: Facebook
|
12 |
* Author URI: https://www.facebook.com/
|
13 |
-
* Version: 2.6.
|
14 |
* Text Domain: facebook-for-woocommerce
|
15 |
* WC requires at least: 3.5.0
|
16 |
* WC tested up to: 5.7.0
|
@@ -31,7 +31,7 @@ class WC_Facebook_Loader {
|
|
31 |
/**
|
32 |
* @var string the plugin version. This must be in the main plugin file to be automatically bumped by Woorelease.
|
33 |
*/
|
34 |
-
const PLUGIN_VERSION = '2.6.
|
35 |
|
36 |
// Minimum PHP version required by this plugin.
|
37 |
const MINIMUM_PHP_VERSION = '7.0.0';
|
10 |
* Description: Grow your business on Facebook! Use this official plugin to help sell more of your products using Facebook. After completing the setup, you'll be ready to create ads that promote your products and you can also create a shop section on your Page where customers can browse your products on Facebook.
|
11 |
* Author: Facebook
|
12 |
* Author URI: https://www.facebook.com/
|
13 |
+
* Version: 2.6.1
|
14 |
* Text Domain: facebook-for-woocommerce
|
15 |
* WC requires at least: 3.5.0
|
16 |
* WC tested up to: 5.7.0
|
31 |
/**
|
32 |
* @var string the plugin version. This must be in the main plugin file to be automatically bumped by Woorelease.
|
33 |
*/
|
34 |
+
const PLUGIN_VERSION = '2.6.1'; // WRCS: DEFINED_VERSION.
|
35 |
|
36 |
// Minimum PHP version required by this plugin.
|
37 |
const MINIMUM_PHP_VERSION = '7.0.0';
|
i18n/languages/facebook-for-woocommerce.pot
CHANGED
@@ -2,10 +2,10 @@
|
|
2 |
# This file is distributed under the same license as the Facebook for WooCommerce package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Facebook for WooCommerce 2.6.
|
6 |
"Report-Msgid-Bugs-To: "
|
7 |
"https://woocommerce.com/my-account/marketplace-ticket-form/\n"
|
8 |
-
"POT-Creation-Date: 2021-06-
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=utf-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -107,69 +107,69 @@ msgstr ""
|
|
107 |
msgid "Facebook for WooCommerce"
|
108 |
msgstr ""
|
109 |
|
110 |
-
#: facebook-commerce.php:
|
111 |
msgid "Facebook Commerce and Dynamic Ads (Pixel) Extension"
|
112 |
msgstr ""
|
113 |
|
114 |
-
#: facebook-commerce.php:
|
115 |
msgid "Facebook ID:"
|
116 |
msgstr ""
|
117 |
|
118 |
-
#: facebook-commerce.php:
|
119 |
msgid "Variant IDs:"
|
120 |
msgstr ""
|
121 |
|
122 |
-
#: facebook-commerce.php:
|
123 |
msgid "Reset Facebook metadata"
|
124 |
msgstr ""
|
125 |
|
126 |
-
#: facebook-commerce.php:
|
127 |
msgid "Delete product(s) on Facebook"
|
128 |
msgstr ""
|
129 |
|
130 |
-
#: facebook-commerce.php:
|
131 |
msgid "This product is not yet synced to Facebook."
|
132 |
msgstr ""
|
133 |
|
134 |
-
#: facebook-commerce.php:
|
135 |
msgid "Nothing to update for product group for %1$s"
|
136 |
msgstr ""
|
137 |
|
138 |
-
#: facebook-commerce.php:
|
139 |
#. translators: Placeholders %1$s - original error message from Facebook API
|
140 |
msgid "There was an issue connecting to the Facebook API: %1$s"
|
141 |
msgstr ""
|
142 |
|
143 |
-
#: facebook-commerce.php:
|
144 |
msgid "Your connection has expired."
|
145 |
msgstr ""
|
146 |
|
147 |
-
#: facebook-commerce.php:
|
148 |
msgid ""
|
149 |
"Please click Manage connection > Advanced Options > Update Token to refresh "
|
150 |
"your connection to Facebook."
|
151 |
msgstr ""
|
152 |
|
153 |
-
#: facebook-commerce.php:
|
154 |
#. translators: Placeholders %s - error message
|
155 |
msgid "There was an error trying to sync the products to Facebook. %s"
|
156 |
msgstr ""
|
157 |
|
158 |
-
#: facebook-commerce.php:
|
159 |
msgid "Product sync is disabled."
|
160 |
msgstr ""
|
161 |
|
162 |
-
#: facebook-commerce.php:
|
163 |
msgid "The plugin is not configured or the Catalog ID is missing."
|
164 |
msgstr ""
|
165 |
|
166 |
-
#: facebook-commerce.php:
|
167 |
msgid ""
|
168 |
"A product sync is in progress. Please wait until the sync finishes before "
|
169 |
"starting a new one."
|
170 |
msgstr ""
|
171 |
|
172 |
-
#: facebook-commerce.php:
|
173 |
msgid ""
|
174 |
"We've detected that your Facebook Product Catalog is no longer valid. This "
|
175 |
"may happen if it was deleted, but could also be a temporary error. If the "
|
@@ -177,33 +177,33 @@ msgid ""
|
|
177 |
"and setup the plugin again."
|
178 |
msgstr ""
|
179 |
|
180 |
-
#: facebook-commerce.php:
|
181 |
msgid "We couldn't create the feed or upload the product information."
|
182 |
msgstr ""
|
183 |
|
184 |
-
#: facebook-commerce.php:
|
185 |
msgid "Hi! We're here to answer any questions you may have."
|
186 |
msgstr ""
|
187 |
|
188 |
-
#: facebook-commerce.php:
|
189 |
msgid "Facebook for WooCommerce error:"
|
190 |
msgstr ""
|
191 |
|
192 |
-
#: facebook-commerce.php:
|
193 |
msgid ""
|
194 |
"There was an error trying to retrieve information about the Facebook page: "
|
195 |
"%s"
|
196 |
msgstr ""
|
197 |
|
198 |
-
#: facebook-commerce.php:
|
199 |
msgid "Get started with Messenger Customer Chat"
|
200 |
msgstr ""
|
201 |
|
202 |
-
#: facebook-commerce.php:
|
203 |
msgid "Get started with Instagram Shopping"
|
204 |
msgstr ""
|
205 |
|
206 |
-
#: facebook-commerce.php:
|
207 |
#. translators: Placeholders %1$s - original error message from Facebook API
|
208 |
msgid "There was an issue connecting to the Facebook API: %s"
|
209 |
msgstr ""
|
@@ -240,17 +240,23 @@ msgstr ""
|
|
240 |
msgid "Order not found"
|
241 |
msgstr ""
|
242 |
|
243 |
-
#: includes/AJAX.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
244 |
msgid "Go to Settings"
|
245 |
msgstr ""
|
246 |
|
247 |
-
#: includes/AJAX.php:
|
248 |
#: includes/Admin/Product_Categories.php:118
|
249 |
#: includes/Admin/Settings_Screens/Product_Sync.php:157 includes/Admin.php:391
|
250 |
msgid "Cancel"
|
251 |
msgstr ""
|
252 |
|
253 |
-
#: includes/AJAX.php:
|
254 |
#. translators: Placeholder %s - <br/> tag
|
255 |
msgid ""
|
256 |
"This product belongs to a category or tag that is excluded from the "
|
@@ -259,7 +265,7 @@ msgid ""
|
|
259 |
"or click Cancel and update the product's category / tag assignments."
|
260 |
msgstr ""
|
261 |
|
262 |
-
#: includes/AJAX.php:
|
263 |
msgid ""
|
264 |
"One or more of the selected products belongs to a category or tag that is "
|
265 |
"excluded from the Facebook catalog sync. To sync these products to "
|
@@ -267,11 +273,11 @@ msgid ""
|
|
267 |
"settings."
|
268 |
msgstr ""
|
269 |
|
270 |
-
#: includes/AJAX.php:
|
271 |
msgid "Exclude Products"
|
272 |
msgstr ""
|
273 |
|
274 |
-
#: includes/AJAX.php:
|
275 |
#. translators: Placeholder %s - <br/> tags
|
276 |
msgid ""
|
277 |
"The categories and/or tags that you have selected to exclude from sync "
|
@@ -316,7 +322,7 @@ msgid ""
|
|
316 |
msgstr ""
|
317 |
|
318 |
#: includes/Admin/Product_Categories.php:232
|
319 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
320 |
msgid "Default Google product category"
|
321 |
msgstr ""
|
322 |
|
@@ -397,8 +403,8 @@ msgstr ""
|
|
397 |
#: includes/Admin/Settings.php:126
|
398 |
#: includes/Admin/Settings_Screens/Product_Sync.php:42
|
399 |
#: includes/Admin/Settings_Screens/Product_Sync.php:43
|
400 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
401 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
402 |
msgid "Product sync"
|
403 |
msgstr ""
|
404 |
|
@@ -610,62 +616,62 @@ msgid ""
|
|
610 |
"Are you sure you want to proceed?"
|
611 |
msgstr ""
|
612 |
|
613 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
614 |
msgid "Sync products"
|
615 |
msgstr ""
|
616 |
|
617 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
618 |
msgid "Enable product sync"
|
619 |
msgstr ""
|
620 |
|
621 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
622 |
msgid "Exclude categories from sync"
|
623 |
msgstr ""
|
624 |
|
625 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
626 |
msgid "Products in one or more of these categories will not sync to Facebook."
|
627 |
msgstr ""
|
628 |
|
629 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
630 |
msgid "Search for a product category…"
|
631 |
msgstr ""
|
632 |
|
633 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
634 |
msgid "Exclude tags from sync"
|
635 |
msgstr ""
|
636 |
|
637 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
638 |
msgid "Products with one or more of these tags will not sync to Facebook."
|
639 |
msgstr ""
|
640 |
|
641 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
642 |
msgid "Search for a product tag…"
|
643 |
msgstr ""
|
644 |
|
645 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
646 |
msgid "Product description sync"
|
647 |
msgstr ""
|
648 |
|
649 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
650 |
msgid "Choose which product description to display in the Facebook catalog."
|
651 |
msgstr ""
|
652 |
|
653 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
654 |
msgid "Standard description"
|
655 |
msgstr ""
|
656 |
|
657 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
658 |
msgid "Short description"
|
659 |
msgstr ""
|
660 |
|
661 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
662 |
msgid ""
|
663 |
"Choose a default Google product category for your products. Defaults can "
|
664 |
"also be set for product categories. Products need at least two category "
|
665 |
"levels defined for tax to be correctly applied."
|
666 |
msgstr ""
|
667 |
|
668 |
-
#: includes/Admin/Settings_Screens/Product_Sync.php:
|
669 |
#. translators: Placeholders: %1$s - <a> tag, %2$s - </a> tag
|
670 |
msgid "Please %1$sconnect to Facebook%2$s to enable and manage product sync."
|
671 |
msgstr ""
|
@@ -958,29 +964,29 @@ msgstr ""
|
|
958 |
msgid "Other"
|
959 |
msgstr ""
|
960 |
|
961 |
-
#: includes/Handlers/Connection.php:
|
962 |
msgid "Connection successful!"
|
963 |
msgstr ""
|
964 |
|
965 |
-
#: includes/Handlers/Connection.php:
|
966 |
msgid "You do not have permission to uninstall Facebook Business Extension."
|
967 |
msgstr ""
|
968 |
|
969 |
-
#: includes/Handlers/Connection.php:
|
970 |
msgid "Disconnection successful."
|
971 |
msgstr ""
|
972 |
|
973 |
-
#: includes/Handlers/Connection.php:
|
974 |
#. translators: Placeholders: %s - API error message
|
975 |
msgid "Could not retrieve page access data. %s"
|
976 |
msgstr ""
|
977 |
|
978 |
-
#: includes/Handlers/Connection.php:
|
979 |
#. translators: Placeholders: %s - Facebook page ID
|
980 |
msgid "Page %s not authorized."
|
981 |
msgstr ""
|
982 |
|
983 |
-
#: includes/Handlers/Connection.php:
|
984 |
msgid "You do not have permission to finish App Store login."
|
985 |
msgstr ""
|
986 |
|
2 |
# This file is distributed under the same license as the Facebook for WooCommerce package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Facebook for WooCommerce 2.6.1\n"
|
6 |
"Report-Msgid-Bugs-To: "
|
7 |
"https://woocommerce.com/my-account/marketplace-ticket-form/\n"
|
8 |
+
"POT-Creation-Date: 2021-06-28 02:51:02+00:00\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=utf-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
107 |
msgid "Facebook for WooCommerce"
|
108 |
msgstr ""
|
109 |
|
110 |
+
#: facebook-commerce.php:229
|
111 |
msgid "Facebook Commerce and Dynamic Ads (Pixel) Extension"
|
112 |
msgstr ""
|
113 |
|
114 |
+
#: facebook-commerce.php:641
|
115 |
msgid "Facebook ID:"
|
116 |
msgstr ""
|
117 |
|
118 |
+
#: facebook-commerce.php:649
|
119 |
msgid "Variant IDs:"
|
120 |
msgstr ""
|
121 |
|
122 |
+
#: facebook-commerce.php:667
|
123 |
msgid "Reset Facebook metadata"
|
124 |
msgstr ""
|
125 |
|
126 |
+
#: facebook-commerce.php:672
|
127 |
msgid "Delete product(s) on Facebook"
|
128 |
msgstr ""
|
129 |
|
130 |
+
#: facebook-commerce.php:680
|
131 |
msgid "This product is not yet synced to Facebook."
|
132 |
msgstr ""
|
133 |
|
134 |
+
#: facebook-commerce.php:1507
|
135 |
msgid "Nothing to update for product group for %1$s"
|
136 |
msgstr ""
|
137 |
|
138 |
+
#: facebook-commerce.php:1901
|
139 |
#. translators: Placeholders %1$s - original error message from Facebook API
|
140 |
msgid "There was an issue connecting to the Facebook API: %1$s"
|
141 |
msgstr ""
|
142 |
|
143 |
+
#: facebook-commerce.php:2237
|
144 |
msgid "Your connection has expired."
|
145 |
msgstr ""
|
146 |
|
147 |
+
#: facebook-commerce.php:2237
|
148 |
msgid ""
|
149 |
"Please click Manage connection > Advanced Options > Update Token to refresh "
|
150 |
"your connection to Facebook."
|
151 |
msgstr ""
|
152 |
|
153 |
+
#: facebook-commerce.php:2244
|
154 |
#. translators: Placeholders %s - error message
|
155 |
msgid "There was an error trying to sync the products to Facebook. %s"
|
156 |
msgstr ""
|
157 |
|
158 |
+
#: facebook-commerce.php:2267 facebook-commerce.php:2440
|
159 |
msgid "Product sync is disabled."
|
160 |
msgstr ""
|
161 |
|
162 |
+
#: facebook-commerce.php:2274 facebook-commerce.php:2447
|
163 |
msgid "The plugin is not configured or the Catalog ID is missing."
|
164 |
msgstr ""
|
165 |
|
166 |
+
#: facebook-commerce.php:2297
|
167 |
msgid ""
|
168 |
"A product sync is in progress. Please wait until the sync finishes before "
|
169 |
"starting a new one."
|
170 |
msgstr ""
|
171 |
|
172 |
+
#: facebook-commerce.php:2309 facebook-commerce.php:2461
|
173 |
msgid ""
|
174 |
"We've detected that your Facebook Product Catalog is no longer valid. This "
|
175 |
"may happen if it was deleted, but could also be a temporary error. If the "
|
177 |
"and setup the plugin again."
|
178 |
msgstr ""
|
179 |
|
180 |
+
#: facebook-commerce.php:2485
|
181 |
msgid "We couldn't create the feed or upload the product information."
|
182 |
msgstr ""
|
183 |
|
184 |
+
#: facebook-commerce.php:2953
|
185 |
msgid "Hi! We're here to answer any questions you may have."
|
186 |
msgstr ""
|
187 |
|
188 |
+
#: facebook-commerce.php:3320
|
189 |
msgid "Facebook for WooCommerce error:"
|
190 |
msgstr ""
|
191 |
|
192 |
+
#: facebook-commerce.php:3402
|
193 |
msgid ""
|
194 |
"There was an error trying to retrieve information about the Facebook page: "
|
195 |
"%s"
|
196 |
msgstr ""
|
197 |
|
198 |
+
#: facebook-commerce.php:3453
|
199 |
msgid "Get started with Messenger Customer Chat"
|
200 |
msgstr ""
|
201 |
|
202 |
+
#: facebook-commerce.php:3454
|
203 |
msgid "Get started with Instagram Shopping"
|
204 |
msgstr ""
|
205 |
|
206 |
+
#: facebook-commerce.php:3689
|
207 |
#. translators: Placeholders %1$s - original error message from Facebook API
|
208 |
msgid "There was an issue connecting to the Facebook API: %s"
|
209 |
msgstr ""
|
240 |
msgid "Order not found"
|
241 |
msgstr ""
|
242 |
|
243 |
+
#: includes/AJAX.php:219
|
244 |
+
msgid ""
|
245 |
+
"Full product sync disabled by filter hook "
|
246 |
+
"`facebook_for_woocommerce_allow_full_batch_api_sync`."
|
247 |
+
msgstr ""
|
248 |
+
|
249 |
+
#: includes/AJAX.php:342 includes/AJAX.php:410
|
250 |
msgid "Go to Settings"
|
251 |
msgstr ""
|
252 |
|
253 |
+
#: includes/AJAX.php:347 includes/AJAX.php:415 includes/AJAX.php:481
|
254 |
#: includes/Admin/Product_Categories.php:118
|
255 |
#: includes/Admin/Settings_Screens/Product_Sync.php:157 includes/Admin.php:391
|
256 |
msgid "Cancel"
|
257 |
msgstr ""
|
258 |
|
259 |
+
#: includes/AJAX.php:356
|
260 |
#. translators: Placeholder %s - <br/> tag
|
261 |
msgid ""
|
262 |
"This product belongs to a category or tag that is excluded from the "
|
265 |
"or click Cancel and update the product's category / tag assignments."
|
266 |
msgstr ""
|
267 |
|
268 |
+
#: includes/AJAX.php:422
|
269 |
msgid ""
|
270 |
"One or more of the selected products belongs to a category or tag that is "
|
271 |
"excluded from the Facebook catalog sync. To sync these products to "
|
273 |
"settings."
|
274 |
msgstr ""
|
275 |
|
276 |
+
#: includes/AJAX.php:475
|
277 |
msgid "Exclude Products"
|
278 |
msgstr ""
|
279 |
|
280 |
+
#: includes/AJAX.php:490
|
281 |
#. translators: Placeholder %s - <br/> tags
|
282 |
msgid ""
|
283 |
"The categories and/or tags that you have selected to exclude from sync "
|
322 |
msgstr ""
|
323 |
|
324 |
#: includes/Admin/Product_Categories.php:232
|
325 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:337
|
326 |
msgid "Default Google product category"
|
327 |
msgstr ""
|
328 |
|
403 |
#: includes/Admin/Settings.php:126
|
404 |
#: includes/Admin/Settings_Screens/Product_Sync.php:42
|
405 |
#: includes/Admin/Settings_Screens/Product_Sync.php:43
|
406 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:180
|
407 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:283
|
408 |
msgid "Product sync"
|
409 |
msgstr ""
|
410 |
|
616 |
"Are you sure you want to proceed?"
|
617 |
msgstr ""
|
618 |
|
619 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:188
|
620 |
msgid "Sync products"
|
621 |
msgstr ""
|
622 |
|
623 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:288
|
624 |
msgid "Enable product sync"
|
625 |
msgstr ""
|
626 |
|
627 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:296
|
628 |
msgid "Exclude categories from sync"
|
629 |
msgstr ""
|
630 |
|
631 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:300
|
632 |
msgid "Products in one or more of these categories will not sync to Facebook."
|
633 |
msgstr ""
|
634 |
|
635 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:304
|
636 |
msgid "Search for a product category…"
|
637 |
msgstr ""
|
638 |
|
639 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:310
|
640 |
msgid "Exclude tags from sync"
|
641 |
msgstr ""
|
642 |
|
643 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:314
|
644 |
msgid "Products with one or more of these tags will not sync to Facebook."
|
645 |
msgstr ""
|
646 |
|
647 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:318
|
648 |
msgid "Search for a product tag…"
|
649 |
msgstr ""
|
650 |
|
651 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:324
|
652 |
msgid "Product description sync"
|
653 |
msgstr ""
|
654 |
|
655 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:327
|
656 |
msgid "Choose which product description to display in the Facebook catalog."
|
657 |
msgstr ""
|
658 |
|
659 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:330
|
660 |
msgid "Standard description"
|
661 |
msgstr ""
|
662 |
|
663 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:331
|
664 |
msgid "Short description"
|
665 |
msgstr ""
|
666 |
|
667 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:338
|
668 |
msgid ""
|
669 |
"Choose a default Google product category for your products. Defaults can "
|
670 |
"also be set for product categories. Products need at least two category "
|
671 |
"levels defined for tax to be correctly applied."
|
672 |
msgstr ""
|
673 |
|
674 |
+
#: includes/Admin/Settings_Screens/Product_Sync.php:384
|
675 |
#. translators: Placeholders: %1$s - <a> tag, %2$s - </a> tag
|
676 |
msgid "Please %1$sconnect to Facebook%2$s to enable and manage product sync."
|
677 |
msgstr ""
|
964 |
msgid "Other"
|
965 |
msgstr ""
|
966 |
|
967 |
+
#: includes/Handlers/Connection.php:323
|
968 |
msgid "Connection successful!"
|
969 |
msgstr ""
|
970 |
|
971 |
+
#: includes/Handlers/Connection.php:354
|
972 |
msgid "You do not have permission to uninstall Facebook Business Extension."
|
973 |
msgstr ""
|
974 |
|
975 |
+
#: includes/Handlers/Connection.php:364
|
976 |
msgid "Disconnection successful."
|
977 |
msgstr ""
|
978 |
|
979 |
+
#: includes/Handlers/Connection.php:429
|
980 |
#. translators: Placeholders: %s - API error message
|
981 |
msgid "Could not retrieve page access data. %s"
|
982 |
msgstr ""
|
983 |
|
984 |
+
#: includes/Handlers/Connection.php:443
|
985 |
#. translators: Placeholders: %s - Facebook page ID
|
986 |
msgid "Page %s not authorized."
|
987 |
msgstr ""
|
988 |
|
989 |
+
#: includes/Handlers/Connection.php:1386
|
990 |
msgid "You do not have permission to finish App Store login."
|
991 |
msgstr ""
|
992 |
|
includes/AJAX.php
CHANGED
@@ -214,6 +214,11 @@ class AJAX {
|
|
214 |
* @since 2.0.0
|
215 |
*/
|
216 |
public function sync_products() {
|
|
|
|
|
|
|
|
|
|
|
217 |
|
218 |
check_admin_referer( Product_Sync::ACTION_SYNC_PRODUCTS, 'nonce' );
|
219 |
|
214 |
* @since 2.0.0
|
215 |
*/
|
216 |
public function sync_products() {
|
217 |
+
// Allow opt-out of full batch-API sync, for example if store has a large number of products.
|
218 |
+
if ( ! facebook_for_woocommerce()->get_integration()->allow_full_batch_api_sync() ) {
|
219 |
+
wp_send_json_error( __( 'Full product sync disabled by filter hook `facebook_for_woocommerce_allow_full_batch_api_sync`.', 'facebook-for-woocommerce' ) );
|
220 |
+
return;
|
221 |
+
}
|
222 |
|
223 |
check_admin_referer( Product_Sync::ACTION_SYNC_PRODUCTS, 'nonce' );
|
224 |
|
includes/Admin/Settings_Screens/Product_Sync.php
CHANGED
@@ -174,9 +174,7 @@ class Product_Sync extends Admin\Abstract_Settings_Screen {
|
|
174 |
* @param array $field field data
|
175 |
*/
|
176 |
public function render_title( $field ) {
|
177 |
-
|
178 |
?>
|
179 |
-
|
180 |
<h2>
|
181 |
|
182 |
<?php esc_html_e( 'Product sync', 'facebook-for-woocommerce' ); ?>
|
174 |
* @param array $field field data
|
175 |
*/
|
176 |
public function render_title( $field ) {
|
|
|
177 |
?>
|
|
|
178 |
<h2>
|
179 |
|
180 |
<?php esc_html_e( 'Product sync', 'facebook-for-woocommerce' ); ?>
|
includes/Handlers/Connection.php
CHANGED
@@ -301,7 +301,14 @@ class Connection {
|
|
301 |
$this->update_system_user_id( $system_user_id );
|
302 |
$this->update_installation_data();
|
303 |
|
304 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
305 |
|
306 |
update_option( 'wc_facebook_has_connected_fbe_2', 'yes' );
|
307 |
update_option( 'wc_facebook_has_authorized_pages_read_engagement', 'yes' );
|
301 |
$this->update_system_user_id( $system_user_id );
|
302 |
$this->update_installation_data();
|
303 |
|
304 |
+
// Allow opt-out of full batch-API sync, for example if store has a large number of products.
|
305 |
+
if ( facebook_for_woocommerce()->get_integration()->allow_full_batch_api_sync() ) {
|
306 |
+
facebook_for_woocommerce()->get_products_sync_handler()->create_or_update_all_products();
|
307 |
+
}
|
308 |
+
else {
|
309 |
+
facebook_for_woocommerce()->log( 'Initial full product sync disabled by filter hook `facebook_for_woocommerce_allow_full_batch_api_sync`', 'facebook_for_woocommerce_connect' );
|
310 |
+
}
|
311 |
+
|
312 |
|
313 |
update_option( 'wc_facebook_has_connected_fbe_2', 'yes' );
|
314 |
update_option( 'wc_facebook_has_authorized_pages_read_engagement', 'yes' );
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: facebook, automattic, woothemes
|
|
3 |
Tags: facebook, shop, catalog, advertise, pixel, product
|
4 |
Requires at least: 4.4
|
5 |
Tested up to: 5.7
|
6 |
-
Stable tag: 2.6.
|
7 |
Requires PHP: 5.6 or greater
|
8 |
MySQL: 5.6 or greater
|
9 |
License: GPLv2 or later
|
@@ -39,7 +39,10 @@ When opening a bug on GitHub, please give us as many details as possible.
|
|
39 |
|
40 |
== Changelog ==
|
41 |
|
42 |
-
= 2.6.
|
|
|
|
|
|
|
43 |
* Fix – Add cron heartbeat and use to offload feed generation from init / admin_init (performance) #1953
|
44 |
* Fix – Clean up background sync options (performance) #1962
|
45 |
* Dev – Add tracker props to understand usage of feed-based sync and other FB business config options #1972
|
3 |
Tags: facebook, shop, catalog, advertise, pixel, product
|
4 |
Requires at least: 4.4
|
5 |
Tested up to: 5.7
|
6 |
+
Stable tag: 2.6.1
|
7 |
Requires PHP: 5.6 or greater
|
8 |
MySQL: 5.6 or greater
|
9 |
License: GPLv2 or later
|
39 |
|
40 |
== Changelog ==
|
41 |
|
42 |
+
= 2.6.1 - 2021-06-28 =
|
43 |
+
* Dev: Add `facebook_for_woocommerce_allow_full_batch_api_sync` filter to allow opt-out full batch API sync, to avoid possible performance issues on large sites
|
44 |
+
|
45 |
+
= 2.6.0 - 2021-06-10 =
|
46 |
* Fix – Add cron heartbeat and use to offload feed generation from init / admin_init (performance) #1953
|
47 |
* Fix – Clean up background sync options (performance) #1962
|
48 |
* Dev – Add tracker props to understand usage of feed-based sync and other FB business config options #1972
|
vendor/autoload.php
CHANGED
@@ -4,4 +4,4 @@
|
|
4 |
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
-
return
|
4 |
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
+
return ComposerAutoloaderInit3f790c8865bba7f592bf745823388190::getLoader();
|
vendor/composer/autoload_real.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
-
class
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
@@ -22,15 +22,15 @@ class ComposerAutoloaderInitf259fca39ad059a7a2ae6e49ea65d16c
|
|
22 |
return self::$loader;
|
23 |
}
|
24 |
|
25 |
-
spl_autoload_register(array('
|
26 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
27 |
-
spl_autoload_unregister(array('
|
28 |
|
29 |
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
30 |
if ($useStaticLoader) {
|
31 |
require_once __DIR__ . '/autoload_static.php';
|
32 |
|
33 |
-
call_user_func(\Composer\Autoload\
|
34 |
} else {
|
35 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
36 |
foreach ($map as $namespace => $path) {
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
+
class ComposerAutoloaderInit3f790c8865bba7f592bf745823388190
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
22 |
return self::$loader;
|
23 |
}
|
24 |
|
25 |
+
spl_autoload_register(array('ComposerAutoloaderInit3f790c8865bba7f592bf745823388190', 'loadClassLoader'), true, true);
|
26 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
27 |
+
spl_autoload_unregister(array('ComposerAutoloaderInit3f790c8865bba7f592bf745823388190', 'loadClassLoader'));
|
28 |
|
29 |
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
30 |
if ($useStaticLoader) {
|
31 |
require_once __DIR__ . '/autoload_static.php';
|
32 |
|
33 |
+
call_user_func(\Composer\Autoload\ComposerStaticInit3f790c8865bba7f592bf745823388190::getInitializer($loader));
|
34 |
} else {
|
35 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
36 |
foreach ($map as $namespace => $path) {
|
vendor/composer/autoload_static.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
-
class
|
8 |
{
|
9 |
public static $prefixLengthsPsr4 = array (
|
10 |
'S' =>
|
@@ -39,8 +39,8 @@ class ComposerStaticInitf259fca39ad059a7a2ae6e49ea65d16c
|
|
39 |
public static function getInitializer(ClassLoader $loader)
|
40 |
{
|
41 |
return \Closure::bind(function () use ($loader) {
|
42 |
-
$loader->prefixLengthsPsr4 =
|
43 |
-
$loader->prefixDirsPsr4 =
|
44 |
|
45 |
}, null, ClassLoader::class);
|
46 |
}
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
+
class ComposerStaticInit3f790c8865bba7f592bf745823388190
|
8 |
{
|
9 |
public static $prefixLengthsPsr4 = array (
|
10 |
'S' =>
|
39 |
public static function getInitializer(ClassLoader $loader)
|
40 |
{
|
41 |
return \Closure::bind(function () use ($loader) {
|
42 |
+
$loader->prefixLengthsPsr4 = ComposerStaticInit3f790c8865bba7f592bf745823388190::$prefixLengthsPsr4;
|
43 |
+
$loader->prefixDirsPsr4 = ComposerStaticInit3f790c8865bba7f592bf745823388190::$prefixDirsPsr4;
|
44 |
|
45 |
}, null, ClassLoader::class);
|
46 |
}
|