Hallo allemaal,
op www.briefondernummer.nl staan contactadvertenties en onderaan elke advertentie staat een button met daarop de tekst BRIEF ONDER NUMMER gevolgd door een nummer. Dat nummer is de ID van de post.
Die ID komt ook voor in de slug van elke advertentie.
Maar als ik in een zoekbalk bijvoorbeeld 1889 invoer (het ID van een van de advertenties) dan kan het systeem die advertentie niet vinden. Lastig, want als iemand een ander een brief stuurt en er in zet 'mijn advertentie is nummer 1564' dan is dat dus niet even snel op te zoeken.
Ergo: weet iemand hoe ik wel op de ID van een post kan zoeken? Bijvoorbeeld met een code-snippet?
Vast bedankt,
Frank
- Post ID vindbaar maken
-
23-06-2024, 08:36 #1
- Berichten
- 11
- Lid sinds
- 7 maanden
Post ID vindbaar maken
-
In de schijnwerper
Linkbuilding(internationaal)uitbesteden(ook whitelabel)?Wij regelen alle plaatsingen.Freelance / WerkGezocht: hostingbedrij(f)(ven) / Hostingklanten ter overnameHostingHulp bij SEO/GoogleAds (NL/BE/DE). Economy.nl Google Premier Partner.Freelance / WerkErvaren tekstschrijver voor uiteenlopende schrijfklussenFreelance / Werk -
23-06-2024, 09:44 #2Particulier
- Berichten
- 133
- Lid sinds
- 8 Jaar
Re: Post ID vindbaar maken
.....
Laatst aangepast door Biancaw : 27-06-2024 om 08:18
-
23-06-2024, 10:39 #3
- Berichten
- 11
- Lid sinds
- 7 maanden
Re: Post ID vindbaar maken
Hallo Bianca,
dank voor je reactie. Misschien zijn veel mensen het wel met je eens, maar een 'brief onder nummer' moet wel wat inhoud hebben. Anders kan ik het beter telegram onder nummer noemen. Ook zijn de hele korte berichten meer iets voor sociale media naar mijn smaak.
Vriendelijke groet,
Frank
-
24-06-2024, 05:52 #4
- Berichten
- 61
- Lid sinds
- 8 Jaar
Re: Post ID vindbaar maken
Hier een snippet die normaal zou moeten werken, kan je toevoegen bijvoorbeeld in de functions.php file van je thema:
PHP Code:add_filter('posts_where', 'posts_where');
function posts_where($where) {
if(is_search()) {
$s = $_GET['s'];
if(!empty($s)) {
if(is_numeric($s)) {
global $wpdb;
$where = str_replace('(' . $wpdb->posts . '.post_title LIKE', '(' . $wpdb->posts . '.ID = ' . $s . ') OR (' . $wpdb->posts . '.post_title LIKE', $where);
} elseif(preg_match("/^(\d+)(,\s*\d+)*\$/", $s)) {
global $wpdb;
$where = str_replace('(' . $wpdb->posts . '.post_title LIKE', '(' . $wpdb->posts . '.ID in (' . $s . ')) OR (' . $wpdb->posts . '.post_title LIKE', $where);
}
}
}
return $where;
}
Laatst aangepast door Niels Vermeire : 24-06-2024 om 06:21
-
24-06-2024, 11:11 #5
- Berichten
- 11
- Lid sinds
- 7 maanden
Re: Post ID vindbaar maken
Goedemorgen Niels,
hartelijk dank voor je reactie en de code, helaas werkt de code niet. Ik heb hem als code-snippet toegevoegd en geprobeerd met 'overal uitvoeren' en 'alleen op frontend' maar via de zoekbalk op het frontend krijg ik nog steeds de melding dat er niets is gevonden.
Ook als ik hem direct in functions.php zet krijg ik geen zoekresultaten.
Vriendelijke groet,
Frank
-
24-06-2024, 12:14 #6Particulier
- Berichten
- 133
- Lid sinds
- 8 Jaar
Re: Post ID vindbaar maken
.....
Laatst aangepast door Biancaw : 27-06-2024 om 08:23
-
24-06-2024, 14:54 #7
- Berichten
- 11
- Lid sinds
- 7 maanden
Re: Post ID vindbaar maken
Hallo Bianca,
je reactie hierboven telt al meer dan 250 leestekens, dus zoveel is het nou ook weer niet. Ik begrijp dat jij een minimum van 250 leestekens ziet als een opgelegde verplichting. Prima, en jouw goed recht. Maar ik kom ook niet uit een ei en heb van tevoren wel degelijk uitgezocht wat mijn doelgroep (de mensen die een advertentie plaatsen) het liefst wil. En juist de hele korte reacties werden gezien als ongewenst. Vooral bij dames viel op dat als het er op aankomt ze het liefst een zo lang mogelijke brief ontvangen. Mannen die schrijven hebben toch al de neiging om zich te beperken tot 'hallo, ik ben Jan en ik vind je leuk'. En aangezien de adverteerders betalen is het ook een beetje een kwestie van wie betaalt bepaalt. Vandaar de minimale 250 leestekens.
-
24-06-2024, 16:33 #8
- Berichten
- 158
- Lid sinds
- 14 Jaar
Re: Post ID vindbaar maken
Kun je het briefnummer niet gewoon als 'tag' aan het bericht hangen?
-
24-06-2024, 17:59 #9
- Berichten
- 61
- Lid sinds
- 8 Jaar
Re: Post ID vindbaar maken
Hoi Frank
Als je dat graag wil moet ik dat normaal wel voor je kunnen fixen.
Zou een half uurtje werk zijn voor me en op 25 euro komen incl. BTW.
Stuur me maar een DM als je dat wat lijkt.
Groetjes
Niels
-
25-06-2024, 06:52 #10
- Berichten
- 466
- Lid sinds
- 13 Jaar
Re: Post ID vindbaar maken
De code van Niels werkt alleen voor de WP Search, hier wordt gebruik gemaakt van de GeoDirectory plugin. Deze heeft een eigen search functie.
Om een gratis oplossing te bieden hier een simpele snippet.
Code:<?php // shortcode Zoeken onder nummer - By Cornelis de Leeuw van Weenen function bon_zoek_nummer($atts){ ob_start(); ?> <div class="zoek-onder-nummer"> <div data-show-adv="default" class="zon-search-container bsui"> <div class="zon-search-form-wrapper mb-3"> <form class="w-100 search-number" data-show="" name="zoek-onder-nummer" action="https://briefondernummer.nl/" method="get"> <div class="zon-search row gy-2 px-3 align-items-center"> <div class="bon-search-field-search col-auto flex-fill px-0" style="flex-grow:9999 !important;" data-rule-key="s" data-rule-type="text"> <div class=" "> <label class="sr-only form-label"> zoek naar...</label> <div class="input-group-inside position-relative w-100"> <div class="input-group-text bg-transparent border-0"> <span class="zon-search-input-label hover-swap text-muted" onclick="jQuery('.search_text').val('').trigger('change').trigger('keyup');"> <i class="fas fa-search hover-content-original"></i> <i class="fas fa-times zon-search-input-label-clear hover-content c-pointer" title="Clear field"></i> </span> </div> <input type="text" name="p" placeholder=" ga naar..." class="form-control search_text bon_search_text w-100 " onkeydown="if(event.keyCode == 13) zon_click_search(this);" onclick="this.select();" autocomplete="off" size="16" aria-label=" ga naar..."> </div> </div> </div> <div class="bon-search-field-search col-auto flex-grow-1 px-0"> <div class=""> <button type="submit" class="zon_submit_search btn w-100 btn-primary" data-title="fas fa-search" aria-label="Zoeken"> <i class="fas fas fa-search" aria-hidden="true"></i> </button> </div> </div> </div> </form> </div> </div> </div> <?php $contents=ob_get_contents(); ob_end_clean(); return $contents; } add_shortcode('bon-zoeken', 'bon_zoek_nummer'); ?>
Ik heb de opmaak een beetje overgenomen maar heeft waarschijnlijk nog wel wat aandacht nodig.
Je zou van het invulveld ook een nummerveld kunnen maken. Misschien netter.
Uitleg:
"Brief onder nummer" zegt het al, dus je moet ook direct naar een advertentie kunnen gaan. Punt is dat zoeken weinig zin heeft want er is er maar één en je wilt dat men direct naar de advertentie gaat.
De shortcode moet na het andere formulier geplaatst worden want de jQuery zoekt naar closest form en hierdoor zou hij anders het verkeerde formulier nemen. Hierdoor zullen beide dan niet werken.
Nadeel is dat als men een verkeerd nummer gebruikt dat niet bestaat dat men dan op de 404 pagina terecht komt. Deze zou je kunnen aanpassen.
LET OP: Dit is een GRATIS snippet en ik kan het niet testen maar dit zou moeten werken. Er zijn andere mogelijkheden maar de plugin kan problemen veroorzaken en het is meer werk om andere code te schrijven en dat is niet gratis uiteraard.
Ik begrijp dat het een beetje knullig is maar het is een oplossing en gratis.
Test het eens en laat maar weten.
Succes...
-
25-06-2024, 10:26 #11
- Berichten
- 11
- Lid sinds
- 7 maanden
Re: Post ID vindbaar maken
Hallo Edward,
dat zou wel het mooiste zijn, maar ik krijg dat niet voor elkaar. Ik heb handmatig aan advertentie 928 de tag 928 toegevoegd en als ik nu 928 in de reguliere zoekbalk intik kom ik bij de juiste advertentie. Overigens ook de advertentie van een man die ik, als hij zijn ware mocht vinden, zeker eens zal bellen om te vragen hoe hij het voor elkaar heeft gekregen.
Maar goed, los daarvan: tags zijn de mooiste oplossing denk ik, maar dan moet het systeem zelf van elke advertentie de ID ls tag toevoegen. Handmatig is straks niet meer te doen, dus ik zou dan een snippet nodig hebben die zorgt dat de ID er als tag komt te staan.
Er was ooit een plugin van Wordpress (find by ID) maar die wordt al jaren niet meer geupdated, en op allerlei sites zoals Github is ook niet te vnden wat ik zoek.
-
25-06-2024, 10:28 #12
- Berichten
- 11
- Lid sinds
- 7 maanden
Re: Post ID vindbaar maken
Ha Cornelis,
Thanks, maar deze oplossing zoekt desgewenst ook factuurnummers op, pagina's en klantgegevens. Je mail heb ik gezien, daar reageer ik straks even op.
-
25-06-2024, 11:32 #13Webblish Content & Publishing
- Berichten
- 5.649
- Lid sinds
- 17 Jaar
Re: Post ID vindbaar maken
Maar goed, los daarvan: tags zijn de mooiste oplossing denk ik, maar dan moet het systeem zelf van elke advertentie de ID ls tag toevoegen. Handmatig is straks niet meer te doen, dus ik zou dan een snippet nodig hebben die zorgt dat de ID er als tag komt te staan.
Even aan ChatGPT gevraagd:
Geef me een snippet waarmee de ID van een post bij het aanmaken van de post automatisch als tag in de database wordt gezet.
Om ervoor te zorgen dat de ID van een post automatisch als tag in de database wordt gezet wanneer de post wordt aangemaakt, kun je de wp_insert_post hook gebruiken. Dit is een voorbeeld van hoe je dat kunt doen:
Code:function add_post_id_as_tag($post_id, $post, $update) { // Controleer of dit een nieuw bericht is (geen update) if (!$update) { // Haal de post ID op $post_id_tag = $post_id; // Haal bestaande tags op $tags = wp_get_post_tags($post_id, array('fields' => 'names')); // Voeg de post ID tag toe aan de bestaande tags $tags[] = $post_id_tag; // Zet de tags voor de post wp_set_post_tags($post_id, $tags, true); } } add_action('wp_insert_post', 'add_post_id_as_tag', 10, 3);
Je kunt deze code toevoegen aan je thema's functions.php bestand, eventueel via een snippets plugin. Nu gebruik jij geloof ik een plugin die niet met de normale posts werkt, maar ook daarmee zal ChatGPT je wel mee uit de brand kunnen helpen.
-
25-06-2024, 17:20 #14
- Berichten
- 466
- Lid sinds
- 13 Jaar
Re: Post ID vindbaar maken
In dat geval zou een klein beetje Ajax wonderen kunnen doen. Persoonlijk vind ik een apart zoekformulier een perfecte oplossing. Als je het liever als tag gebruikt, geen probleem natuurlijk maar dan wordt het een zoekopdracht waar je maar 1 advertentie vindt en dan alsnog moet klikken op de advertentie.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic