Wie kan mij helpen?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Teamlead PHP Developer

Functieomschrijving Voor een gewaardeerde werkgever in de buurt van Middelburg zijn wij op zoek naar een gemotiveerde teamlead PHP developer met affiniteit met Symfony/Laravel. Een enthousiast persoon die het ontwikkelteam komt versterken met het aanpakken van uitdagende projecten. Ben jij op zoek naar een uitdaging waar je de tijd en ruimte krijgt jezelf te ontwikkelen en je eigen IT-team aan te sturen? Lees dan snel verder! Die ga je doen: Bijdragen aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de PHP based applicaties; Ontwikkeling en beheer van de serviceportal in Symfony en de webshops in de tweede versie van

Bekijk vacature »

Lead developer

Functie Als lead developer wordt jij verantwoordelijk voor een van onze development teams. Samen met de Software Architect bewaak jij de kwaliteit en uitvoering van onze complexe vraagstukken. Daarnaast ben jij verantwoordelijk voor het inschatten, designen en ontwikkelen van middelgrote tot grote veranderingen in de software. Ook coördineer jij het proces rondom complexe technische vraagstukken. Verder bestaat jouw takenpakket uit het volgende: – Het aansturen van jouw development team; – Het begeleiden van Junior Software Engineers; – Het maken van technische analyses m.b.t. nieuwe aanvragen en het tijdsbestek inschatten voor de uitvoering hiervan; – Het uitvoeren van de ontwikkeling van

Bekijk vacature »

SAP Integratie Ontwikkelaar

Ben jij ambitieus in de verdere ontwikkeling van SAP binnen HANOS, en heb je kennis van SAP PI, CPI (SAP integration suite) en of andere middleware tooling? Dan ben jij mogelijk onze nieuwe SAP Integratie (middleware) Ontwikkelaar! Lees snel verder en solliciteer! Wat ga je doen? Als SAP Financieel Consultant ben je, als deel van een gedreven team van interne SAP consultants, de schakel tussen de gebruikersorganisatie en ICT. Je draagt proactief bij aan een optimale aansluiting van de SAP-functionaliteit (een applicatielandschap met o.a. Suite on HANA, Fiori, Hybris, C4C en BO), op de bedrijfsprocessen. Verder ondersteun je de HANOS

Bekijk vacature »

Senior Java developer

Als Senior Developer bij Sogeti ben je onderdeel van onze toonaangevende best-gecertificeerde Java community. Deze bestaat uit ruim 100 gepassioneerde professionals. In teamverband lever je mooie prestaties. Daarmee draag je aan bij de meerwaarde die wij leveren aan onze top-opdrachtgevers. Geen werkdag is hetzelfde! Je bent voortdurend bezig met het oplossen van allerlei complexe vraagstukken binnen bedrijfskritische systemen. Een voorbeeld hiervan is een cliënt-volgsysteem bij Reclassering Nederland. Andere klanten waar wij onder andere voor werken: KPN, Philips, Nationale-Nederlanden, Kamer van Koophandel, ABN AMRO, Bovemij, Aval en de Nationale Politie. Natuurlijk krijg jij de mogelijkheid je verder te certificeren in dit vakgebied. We

Bekijk vacature »

Front end developer Zorgplatform

Functie Jij als Front end ontwikkelen zult komen te werken samen met 1 PHP ontwikkelaar, 1 Python developer en een flexibele schil aan ontwikkelaars . Samen ga je ervoor zorgen dat de huidige producten doorontwikkeld worden. De Marketplace is geschreven in PHP Laravel en in de front end React. De roostersoftware is ontwikkeld in Python in combinatie met React in de front end. Jij zult als Front ender dus voornamelijk bezig zijn met het verbeteren van onze interfaces op onze verschillende producten. Momenteel ligt de uitdaging in het feit dat de roostersoftware breder schaalbaar moet worden zodat het voor meerdere

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET Developer start jij in een team met 15 developers. In het team is er genoeg senioriteit om ervoor te zorgen dat jij de juiste begeleiding krijgt. Jij begint als eerst alle software pakketten en processen eigen te maken. Vervolgens ga jij deze software programmeren, onderhouden en testen. Ook ga jij research doen naar nieuwe mogelijkheden en zoek jij uit hoe je dit kan implementeren. Jullie werken intern op project basis en afhankelijk van het project werken jullie wel of niet iedere ochtend met een standup. Je gaat als Full stack developer aan de slag en gaat

Bekijk vacature »

SQL Developer

Functie omschrijving Altijd al willen werken bij een snelgroeiend bedrijf, actief in de logistieke sector? Dit is je kans! Ik ben op zoek naar een ervaren SQL Developer in de omgeving Tilburg. Dit bedrijf is gespecialiseerd in in de ontwikkeling van software en maatwerk oplossingen voor het automatiseren van logistieke processen. Klanten zijn o.a. BOL en andere grote distributiecentrums. Jouw taken worden vooral: Verantwoordelijk voor ontwikkelen van stored procedures, voor snelle afhandeling van data; Optimalisatie van de SQL query's en T-SQL query's; Jij gaat je bezig houden met ontwerpen, ontwikkelen en optimaliseren van de MS SQL Databases; In deze functie

Bekijk vacature »

C++ Ontwikkelaar

Functieomschrijving Ben jij als software ontwikkelaar toe aan een nieuwe uitdaging? Dan zoeken wij jou! Voor het maken van de procesbesturingssoftware gebruiken onze projectteams een in C++ en C# geschreven tool. Dit is een gedistribueerd object framework wat alle kernfuncties biedt voor een procesautomatisering. Verder zullen jouw werkzaamheden o.a. bestaan uit: Ontwerpen, programmeren en testen van product aanpassingen; Analyseren van vragen en wensen van gebruikers en deze vertalen naar een functioneel ontwerp; Inzichtelijk maken van voortgang omtrent softwarewerkzaamheden, o.a. door middel van SCRUM; Continu toetsen van het effect van nieuwe releases op andere tools en processen; Implementeren van nieuwe product

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij recent jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een erkende werkgever in regio Waalwijk zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in kaart, om ze

Bekijk vacature »

Back end developer Python, PHP

Functie Jij als full stack ontwikkelaar zult komen te werken samen met 1 PHP ontwikkelaar een PO en een flexibele schil aan ontwikkelaars . Samen ga je ervoor zorgen dat de huidige producten doorontwikkeld worden. De marketplace is geschreven in PHP Laravel en in de front end React. De roostersoftware is ontwikkeld in Python in combinatie met React in de front end. Jij zult voornamelijk (lees 75%) werken aan de roostersoftware. Momenteel ligt de uitdaging in het feit dat de roostersoftware breder schaalbaar moet worden zodat het voor meerdere flexwerkers ingezet kan worden. Verder willen ze financiële koppelingen gaan maken

Bekijk vacature »

Software Developer C# .NET

Functie omschrijving Zoek jij een nieuwe uitdaging binnen development waar je komt te werken binnen een flexibel, jong en ondernemend bedrijf? Wij zijn voor deze functie op zoek naar een C# .NET Developer die enthousiast wordt van het aansluiten en begeleiden van (complexe) nieuwe klanten. Verder begeleid je complexe projecten, ben jij iemand die altijd kansen ziet? Dan zoeken wij jou! Verder ga jij je bezighouden met: Het verbeteren van functionaliteiten binnen het dataplatform; Meedenken in oplossingsrichtingen; Werken aan de architectuur; Ontwikkelen van nieuwe technologieën. Bedrijfsprofiel Waar ga je werken? De organisatie waar je voor gaat werken heeft een onafhankelijk

Bekijk vacature »

Medior PHP developer

Functie Het team bestaat inmiddels uit zo’n 25 collega’s met specialisten op het gebied van development, data(analyse), marketing, infrastructuur en finance. Ze hebben een supermodern pand en bieden hiernaast veel vrijheid en verantwoordelijkheid. Ze doen er alles aan om jou op te gemak te stellen. Zo kun je je eigen werkplek inrichten naar persoonlijke wensen, maar gaan ze bijvoorbeeld ook jaarlijks met elkaar wintersporten en zijn er andere leuke uitjes. Als onderdeel van één van de scrumteams ga je aan de slag, samen ben je medeverantwoordelijk voor het doorontwikkelen van hun business applicatie waar het traffic team dagelijks mee werkt.

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

.NET Developer Medior Senior

Dit ga je doen Ontwikkelprocessen verder optimaliseren en verder ontwikkelen met C#; CI/CD-pipelines automatiseren; Herbruikbare componenten maken; Testen; Front-end pagina's gebruiksvriendelijk maken. Hier ga je werken Als .NET Developer kom jij terecht binnen een grote en internationale organisatie. Zij streven naar een positieve impact op de mens, milieu en maatschappij. Het bedrijf is oorspronkelijk een familiebedrijf en werkt aan de productie van hoogwaardige en technische systemen voor de gezondheidszorg. Momenteel willen zij betere ontwikkelprocessen creëren op internationaal gebied en staat kwaliteit en veiligheid voor hun op nummer 1! Als .NET Developer werk jij aan het ontwikkelen van verbeterde software voor

Bekijk vacature »

Java Ontwikkelaar

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »
Pascal Doeleman

Pascal Doeleman

15/03/2019 17:51:05
Quote Anchor link
Script
}
endif;

/**
* Clearfix posts
*/
function astrid_clearfix_posts( $classes ) {
$classes[] = 'clearfix' ;
return $classes;
}

Error
FATAL ERROR syntax error, unexpected 'clearfix' (T_STRING), expecting ',' or ')' on line number 397
 
PHP hulp

PHP hulp

25/04/2024 07:22:21
 
- Ariën  -
Beheerder

- Ariën -

15/03/2019 17:53:59
Quote Anchor link
Ik heb het idee dat er wat meer code hier mist!
Met de functie is niks mis.

Geen idee of 'Script' onderdeel van je code is.
Deze kan je tussen [code] en [/code] tags plaatsen in het forum.
 
Pascal Doeleman

Pascal Doeleman

15/03/2019 17:55:31
Quote Anchor link
Dit is de hele code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
<?php
/**
 * Astrid functions and definitions.
 *
 * @link //developer.wordpress.org/themes/basics/theme-functions/
 *
 * @package Astrid
 */


if ( ! function_exists( 'astrid_setup' ) ) :
/**
 * Sets up theme defaults and registers support for various WordPress features.
 *
 * Note that this function is hooked into the after_setup_theme hook, which
 * runs before the init hook. The init hook is too late for some features, such
 * as indicating support for post thumbnails.
 */

function astrid_setup() {
    /*
     * Make theme available for translation.
     * Translations can be filed in the /languages/ directory.
     * If you're building a theme based on Astrid, use a find and replace
     * to change 'astrid' to the name of your theme in all the template files.
     */

    load_theme_textdomain( 'astrid', get_template_directory() . '/languages' );

    // Add default posts and comments RSS feed links to head.
    add_theme_support( 'automatic-feed-links' );

    /*
     * Let WordPress manage the document title.
     * By adding theme support, we declare that this theme does not use a
     * hard-coded <title> tag in the document head, and expect WordPress to
     * provide it for us.
     */

    add_theme_support( 'title-tag' );

    /*
     * Enable support for Post Thumbnails on posts and pages.
     *
     * @link //developer.wordpress.org/themes/functionality/featured-images-post-thumbnails/
     */

    add_theme_support( 'post-thumbnails' );
    add_image_size('astrid-large-thumb', 700);
    add_image_size('astrid-medium-thumb', 520);
    add_image_size('astrid-small-thumb', 360);
    add_image_size('astrid-project-thumb', 500, 310, true);
    add_image_size('astrid-client-thumb', 250);
    add_image_size('astrid-testimonial-thumb', 100);

    // This theme uses wp_nav_menu() in one location.
    register_nav_menus( array(
        'primary'     => esc_html__( 'Primary', 'astrid' ),
        'footer'     => esc_html__( 'Footer', 'astrid' ),
    ) );


    /*
     * Switch default core markup for search form, comment form, and comments
     * to output valid HTML5.
     */

    add_theme_support( 'html5', array(
        'search-form',
        'comment-form',
        'comment-list',
        'gallery',
        'caption',
    ) );


    /*
     * Enable support for Post Formats.
     * See //developer.wordpress.org/themes/functionality/post-formats/
     */

    add_theme_support( 'post-formats', array(
        'aside',
        'image',
        'video',
        'quote',
        'link',
    ) );


    // Set up the WordPress core custom background feature.
    add_theme_support( 'custom-background', apply_filters( 'astrid_custom_background_args', array(
        'default-color' => 'f5f9f8',
        'default-image' => '',
    ) ) );


    add_theme_support( 'custom-logo', array(
        'height'      => 80,
        'width'       => 200,
        'flex-height' => true,
    ) );    
}
endif;

add_action( 'after_setup_theme', 'astrid_setup' );

/**
 * Set the content width in pixels, based on the theme's design and stylesheet.
 *
 * Priority 0 to make it available to lower priority callbacks.
 *
 * @global int $content_width
 */

function astrid_content_width() {
    $GLOBALS['content_width'] = apply_filters( 'astrid_content_width', 640 );
}

add_action( 'after_setup_theme', 'astrid_content_width', 0 );

/**
 * Register widget area.
 *
 * @link //developer.wordpress.org/themes/functionality/sidebars/#registering-a-sidebar
 */

function astrid_widgets_init() {
    register_sidebar( array(
        'name'          => esc_html__( 'Sidebar', 'astrid' ),
        'id'            => 'sidebar-1',
        'description'   => '',
        'before_widget' => '<aside id="%1$s" class="widget %2$s">',
        'after_widget'  => '</aside>',
        'before_title'  => '<h4 class="widget-title">',
        'after_title'   => '</h4>',
    ) );


    //Register widget areas for the Widgetized page template
    $pages = get_pages(array(
        'meta_key' => '_wp_page_template',
        'meta_value' => 'page-templates/page_widgetized.php',
    ));


    foreach($pages as $page){
        register_sidebar( array(
            'name'          => esc_html__( 'Page - ', 'astrid' ) . $page->post_title,
            'id'            => 'widget-area-' . strtolower($page->post_name),
            'description'   => esc_html__( 'Use this widget area to build content for the page: ', 'astrid' ) . $page->post_title,
            'before_widget' => '<section id="%1$s" class="widget %2$s"><div class="atblock container">',
            'after_widget'  => '</div></section>',
            'before_title'  => '<h2 class="widget-title"><span class="title-decoration"></span>',
            'after_title'   => '</h2>',
        ) );
    }

    
    //Footer widget areas
    $widget_areas = get_theme_mod('footer_widget_areas', '3');
    for ($i=1; $i<=$widget_areas; $i++) {
        register_sidebar( array(
            'name'          => __( 'Footer ', 'astrid' ) . $i,
            'id'            => 'footer-' . $i,
            'description'   => '',
            'before_widget' => '<aside id="%1$s" class="widget %2$s">',
            'after_widget'  => '</aside>',
            'before_title'  => '<h3 class="widget-title">',
            'after_title'   => '</h3>',
        ) );
    }
    

    register_widget( 'Atframework_Services' );
    register_widget( 'Atframework_Skills' );
    register_widget( 'Atframework_Facts' );    
    register_widget( 'Atframework_Employees' );    
    register_widget( 'Atframework_Projects' );
    register_widget( 'Atframework_Testimonials' );
    register_widget( 'Atframework_Clients' );    
    register_widget( 'Atframework_Posts' );        
    register_widget( 'Atframework_Video' );        
    register_widget( 'Atframework_Recent_Posts' );
    register_widget( 'Atframework_Social' );    

}

add_action( 'widgets_init', 'astrid_widgets_init' );

//Homepage widgets
$astrid_widgets = array('services', 'skills', 'facts', 'employees', 'projects', 'testimonials', 'clients', 'posts');
foreach ( $astrid_widgets as $astrid_widget) {
    locate_template( '/inc/framework/widgets/front-' . $astrid_widget . '.php', true, false );
}


//Sidebar widgets
require get_template_directory() . "/inc/framework/widgets/video-widget.php";
require get_template_directory() . "/inc/framework/widgets/posts-widget.php";
require get_template_directory() . "/inc/framework/widgets/social-widget.php";

/**
 * Enqueue scripts and styles.
 */

function astrid_scripts() {
    wp_enqueue_style( 'astrid-style', get_stylesheet_uri() );

    $body_font         = get_theme_mod('body_font_name', '//fonts.googleapis.com/css?family=Open+Sans:300,300italic,600,600italic');
    $headings_font     = get_theme_mod('headings_font_name', '//fonts.googleapis.com/css?family=Josefin+Sans:300italic,300');
    $remove         = array("<link href='", "' rel='stylesheet' type='text/css'>", "https:", "http:");
    $body_url         = str_replace($remove, '', $body_font);
    $headings_url     = str_replace($remove, '', $headings_font);    

    wp_enqueue_style( 'astrid-body-fonts', esc_url($body_url) );
    
    wp_enqueue_style( 'astrid-headings-fonts', esc_url($headings_url) );     

    wp_enqueue_style( 'font-awesome', get_template_directory_uri() . '/fonts/font-awesome.min.css' );    

    wp_enqueue_script( 'astrid-main', get_template_directory_uri() . '/js/main.js', array('jquery'), '', true );

    wp_enqueue_script( 'astrid-scripts', get_template_directory_uri() . '/js/scripts.min.js', array('jquery'), '', true );

    if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
        wp_enqueue_script( 'comment-reply' );
    }


    if ( astrid_blog_layout() == 'masonry-layout' && (is_home() || is_archive()) ) {
        wp_enqueue_script( 'astrid-masonry-init', get_template_directory_uri() . '/js/masonry-init.js', array('masonry'), '', true );        
    }


    wp_enqueue_script( 'astrid-html5shiv', get_template_directory_uri() . '/js/html5shiv.js', array(), '', true );
    wp_script_add_data( 'astrid-html5shiv', 'conditional', 'lt IE 9' );

}

add_action( 'wp_enqueue_scripts', 'astrid_scripts' );

/**
 * Enqueue Bootstrap
 */

function astrid_enqueue_bootstrap() {
    wp_enqueue_style( 'bootstrap', get_template_directory_uri() . '/css/bootstrap/bootstrap.min.css', array(), true );
}

add_action( 'wp_enqueue_scripts', 'astrid_enqueue_bootstrap', 9 );


/**
 * Customizer styles
 */

function astrid_customizer_styles($hook) {
    if ( ( 'customize.php' != $hook ) && ( 'widgets.php' != $hook ) ) {
        return;
    }
    
    wp_enqueue_style( 'astrid-customizer-styles', get_template_directory_uri() . '/inc/framework/css/customizer.css' );    
}

add_action( 'admin_enqueue_scripts', 'astrid_customizer_styles' );

/**
 * Blog layout
 */

function astrid_blog_layout() {
    $layout = get_theme_mod('blog_layout','list');
    return $layout;
}


/**
 * Remove archives labels
 */

function astrid_category_label($title) {
    if ( is_category() ) {
        $title = '<i class="fa fa-folder-o"></i>' . single_cat_title( '', false );
    }
elseif ( is_tag() ) {
        $title = '<i class="fa fa-tag"></i>' . single_tag_title( '', false );        
    }
elseif ( is_author() ) {
        $title = '<span class="vcard"><i class="fa fa-user"></i>' . get_the_author() . '</span>';
    }

    return $title;
}

add_filter('get_the_archive_title', 'astrid_category_label');

/**
 * Header image check
 */

function astrid_has_header() {
    $front_header = get_theme_mod('front_header_type' ,'image');
    $site_header = get_theme_mod('site_header_type', 'nothing');
    global $post;
    if ( !is_404() || !is_search() ) {
        $single_toggle = get_post_meta( $post->ID, '_astrid_single_header_shortcode', true );
    }
else {
        $single_toggle = false;
    }


    if ($single_toggle != '') {
        return 'has-single';
    }
else {
        if ( get_header_image() && ( $front_header == 'image' && is_front_page() ) || ( $site_header == 'image' && !is_front_page() ) ) {
            return 'has-header';
        }
elseif ( ($front_header == 'shortcode' && is_front_page()) || ($site_header == 'shortcode' && !is_front_page()) ) {
            return 'has-shortcode';
        }
elseif ( ($front_header == 'video' && is_front_page()) || ($site_header == 'video' && !is_front_page()) ) {
            return 'has-video';
        }        
    }
}


/**
 * Full width single posts
 */

function astrid_fullwidth_singles($classes) {
    if ( function_exists('is_woocommerce') ) {
        $woocommerce = is_woocommerce();
    }
else {
        $woocommerce = false;
    }


    $single_layout = get_theme_mod('fullwidth_single', 0);
    if ( is_single() && !$woocommerce && $single_layout ) {
        $classes[] = 'fullwidth-single';
    }

    return $classes;
}

add_filter('body_class', 'astrid_fullwidth_singles');

/**
 * Polylang compatibility
 */

if ( function_exists('pll_register_string') ) :
function
astrid_polylang() {
    pll_register_string('Header text', get_theme_mod('header_text'), 'Astrid');
    pll_register_string('Header subtext', get_theme_mod('header_subtext'), 'Astrid');
    pll_register_string('Header button', get_theme_mod('header_button'), 'Astrid');
}

add_action( 'admin_init', 'astrid_polylang' );
endif;


/**
 * Header text
 */

function astrid_header_text() {

    if ( !function_exists('pll_register_string') ) {
        $header_text         = get_theme_mod('header_text');
        $header_subtext     = get_theme_mod('header_subtext');
        $header_button        = get_theme_mod('header_button');
    }
else {
        $header_text         = pll__(get_theme_mod('header_text'));
        $header_subtext     = pll__(get_theme_mod('header_subtext'));
        $header_button        = pll__(get_theme_mod('header_button'));
    }

    $header_button_url    = get_theme_mod('header_button_url');

    echo '<div class="header-info">
            <div class="container">
                <h4 class="header-subtext">'
. wp_kses_post($header_subtext) . '</h4>
                <h3 class="header-text">'
. wp_kses_post($header_text) . '</h3>';
                if ($header_button_url) {
                    echo '<a class="button header-button" href="' . esc_url($header_button_url) . '">' . esc_html($header_button) . '</a>';
                }

    echo     '</div>';
    echo '</div>';
}


/**
 * Site branding
 */

if ( ! function_exists( 'astrid_branding' ) ) :
function
astrid_branding() {
    $site_logo = get_theme_mod('site_logo');    
    if ( function_exists( 'the_custom_logo' ) && has_custom_logo() ) {
        the_custom_logo();
    }
elseif ( $site_logo ) {
        echo '<a href="' . esc_url( home_url( '/' ) ) . '" title="' . esc_attr(get_bloginfo('name')) . '"><img class="site-logo" src="' . esc_url($site_logo) . '" alt="' . esc_attr(get_bloginfo('name')) . '" /></a>';
    }
else {
        if ( is_front_page() && is_home() ) {
            echo '<h1 class="site-title"><a href="' . esc_url( home_url( '/' ) ) . '" rel="home">' . esc_html(get_bloginfo('name')) . '</a></h1>';
        }
else {
            echo '<p class="site-title"><a href="' . esc_url( home_url( '/' ) ) . '" rel="home">' . esc_html(get_bloginfo('name')) . '</a></p>';
        }

        echo '<p class="site-description">' . esc_html(get_bloginfo( 'description' )) . '</p>';
    }
}
endif;


/**
 * Footer site branding
 */

if ( ! function_exists( 'astrid_footer_branding' ) ) :
function
astrid_footer_branding() {
    $footer_logo = get_theme_mod('footer_logo');
    echo '<div class="footer-branding">';
    if ( $footer_logo ) :
        echo '<a href="' . esc_url( home_url( '/' ) ) . '" title="' . esc_attr(get_bloginfo('name')) . '"><img class="footer-logo" src="' . esc_url($footer_logo) . '" alt="' . esc_attr(get_bloginfo('name')) . '" /></a>';
    else :
        echo '<h2 class="site-title-footer"><a href="' . esc_url( home_url( '/' ) ) . '" rel="home">' . esc_html(get_bloginfo('name')) . '</a></h1>';
    endif;

    echo '</div>';
}
endif;


/**
 * Footer contact
 */

if ( ! function_exists( 'astrid_footer_contact' ) ) :
function
astrid_footer_contact() {
    $footer_contact_address = get_theme_mod('footer_contact_address');
    $footer_contact_email   = antispambot(get_theme_mod('footer_contact_email'));
    $footer_contact_phone     = get_theme_mod('footer_contact_phone

}
endif;

/**
 * Clearfix posts
 */
function astrid_clearfix_posts( $classes ) {
    $classes[] = '
clearfix';
    return $classes;
}
add_filter( '
post_class', 'astrid_clearfix_posts' );

/**
 * Excerpt length
 */
function astrid_excerpt_length( $length ) {
  $excerpt = get_theme_mod('
exc_length', '40');
  return absint($excerpt);
}
add_filter( '
excerpt_length', 'astrid_excerpt_length', 99 );

/**
* Footer credits
*/
function astrid_footer_credits() {
    echo '
<a href="' . esc_url( __( '//wordpress.org/', 'astrid' ) ) . '">';
        printf( __( '', '');

    echo '
<div class="footer-contact">';
    if ($footer_contact_address) {
        echo '
<div class="footer-contact-block">';
        echo     '
<i class="fa fa-home"></i>';
        echo     '
<span>' . esc_html($footer_contact_address) . '</span>';
        echo '
</div>';
    }
    if ($footer_contact_email) {
        echo '
<div class="footer-contact-block">';
        echo     '
<i class="fa fa-envelope"></i>';
        echo     '
<span><a href="mailto:' . esc_attr($footer_contact_email) . '">' . esc_html($footer_contact_email) . '</a></span>';
        echo '
</div>';
    }
    if ($footer_contact_phone) {
        echo '
<div class="footer-contact-block">';
        echo     '
<i class="fa fa-phone"></i>';
        echo     '
<span>' . esc_html($footer_contact_phone) . '</span>';
        echo '
</div>';
    }    
    echo '
</div>';' ), 'WordPress' );
    echo '</a>';
    echo '<span class="sep"> | </span>';
    printf( __( 'Theme: %2$s by %1$s.', 'astrid' ), 'aThemes', '<a href="//athemes.com/theme/astrid" rel="designer">Astrid</a>' );
}

add_action( 'astrid_footer', 'astrid_footer_credits' );

function
astrid_remove_page_template() {

    if ( !function_exists('astrid_pro_load_widgets') ) {

        global $pagenow;
        if ( in_array( $pagenow, array( 'post-new.php', 'post.php') ) && get_post_type() == 'page' ) { ?>

            <script type="text/javascript">
                (function($){
                    $(document).ready(function(){
                        $('#page_template option[value="single-event.php"]').remove();
                        $('#page_template option[value="single-pricing.php"]').remove();                    
                    })
                })(jQuery)
            </script>
        <?php
        }
    }
}

add_action('admin_footer', 'astrid_remove_page_template', 10);

/**
 * Implement the Custom Header feature.
 */

require get_template_directory() . '/inc/custom-header.php';

/**
 * Custom template tags for this theme.
 */

require get_template_directory() . '/inc/template-tags.php';

/**
 * Custom functions that act independently of the theme templates.
 */

require get_template_directory() . '/inc/extras.php';

/**
 * Customizer additions.
 */

require get_template_directory() . '/inc/customizer.php';

/**
 * Load Jetpack compatibility file.
 */

require get_template_directory() . '/inc/jetpack.php';

/**
 * Widget options
 */

require get_template_directory() . '/inc/framework/widget-options.php';

/**
 * Styles
 */

require get_template_directory() . '/inc/styles.php';

/**
 * Demo content
 */

require get_template_directory() . '/inc/demo-content/setup.php';

/**
 * Woocommerce
 */

require get_template_directory() . '/woocommerce/woocommerce.php';






/**
 * Gutenberg
 */

add_theme_support( 'align-wide' );

function
astrid_editor_styles() {
    wp_enqueue_style( 'astrid-block-editor-styles', get_theme_file_uri( '/astrid-gutenberg-editor-styles.css' ), '', '1.0', 'all' );

    $body_font         = get_theme_mod('body_font_name', '//fonts.googleapis.com/css?family=Open+Sans:300,300italic,600,600italic');
    $headings_font     = get_theme_mod('headings_font_name', '//fonts.googleapis.com/css?family=Josefin+Sans:300italic,300');
    $remove         = array("<link href='", "' rel='stylesheet' type='text/css'>", "https:", "http:");
    $body_url         = str_replace($remove, '', $body_font);
    $headings_url     = str_replace($remove, '', $headings_font);    

    wp_enqueue_style( 'astrid-body-fonts', esc_url($body_url) );
    
    wp_enqueue_style( 'astrid-headings-fonts', esc_url($headings_url) );

    //Dynamic styles
    $custom = '';

    //Fonts
    $body_fonts     = get_theme_mod('body_font_family');    
    $headings_fonts = get_theme_mod('headings_font_family');
    if ( $body_fonts !='' ) {
        $custom .= ".editor-block-list__layout, .editor-block-list__layout .editor-block-list__block { font-family:" . $body_fonts . ";}"."\n";
    }

    if ( $headings_fonts !='' ) {
        $custom .= ".editor-post-title__block .editor-post-title__input, .editor-block-list__layout .editor-post-title__input, .editor-block-list__layout h1, .editor-block-list__layout h2, .editor-block-list__layout h3, .editor-block-list__layout h4, .editor-block-list__layout h5, .editor-block-list__layout h6 { font-family:" . $headings_fonts . ";}"."\n";
    }
      
    
    
    //H1 size
    $h1_size = get_theme_mod( 'h1_size','36' );
    if ($h1_size) {
        $custom .= ".editor-block-list__layout h1 { font-size:" . intval($h1_size) . "px; }"."\n";
    }

    //H2 size
    $h2_size = get_theme_mod( 'h2_size','30' );
    if ($h2_size) {
        $custom .= ".editor-block-list__layout h2 { font-size:" . intval($h2_size) . "px; }"."\n";
    }

    //H3 size
    $h3_size = get_theme_mod( 'h3_size','24' );
    if ($h3_size) {
        $custom .= ".editor-block-list__layout h3 { font-size:" . intval($h3_size) . "px; }"."\n";
    }

    //H4 size
    $h4_size = get_theme_mod( 'h4_size','16' );
    if ($h4_size) {
        $custom .= ".editor-block-list__layout h4 { font-size:" . intval($h4_size) . "px; }"."\n";
    }

    //H5 size
    $h5_size = get_theme_mod( 'h5_size','14' );
    if ($h5_size) {
        $custom .= ".editor-block-list__layout h5 { font-size:" . intval($h5_size) . "px; }"."\n";
    }

    //H6 size
    $h6_size = get_theme_mod( 'h6_size','12' );
    if ($h6_size) {
        $custom .= ".editor-block-list__layout h6 { font-size:" . intval($h6_size) . "px; }"."\n";
    }

    //Body size
    $body_size = get_theme_mod( 'body_size', '14' );
    if ($body_size) {
        $custom .= ".editor-block-list__block, .editor-block-list__block p { font-size:" . intval($body_size) . "px; }"."\n";
    }


    //Body
    $body_text = get_theme_mod( 'body_text_color', '#656D6D' );
    $custom .= ".editor-block-list__layout, .editor-block-list__layout .editor-block-list__block { color:" . esc_attr($body_text) . "}"."\n";

    //Small screens font sizes
    $custom .= "@media only screen and (max-width: 780px) {
        h1 { font-size: 32px;}
        h2 { font-size: 28px;}
        h3 { font-size: 22px;}
        h4 { font-size: 18px;}
        h5 { font-size: 16px;}
        h6 { font-size: 14px;}
    }"
. "\n";

    
    //Output all the styles
    wp_add_inline_style( 'astrid-block-editor-styles', $custom );    

}

add_action( 'enqueue_block_editor_assets', 'astrid_editor_styles' );
?>
Gewijzigd op 15/03/2019 18:04:36 door - Ariën -
 
- Ariën  -
Beheerder

- Ariën -

15/03/2019 18:04:17
Quote Anchor link
Op regel 388 gaat het mis.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
    $footer_contact_phone     = get_theme_mod('footer_contact_phone

Dit klopt niet echt.
En zou dit moeten zijn.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
    $footer_contact_phone     = get_theme_mod('footer_contact_phone');


Gelieve voortaan minder code te plaatsen. Relevante code kan je al beperkten tot max. 20 regels rond de lijn waar de foutmelding op wordt aangegeven.
Gewijzigd op 15/03/2019 18:06:54 door - Ariën -
 
Pascal Doeleman

Pascal Doeleman

15/03/2019 18:08:34
Quote Anchor link
Dank je wel!
Helaas nog geen oplossing - blijft op regel 397 terugkomen.


Toevoeging op 15/03/2019 18:10:44:

Ik heb echter op regel 416 de footer proberen aan te passen, daar ik iets verandert heb. De gehele website is nu offline... www.whateverband.eu


Toevoeging op 15/03/2019 18:13:48:

Hieronder wat ik heb aangepast:
function astrid_footer_credits() {
echo '<a href="' . esc_url( __( '//wordpress.org/', 'astrid' ) ) . '">';
printf( __( 'Powered by %s', 'astrid');
 
- Ariën  -
Beheerder

- Ariën -

15/03/2019 18:14:01
Quote Anchor link
In plaats van de fouten te lappen, kan je denk ik beter je theme opnieuw kan
installeren. Want hoe komt het dat je opeens fouten krijgt? Ik neem aan dat de themebouwer zelf geen brakke them's verspreidt.

Sowieso mist er een ).
Gewijzigd op 15/03/2019 18:16:43 door - Ariën -
 
Pascal Doeleman

Pascal Doeleman

15/03/2019 18:27:23
Quote Anchor link
Ik heb echter op regel 416 de footer proberen aan te passen, daar ik iets verandert heb. De gehele website is nu offline... www.whateverband.eu

De Theme helemaal opnieuw zie ik niet zitten. Ik heb een klein foutje gemaakt met grote gevolgen. Dit moet iets simpels zijn
 
- Ariën  -
Beheerder

- Ariën -

15/03/2019 18:32:25
Quote Anchor link
Backup terugzetten?
Misschien is het ook verstandig om je site in het vervolg op een loakle webserver op je eigen PC te ontwikkelen, zodat je niet meteen je fouten online zet.
Gewijzigd op 15/03/2019 18:34:30 door - Ariën -
 
Pascal Doeleman

Pascal Doeleman

15/03/2019 18:34:16
Quote Anchor link
Ik weet het: dom dom dom, niet aanwezig..
 
- Ariën  -
Beheerder

- Ariën -

15/03/2019 18:35:12
Quote Anchor link
Opnieuw downloaden, bestand overschrijven.
 
Pascal Doeleman

Pascal Doeleman

15/03/2019 18:51:27
Quote Anchor link
Thanks! Dat was de oplossing! SUPER!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.