Wie kan mij helpen?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Belastingdienst - Freelance Applicatieontwikkelaar

Startdatum: 01.06.2023 Richttarief: €65,00 - €75,00 Duur van de opdracht: 6 maanden Uren per week: 36 Taal: Nederlands vereist! Gelieve in het Nederlands te solliciteren. Hybride. Kantoordagen in Utrecht, incidenteel in Apeldoorn Functieomschrijving: De afdeling IV – Generieke Voorzieningen – Interactie Online is onderdeel van de keten Interactie. De missie van de keten is: “het faciliteren van de interactie met alle burgers, bedrijven en hun vertegenwoordigers om hen in staat te stellen aan hun fiscale verplichtingen te voldoen en aanspraak te maken op hun rechten.” De afdeling Interactie Online heeft een belangrijke bijdrage binnen deze keten. Dit door het ontwikkelen

Bekijk vacature »

Freelance JAVA / C# Developer

Functieomschrijving Voor een opdrachtgever in omgeving Zoetermeer zijn wij op zoek naar ervaren JAVA of C# Developers die graag op projectbasis willen werken. Je komt terecht bij een informele developers club die mooie projecten uitvoeren voor grote klanten. Ben je een ervaren freelancer of werk je in loondienst en ben je toe aan een nieuwe uitdaging? Lees dan snel verder want wie weet is dit een leuke vacature voor jou! Het fijne van deze werkgever is dat je zelf mag beslissen hoe je te werk wilt gaan. Wil je als freelancer werken dan is dat OK. Wil je de zekerheid

Bekijk vacature »

Senior Airport Developer ( System engineer)

De functie Nice to know (you) De nieuwe A-pier wordt de duurzaamste van Schiphol. Als deze af is ligt er 4000 vierkante meter zonnepanelen op het dak. En de toiletten? Die spoelen door met regenwater. we gaan ervoor: het creëren van de meest duurzame en hoogwaardige luchthavens ter wereld. een toekomstbestendig en duurzaam Schiphol. Daar werken we elke dag hard aan in team Development & Sustainability. Jij bent regisseur, expert én aanjager van de ontwikkeling van Schiphol. Connecting your world Hoe maak je de ambities en doelstellingen van Schiphol concreet in een project? De waarde voor Schiphol naar eisen die

Bekijk vacature »

(Lead) PHP Software Developer

Functie omschrijving Voor een klein softwarebedrijf in Breda, zijn wij op zoek naar een PHP software developer met een aantal jaar werkervaring. Je krijgt een plek in een klein team met 2 andere software developers. Wil jij graag werken met de nieuwste technieken bij een bedrijf waar jij de lead gaat nemen in de verder ontwikkeling en modernisering van een eigen software pakket? Dan ben je hier aan het juiste adres! Jouw werkzaamheden gaan er als volgt uit zien: Je gaat aan de slag met de ontwikkeling en vernieuwing van het "in-house" ontwikkelde multimedia platform. Je neemt de lead in

Bekijk vacature »

.NET Developer

Functie omschrijving Jij gaat in de functie van Software Developer werken met C# en .NET framework. Jij gaat maatwerk software ontwikkelen en softwareoplossingen creëren. Daarnaast optimaliseer je de bestaande software. Oplossingen waar de klant echt iets aan heeft, jij krijgt er energie van op dit te realiseren. Je gaat werken in een Microsoft omgeving(ASP.NET) en gebruikt daarnaast C# en MVC. Samen met het huidige IT team binnen deze organisatie verwerk je de wensen van de klant tot een (eind)product. Bedrijfsprofiel Je komt te werken in een klein team van developers, die zich voornamelijk bezighouden met back-end development. Verder staat dit

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET ontwikkelaar start jij in een ontwikkelteam met 7 .NET developers. In ons team werken er drie senior .NET developer, twee medior .NET developers en twee junior .NET developers. Er is dan ook genoeg senioriteit in ons team om jou te kunnen bieden wat jij nodig hebt! Wij werken in scrum en hebben drie wekelijkste sprints. Daarnaast doen wij minimaal vier keer per jaar een release. Ons platform is ontzettend complex en groot. Het is dan ook in het begin belangrijk dat jij de processen gaat begrijpen. Jij krijgt dan ook een cursus om beter te begrijpen

Bekijk vacature »

Lead Webdeveloper

Als Lead webdeveloper bij KUBUS ben je verantwoordelijk voor het implementatie design van requirements en de software architectuur van de webapplicatie en services van BIMcollab. In je rol als lead developer zoek je als vanzelf op een creatieve manier naar het optimum tussen benodigde implementatie-tijd, de performance van de applicatie en een snelle go-to-market van features, aansluitend bij onze geautomatiseerde test- en release train. Hierbij bewaak je in samenwerking met de andere senior ontwikkelaars in je team de architectuur van de applicatie en adviseer je de product owner over noodzakelijke refactoring om de onderhoudbaarheid van het platform te verbeteren. Ons

Bekijk vacature »

Social Media Specialist

Social Media Specialist locatie: Rotterdam (Zuid Holland) Wij zoeken op korte termijn een nieuwe collega, een social media specialist/ adviseur sociale media (24 uur), voor ons sprankelende team Communicatie van CJG Rijnmond. Onze focus ligt op het informeren en binden van onze in- en externe klanten en stakeholders en het versterken van onze naamsbekendheid en zichtbaarheid. Dat doen we in nauwe samenwerking met elkaar. Over de functie Ons team bestaat uit 7 communicatieprofessionals met ieder een eigen expertise. Als lid van het online team ben je verantwoordelijk voor het ontwikkelen, uitvoeren en analyseren van onze socialemediastrategie. Ook stel je campagnes

Bekijk vacature »

Senior PHP developer

Functie Jouw werkzaamheden zullen grotendeels bestaan uit het in teamverband ontwerpen, vernieuwen en door ontwikkelen van het systeem. Het is echt back-end werk (bijvoorbeeld het doorontwikkelen van een API) en dit moet je dan ook liggen. Ze zijn niet persee gebonden aan talen of tools maar gebruiken graag de technieken die het beste aansluiten op de gegeven oplossing. Voor nieuwe (versies van) componenten maken ze veelal gebruik van Go(lang). Bij aanpassingen aan bestaande onderdelen gebeurt dit in PHP en C++. Het team is heel divers, er hangt een relaxte sfeer en ze organiseren regelmatig leuke music nights, game nights e.d.

Bekijk vacature »

Senior/Lead Python developer

Functie Samen met je team, bestaande uit een senior, 2 mediors en één junior ontwikkelaar ga je op een Agile-gebaseerde aanpak werken aan hun software. Je hebt oog voor kwaliteit, risico’s en klantbelang. Communicatie met je collega’s en waar nodig ook met klanten speelt een belangrijke rol in het bereiken van een succesvol resultaat. Als persoon ben je slim, krijg je dingen voor elkaar en ga je resultaatgericht te werk. Binnen het development team is er veel zelfstandigheid, los van de stand-up (10:00 uur) en zo nu en dan pair-programming sessies. Technieken die zij gebruiken zijn o.a. Python, Django, MySQL,

Bekijk vacature »

Junior Software Developer (HBO / WO)

Functie omschrijving Voor een leuke opdrachtgever zijn wij op zoek naar een Junior Software Developer! Sta jij aan het begin van je carrière en heb je net je HBO of WO-diploma in de richting van ICT of Techniek mogen ontvangen? En heb jij grote affiniteit met software development? Dan hebben wij bij Jelling IT Professionals de perfecte opdrachtgever in de omgeving van Hoofddorp. Binnen deze functie vervul je een onsite learning programma waarbij je aan de slag gaat met PHP en Laravel. Hierbij ben je voornamelijk werkzaam op verschillende klantlocaties en is het jouw taak om hun wensen en eisen

Bekijk vacature »

Back-End Developer in Laravel / PHP

Functie omschrijving Wij zijn op zoek naar een Medior PHP Laravel Developer voor een gaaf bedrijf in de omgeving van Amsterdam! Voor een enthousiast team die zich graag bezig houdt met softwareontwikkeling zijn wij op zoek naar versterking. Je werkt in een klein ontwikkelteam en bent zeer betrokken bij alle aspecten van de softwareoplossingen. Van het ontwerpen tot de oplevering. Binnen deze functie ga je aan de slag met het aanpassen, verbeteren en vernieuwen van de logistieke oplossingen. Je krijgt veel te maken met koppelingen naar systemen en de verzoeken van de klant. Je komt terecht in een team, waarbij

Bekijk vacature »

Full stack developer

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

PHP Software Developer

Functie omschrijving Op zoek naar een nieuwe uitdaging binnen PHP? Lees dan snel verder! Wij zoeken een ervaren PHP developer die binnen een organisatie gaat functioneren als verlengstuk van de klant. Wij zoeken voor deze iemand die technisch complexe zaken met enthousiasme en plezier aanvliegt. Verder moet je instaat zijn om je tijd goed te managen omdat je aan meerdere projecten tegelijkertijd werkt. Je werkt met de nieuwste technieken en tijdens deze uitdaging werk je veel samen met de front-end developers van deze organisatie. Wij zoeken iemand die zichzelf graag uitdaagt en altijd de beste wilt zijn. Bedrijfsprofiel Waar ga

Bekijk vacature »

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

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

12/11/2024 20:56:16
 
- 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.