• Opgelost frankmanl

    (@frankmanl)


    Bij uitverkochte concerten moet een aantal dingen gebeuren: de knop KOOP KAARTEN verbergen/verwijderen, de entreeprijs moet lichtgrijs gemaakt én er moet een melding verschijnen dat het uitverkocht is en je je kunt aanmelden voor de wachtlijst, met een hyperlink in die tekst.

    Eerder regelde ik het allemaal met css en werd de tekst over de wachtlijst pas getoond wanneer het concert status ‘uitverkocht’ had:

    <div id="post-16049" class="post-16049 tribe_events type-tribe_events status-publish has-post-thumbnail hentry tribe_events_cat-uitverkocht tribe_events_cat-wacht-vol cat_uitverkocht cat_wacht-vol entry has-media tribe-events-status__list-event-wachtlijstvol">

    Echter, Google toonde in zijn zoekresultaten bij álle concerten de tekst UITVERKOCHT, omdat die nu eenmaal in de pagina-source stond, ook al maakte de css die tekst onzichtbaar in de browser – zeer onwenselijk.

    Hoe kan ik tekst (met hyperlink) laten toevoegen op de pagina, afhankelijk van de categorie van het evenement?

    De pagina waar ik hulp bij nodig heb: [log in om de link te zien]

10 reacties aan het bekijken - 1 tot 10 (van in totaal 10)
  • Guido

    (@guido07111975)

    Hoi Frank,

    Je zou dat tekstblok middels een conditie kunnen tonen als een event de categorie tribe_events_cat-uitverkocht heeft. Kan later vandaag een voorbeeld geven. Is de hyperlink in die tekst ook elke keer verschillend?
    Gebruik je een child thema? Zo niet, dan moet dit met een plugin zoals Code Snippets toegevoegd worden.

    Guido

    Guido

    (@guido07111975)

    Hoi,

    Zoals beloofd hier een voorbeeld. Voeg dit toe aan bestand functions van je (child) thema of middels de Code Snippets plugin:

    function evenement_uitverkocht($uitverkocht_atts) {
    $uitverkocht_atts = shortcode_atts(array(
    'link' => '',
    ), $uitverkocht_atts);
    if ( is_singular('tribe_events') ) {
    if (has_term('uitverkocht', 'tribe_events_cat')) {
    return '<p class="uitverkocht">Dit evenement is uitverkocht. Aanmelden voor de wachtlijst kan via <a href="'.$uitverkocht_atts['link'].'">deze link</a>.</p>';
    }
    }
    }
    add_shortcode( 'uitverkocht-tekst', 'evenement_uitverkocht' );

    Voeg dan bij elk evenement deze shortcode toe: [uitverkocht-tekst link="https://www.je-link.nl"]

    Je kunt dus bij elk evenement een unieke link toevoegen. Als dit voor elk evenement dezelfde link is, dan kun je eventueel ook een vaste link in mijn code zetten.

    Deze tekst wordt alleen getoond als je evenement de categorie “uitverkocht” heeft.
    Ik heb dit nog niet getest met jouw plugin The Events Calendar, maar ben er vrij zeker van dat het zo moet werken.

    Guido

    Thread starter frankmanl

    (@frankmanl)

    Dankjewel, Guido, dit ziet er goed uit. Ik ga het later proberen (ben nu te ziek) en laat weten of het ermee lukt.
    Ik had echt geen idee hoe dit aan te pakken – fijn dat ik dit forum ontdekte.

    Frank

    Guido

    (@guido07111975)

    Hoi Frank,

    Laat tzt maar even weten of het werkt. Beterschap!

    Guido

    Thread starter frankmanl

    (@frankmanl)

    Het is helemaal gelukt, Guido, dankjewel.
    Omdat deze tekst in beginsel bij ieder concert moet kunnen worden getoond en de link altijd het zelfde is, heb ik ervoor gekozen het single event bestand van The Events Calendar aan te passen (middels een override bestand). Op de gewenste positie heb ik deze code ingevoegd en dat werkt perfect:

    <?php
    echo "[uitverkocht-tekst]";
    ?>

    Het enige wat we nu hoeven te doen is de categorie uitverkocht aan het concert te koppelen.

    Frank

    • Deze reactie is gewijzigd 3 weken, 2 dagen geleden door frankmanl.
    Guido

    (@guido07111975)

    Hoi Frank,

    Mooi dat je tevreden bent en graag gedaan.
    Nu waarschijnlijk nog even afwachten totdat Google de gewijzigde event tekst (zonder uitverkocht) indexeert.

    Guido

    Guido

    (@guido07111975)

    Viel me trouwens iets anders op. Op mijn iPhone werkt mobiele menu niet optimaal. Het lukt me niet om de hoofdpagina Contact te openen. Als ik erop klik klapt het submenu uit, maar als ik er weer op klik opent de hoofdpagina niet. Ws iets in de CSS of de JS wat niet goed werkt.
    Op andere plekken in het menu is de “hoofdpagina” een placeholder link, zo kun je het natuurlijk ook oplossen.

    Guido

    Thread starter frankmanl

    (@frankmanl)

    Dank voor je tip over het menu – opgelost.

    Frank

    Guido

    (@guido07111975)

    Hoi Frank,

    Vergeten te zeggen, maar een shortcode kun je het best op deze manier aan je template toevoegen:

    echo do_shortcode( '[uitverkocht-tekst]' );

    Bron hier.

    Guido

    Thread starter frankmanl

    (@frankmanl)

    Man, wat ben je zorgvuldig in je hulp. Heel fijn, dankjewel.
    En een gelukkig Nieuwjaar!

    Frank

10 reacties aan het bekijken - 1 tot 10 (van in totaal 10)