Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the rank-math domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vhosts/ocean-application.fr/site-ocean.ocean-application.fr/wp-includes/functions.php on line 6131

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the wp-asset-clean-up domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vhosts/ocean-application.fr/site-ocean.ocean-application.fr/wp-includes/functions.php on line 6131

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the pods domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vhosts/ocean-application.fr/site-ocean.ocean-application.fr/wp-includes/functions.php on line 6131

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the essential-addons-for-elementor-lite domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vhosts/ocean-application.fr/site-ocean.ocean-application.fr/wp-includes/functions.php on line 6131

Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the rank-math-pro domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vhosts/ocean-application.fr/site-ocean.ocean-application.fr/wp-includes/functions.php on line 6131
8194460''), $atts); $total_portfolio_count = wp_count_posts('portfolio')->publish; $categories = get_terms(array( 'taxonomy' => 'category', 'hide_empty' => true, 'pad_counts' => true, )); if (!empty($atts['categories'])) { $categories_to_display = explode(',', $atts['categories']); } else { $categories_to_display = array_map(function($category) { return $category->name; }, $categories); } usort($categories, function($a, $b) use ($categories_to_display) { return compare_categories($a, $b, $categories_to_display); }); return get_portfolio_category_filter_shortcode_output($total_portfolio_count, $categories, $categories_to_display); } function get_portfolio_category_filter_shortcode_output($total_portfolio_count, $categories, $categories_to_display) { $output = ''; $output .= ''; $output .= '' . ucfirst(__('tous nos projets', 'your-text-domain')) . ' (' . $total_portfolio_count . ') '; $output .= get_category_filter_html($categories, $categories_to_display); $output .= ''; return $output; } function compare_categories($a, $b, $categories_to_display) { $a_index = array_search($a->name, $categories_to_display); $b_index = array_search($b->name, $categories_to_display); if ($a_index === false && $b_index === false) { return 0; } elseif ($a_index === false) { return 1; } elseif ($b_index === false) { return -1; } else { return $a_index - $b_index; } } function get_category_filter_html($categories, $categories_to_display) { $output = ''; foreach ($categories as $category) { $formatted_name = mb_convert_case($category->name, MB_CASE_TITLE, "UTF-8"); if(in_array($category->name, $categories_to_display) && $category->count > 0){ $output .= ' | ' . $formatted_name . ' (' . $category->count . ') '; } } return $output; } add_shortcode('portfolio_category_filter', 'display_portfolio_category_filter_shortcode'); 30/01/2026 - Page 3 à 17 - Ocean communication

Actualités

Découvrez nos dernières informations

1WIN Azrbaycan – Bukmeker kontorunun rsmi sayt.1348

1WIN Azərbaycan – Bukmeker kontorunun rəsmi saytı ▶️ OYNA Содержимое 1WIN Azərbaycan haqqında 1WIN Azərbaycan-da qeydiyyatdan keçmək 1WIN Azərbaycan-da oynamaq üçün 1WIN Azərbaycan-da qazancın qeyri-əhatə

UP-X онлайн казино отзывы игроков.6489 (2)

UP-X онлайн казино – отзывы игроков ▶️ ИГРАТЬ Содержимое UP-X Онлайн Казино: Отзывы Игроков Официальный сайт UP-X Преимущества и Недостатки UP-X Онлайн Казино Оценка Качества

UP-X онлайн казино отзывы игроков.763

UP-X онлайн казино – отзывы игроков ▶️ ИГРАТЬ Содержимое UP-X Онлайн Казино: Отзывы Игроков Преимущества и Недостатки UP-X Онлайн Казино Большой выбор игр Безопасность и

UP-X онлайн казино отзывы игроков.6448 (2)

UP-X онлайн казино – отзывы игроков ▶️ ИГРАТЬ Содержимое UP-X Онлайн Казино: Отзывы Игроков Преимущества и Недостатки UP-X Онлайн Казино Важно! Оценка Качества и Бонусов

UP-X онлайн казино отзывы игроков.6571 (2)

UP-X онлайн казино – отзывы игроков ▶️ ИГРАТЬ Содержимое UP-X Онлайн Казино: Отзывы Игроков Преимущества и Недостатки UP-X Онлайн Казино Оценка Качества и Бонусов Бонусы

– Официальный Сайт Vavada Casino 2025.329 (2)

Вавада Казино – Официальный Сайт Vavada Casino (2025) ▶️ ИГРАТЬ Содержимое Преимущества и функции официального сайта Vavada Casino Как зарегистрироваться и начать играть на официальном

Leonbet Online Casino Jogos.435

Leonbet Online Casino – Jogos ▶️ JOGAR Содержимое Descubra os Melhores Jogos de Aposta Benefícios e Condições para os Jogadores Como Funciona o Leonbet Online

Accueil
Portfolio
Contact
Recherche