- Werte zum Festlegen der Produktanzahl pro Seite. Über den Hook 'woobe_set_per_page_values': (Premium-Version)
add_filter('woobe_set_per_page_values', function($add) {
return '10,30,100,150,200';
});
Seien Sie vorsichtig mit großen Werten (Speicherüberlauf)!
-
add_filter('woobe_set_per_page_value', function ($value) {
return 50;
});
Legt die Anzahl der Produkte im Produkteditor (Products Editor) fest, hat die höchste Priorität
- Tabs für bestimmte Benutzer/Rollen ausschließen. Über den Hook 'woobe_show_tabs':
add_filter('woobe_show_tabs', function ($show, $slug) {
$rules = array('settings', 'meta', 'info');
if (!current_user_can('administrator') AND in_array($slug, $rules)) {
$show = false;
}
return $show;
}, 99, 2);
- Kindbegriffe in die Filterergebnisse einbeziehen. Standardmäßig werden beim Filtern nach einem Begriff nur Produkte mit genau diesem ausgewählten Begriff gefunden, andere Produkte hingegen nicht, selbst wenn sie einen Kindbegriff dieses ausgewählten übergeordneten Begriffs besitzen. Über den Hook 'woobe_filter_include_children':
add_filter('woobe_filter_include_children', function($include, $tax) {
$alow = ['product_cat', 'pa_color'];
if (in_array($tax, $alow)) {
$include = true;
}
return $include;
}, 10, 2);
- Die Möglichkeit zur Bearbeitung von Feldern je nach Benutzer/Rolle steuern. Über den Hook 'woobe_user_can_edit':
add_filter('woobe_user_can_edit', function($is_forbidden, $field_key, $shop_manager_visibility_array) {
$user = wp_get_current_user();
//print_r($shop_manager_visibility_array);
if (in_array('author', (array) $user->roles)) {
if ($field_key == 'sku') {
$is_forbidden = 1;
}
}
return $is_forbidden;
}, 10, 3);
- Möglichkeit, mit dem neuen Wert eines Felds beliebige benutzerdefinierte Operationen vor dessen Aktualisierung durchzuführen. Über den Hook 'woobe_before_update_product_field':
add_filter('woobe_before_update_product_field', function($value, $product_id, $field_key) {
//$condition= your code here
//example
if ($field_key === 'post_title' AND $condition) {
$value .= " Some text";
}
return $value;
}, 10, 3);
- Der Hook woobe_storage_type (ab v.2.0.8/1.0.8) hilft in Fällen, in denen es Probleme mit Transients auf dem Server gibt und das Filtern von Produkten nicht funktioniert; er erlaubt es, Transients als Filter-Speicher festzulegen
add_filter('woobe_storage_type', function($type) {
return 'option';//option, transient
});
- Der Hook 'woobe_product_statuses' - erlaubt es, weitere Produktstatus hinzuzufügen (ab v.2.0.8.1/1.0.8.1)
add_filter('woobe_product_statuses', function($statuses) {
$statuses['archive'] = 'Archive';
return $statuses;
});
- Der Hook 'woobe_users_args' erlaubt es, Benutzer nach benutzerdefinierten Rollen zu holen, zum Beispiel 'vendors'. Standardmäßig ist es 'authors' (ab v.2.0.9/1.0.9)
add_filter('woobe_users_args', function ($args) {
return array('fields' => array('ID', 'display_name'), 'who' => 'vendors');
});

- Der Hook 'woobe_new_product_status', mit dem festgelegt werden kann, welchen Status von BEAR neu erstellte Produkte erhalten: (ab v.2.0.9/1.0.9)
add_filter('woobe_new_product_status', function ($status) { return 'publish'; });
- Der Hook 'woobe_stock_quantity_dependency'. Wird er auf FALSE gesetzt, wird beim Ändern des Lagerbestands auf einen positiven Wert das Feld 'manage_stock' nicht mehr automatisch geändert. Standardmäßig ist er TRUE.
add_filter('woobe_stock_quantity_dependency', function ($status) {
return false;
});
- Der Hook 'woobe_bulkedit_taxonomies'. Nützlich, wenn der Shop Tausende von Taxonomien hat, um lange Ladezeiten im Tab Bulk-Bearbeitung (Bulk Edit) zu vermeiden. Beispiel: Produktkategorien nicht anzeigen: (ab v.2.0.9/1.0.9)
add_filter('woobe_bulkedit_taxonomies', function ($taxonomy_objects) {
if (isset($taxonomy_objects['product_cat'])) {
unset($taxonomy_objects['product_cat']);
}
return $taxonomy_objects;
});
- Der Hook 'woobe_filter_taxonomies'. Nützlich, wenn der Shop Tausende von Taxonomien hat, um lange Ladezeiten im Tab Filter (Filters) zu vermeiden. Beispiel: Produktkategorien nicht anzeigen: (ab v.2.0.9/1.0.9)
add_filter('woobe_filter_taxonomies', function ($taxonomy_objects) {
if (isset($taxonomy_objects['product_cat'])) {
unset($taxonomy_objects['product_cat']);
}
return $taxonomy_objects;
});
- Der Hook 'woobe_wpml_sync_prices' erlaubt es, für alle WPML-Sprachen denselben Angebots- und Regulären Preis zu übernehmen
add_filter('woobe_wpml_sync_prices', function ($do) {
return true;
});
- "weight", "length", "width", "height" - das funktioniert jetzt auch für Variationen. Der Hook (ab v.2.1.3), der dies ermöglicht, ist: woobe_filter_consider_variation_dimensions, standardmäßig true. Geben Sie false zurück, berücksichtigen diese Filter die Werte der Variationen nicht:
add_filter('woobe_filter_consider_variation_dimensions', function ($do) {
return false;
});
- Hook (ab v.2.1.3) woobe_new_variation_product_status - legt den Standardstatus der Produktvariation fest:
add_filter('woobe_new_variation_product_status', function ($status) {
return 'private';
});
- Der Hook 'woobe_use_kses_for_page_field' - vermeidet das von omc123 gemeldete "Aktualisieren eines Zeichens anstelle des Symbols" https://wordpress.org/support/topic/it-updates-in-stead-of-the-symbol-in-wordpress-editor/
- Die von krixxsw vorgeschlagenen Hooks 'woobe_on_sale_from_set_day' und 'woobe_on_sale_to_set_day' https://share.pluginus.net/image/i20230922153100.png erlauben es, den zeitlichen Beginn/das Ende des Angebots zu steuern: false - 00:00:00, true - 23:59:59
- Der von carlosdm vorgeschlagene Hook 'woobe_settings_key_options' - https://pluginus.net/support/topic/same-configuration-for-all-users/ erlaubt es, für alle Benutzer dieselbe Konfiguration zu verwenden
add_filter('woobe_settings_key_options', function ($id) {
return "for_all";
});
- Der von Luigi Pulcini vorgeschlagene Hook 'woobe_wrap_field_val' https://pluginus.net/support/topic/add-filter-to-wrap_field_val-method/ erlaubt es, den Inhalt einer Spalte für benutzerdefinierte Felder anzupassen
- Hook (ab v.2.1.4.6) 'woobe_export_cut_empty_variations' - erlaubt es, nicht vorrätige Produktvariationen vom Export auszuschließen
add_filter('woobe_export_cut_empty_variations', function ($type) {
return true;
});
- Hook (ab v.2.1.4.6) 'woobe_export_product_fields_answer' - für die Manipulation der Exportdaten

- Funktion: Sie können jetzt eine Datei woobe.css im Ordner Ihres aktuellen WordPress-Themes anlegen, um das Erscheinungsbild des BEAR-Admin-Panels vollständig anzupassen. Beispiel:
/* sticky position of chekbox, preview img, title */
#advanced-table {
overflow: auto;
}
#advanced-table_wrapper .dataTables_scroll .scroll-wrapper .dataTables_scrollBody table tbody tr td[data-field=__checker],
#advanced-table_wrapper .dataTables_scroll .scroll-wrapper .dataTables_scrollBody table tbody tr td[data-field=_thumbnail_id],
#advanced-table_wrapper .dataTables_scroll .scroll-wrapper .dataTables_scrollBody table tbody tr td[data-field=post_title]
{
position: sticky;
top: 0;
left: 0;
z-index: 1;
background: #fff;
}
#advanced-table_wrapper .dataTables_scroll .scroll-wrapper .dataTables_scrollBody table tbody tr td[data-field=__checker] {
left: -1px;
}
#advanced-table_wrapper .dataTables_scroll .scroll-wrapper .dataTables_scrollBody table tbody tr td[data-field=_thumbnail_id]{
left:26px;
}
#advanced-table_wrapper .dataTables_scroll .scroll-wrapper .dataTables_scrollBody table tbody tr td[data-field=post_title]{
left:90px;
}
- Sequentielle SKUs in Bulk erzeugen
- Der Hook woobe_use_cache_flush - bevor die Produkttabelle gezeichnet wird, leert BEAR den Objekt-Cache, damit die Zeilen die aktuellen Daten anzeigen statt Werte, die vor Ihrer letzten Bearbeitung zwischengespeichert wurden. Auf einer Website mit persistentem Objekt-Cache - Redis, Memcached - leert dieser Flush den Cache für die gesamte Website, nicht nur für Produkte, und jeder Besucher zahlt dafür, während sich der Cache wieder füllt. Wenn Ihr Shop einen persistenten Objekt-Cache verwendet und sich der Editor-Bildschirm träge anfühlt, oder Sie bemerken, dass die Website nach der Nutzung von BEAR langsamer wird, schalten Sie den Flush aus:
add_filter( 'woobe_use_cache_flush', '__return_false' );
Der Kompromiss: Die Tabelle kann gelegentlich einen Wert von vor Ihrer letzten Änderung anzeigen. Ein Neuladen der Seite behebt das, und die Daten selbst sind davon nie betroffen - nur das, was Sie sehen.
- ...